Um sistema operacional (SO) uma coleo de programas que
inicializam o hardware do computador. Fornece rotinas bsicas para
controle de dispositi!os. Fornece ger"ncia# escalonamento e interao de tare$as. %antm a integridade de sistema. Oi pessoal# !amos l& Sistema operacional(SO)& O que isso& Ser que apenas um grande software de alto porte que 'pera simplesmente para digitar um te(to qualquer ou )ogar paci"ncia spider& rs* +rrado* ,essa matria !amos saber a !erdade sobre o que um sistema operacional. - muitos tipos de Sistemas Operacionais# cu)a comple(idade !aria e depende de que tipo de $un.es pro!ido# e para que computador este)a sendo usado. /lguns sistemas so respons!eis pela ger"ncia de muitos usurios# outros controlam dispositi!os de hardware como bombas de petr'leo. O sistema operacional $unciona com a iniciao de processos que este ir precisar para $uncionar corretamente. +sses processos podero ser arqui!os que necessitam de ser $requentemente atualizados# ou arqui!os que processam dados 0teis para o sistema. 1oderemos ter acesso a !rios processos do sistema operacional a partir do gerenciador de tare$as# onde se encontram todos os processos que esto em $uncionamento desde a inicializao do sistema operacional at a sua utilizao atual. O sistema operacional uma coleo de programas que: 2nicializa o hardware do computador Fornece rotinas bsicas para controle de dispositi!os Fornece ger"ncia# escalonamento e interao de tare$as %antm a integridade de sistema Um Sistema Operacional muito simples para um sistema de controle de segurana poderia ser armazenado numa mem'ria 3O% (S' de 4eitura 5 um chip que mantm instru.es para um computador)# e assumir o controle ao ser ligado o computador. Sua primeira tare$a seria rea)ustar (e pro!a!elmente testar) os sensores de hardware e alarmes# e ento ati!ar uma rotina monitorando ininterruptamente todos os sensores introduzidos. Se o estado de qualquer sensor de entrada $or mudado# ati!ada uma rotina de gerao de alarme. +m um grande computador multiusurio# com muitos terminais# o Sistema Operacional muito mais comple(o. 6em que administrar e e(ecutar todos os pedidos de usurios e assegurar que eles no inter$eriram entre si. 6em que compartilhar todos os dispositi!os que so seriais por natureza (dispositi!os que s' podem ser usados por um usurio de cada !ez# como impressoras e discos) entre todos os usurios que pedem esse tipo de ser!io. O SO poderia ser armazenado em disco# e partes dele serem carregadas na mem'ria do computador (3/%) quando necessrio. Utilitrios so $ornecidos para7 /dministrao de /rqui!os e 8ocumentos criados por usurios 8esen!ol!imento de 1rogramas 9omunicao entre usurios e com outros computadores :erenciamento de pedidos de usurios para programas# espao de armazenamento e prioridade /dicionalmente# o SO precisaria apresentar a cada usurio uma inter$ace que aceita# interpreta# e ento e(ecuta comandos ou programas do usurio. +ssa inter$ace comumente chamada de S-+44 (;cpsula# manteremos o nome original em ingl"s) ou interpretador de linha de comando (942). +m alguns sistemas ela poderia ser uma simples linha de te(to que usam pala!ras cha!es (como %S8OS ou U,2<)= em outros sistemas poderiam ser gr$icas# usando )anelas e um dispositi!o apontador como um mouse (como >indows?@ ou < 5 >indows). As Vrias Partes de um Sistema Operacional Um sistema operacional de um computador que usado por muitas pessoas ao mesmo tempo# um sistema comple(o. 9ontm milh.es de linhas de instru.es escritas por programadores. 1ara tornar os sistemas operacionais mais $ceis de serem escritos# eles so construAdos como uma srie de m'dulos# cada m'dulo sendo respons!el por uma $uno. Os m'dulos tApicos em um grande SO multiusurio geralmente so7 ,0cleo (Bernel em ingl"s 5 tambm conhecido como Ce(ecuti!oC) :erenciador de processo +scalonador (Scheduler# em ingl"s) :erenciador de arqui!o O Ncleo - Um Executivo em Tempo-Real O n0cleo de um sistema operacional algumas !ezes chamado de +<+9U62DO em tempo real. /lgumas das $un.es e(ecutadas por ele so7 9ha!eamento entre programas 9ontrole e programao de dispositi!o de hardware :erenciamento de mem'ria :erenciamento de processos +scalonamento de tare$as 9omunicao entre processos 1rocessamento de e(ce.es e de interrupo ,osso sistema simples de monitorao de segurana no teria todas as $un.es acima# ) que pro!a!elmente seria um sistema mono5tare$a# e(ecutando apenas um programa. 9omo tal# no precisaria processar permutas entre mais de um programa ou permitir comunicao entre programas (comunicao entre processos). / ger"ncia da mem'ria seria desnecessria# ) que o programa residiria permanentemente em 3O% ou em +13O% (uma $orma program!el especial de 3O%). Um sistema operacional pro)etado para manusear um grande n0mero de usurios precisaria de um n0cleo para e(ecutar todas as $un.es acima. 1rogramas de usurios geralmente so armazenados em disco# assim precisa ser carregado em mem'ria antes de ser e(ecutado. 2sso apresenta a necessidade de ger"ncia da mem'ria# ) que a mem'ria do computador precisaria ser pesquisada para localizar uma rea li!re para carregar um programa de usurio na mesma. Euando o usurio ti!esse encerrada a e(ecuo do programa# a mem'ria consumida por ele precisaria ser liberada e se tornaria disponA!el para outro usurio quando solicitado. :erenciamento e +scalonamento (Scheduling) de processos tambm so necessrios# de $orma que todos os programas possam ser e(ecutados razoa!elmente. ,o h como um programa de um usurio especA$ico ser e(ecutado numa rea de e(tenso# negando o $uncionamento de qualquer outro programa# e $azendo todos os outros usurios esperarem. /dicionalmente# alguns programas poderiam precisar ser e(ecutados mais $reqFentemente que outros# por e(emplo# checando comunica.es de rede ou imprimindo. /lguns programas podem precisar ser suspensos temporariamente# e serem reiniciados depois# assim introduzindo a necessidade da comunicao inter5 programas. http://www.ofcinadanet.com.br/artigo/851/o_que_e_um_sistema_operacional Programando um computador 1esquisa realizada pela Bantar >orld 1anel# aponta que no Grasil# os i1hones da /pple esto bem atrs dos aparelhos que usam o sistema operacional /nd... Um programa uma seqF"ncia de instru.es ao computador. Euando o programador de so$tware (uma pessoa que escre!e programas para serem e(ecutados em um computador) desen!ol!e um programa# este con!ertido em uma longa lista de instru.es que so e(ecutadas pelo sistema de computador. +m sistemas operacionais n's $alamos mais de um processo do que de um programa. ,os sistemas operacionais modernos# s' uma poro de um programa carregada em cada instante. O resto do programa espera numa unidade de disco at que se precise do mesmo. 2sso economiza espao de mem'ria. Os programas no computador so e(ecutados por processadores. Um processador um chip no computador que e(ecuta instru.es de programa. 1rocessadores e(ecutam milh.es de instru.es por segundo. Um Processo Um processo ou tare$a uma poro de um programa em alguma $ase de e(ecuo. Um programa pode consistir de !rias tare$as# cada uma com $uncionamento pr'prio ou como uma unidade (tal!ez se comunicando entre si periodicamente). A Tread !"leira# lina$ Uma thread uma parte separada de um processo. Um processo pode consistir de !rias threads cada uma das quais sendo e(ecutada separadamente. 1or e(emplo# uma thread poderia tratar re$resh e gr$icos na tela# outra thread trataria impresso# outra thread trataria o mouse e o teclado. 2sso d bom tempo de resposta em programas comple(os. >indows ,6 um e(emplo de umsistema operacional que suporta multi5thread. Sistemas operacionais de %ulti- processo /lguns sistemas e(ecutam s' um 0nico processo# outros sistemas e(ecutam m0ltiplos processos de cada !ez. / maioria dos computadores baseada num 0nico processador# e um processador pode e(ecutar s' uma instruo de cada !ez. /ssim# como possA!el um 0nico processador e(ecutar processos m0ltiplos& / resposta mais imediata que ele no $az desse modo. O processador do computador e(ecuta um processo por um perAodo pequeno de tempo# e ento muda para o pr'(imo processo e assim por diante. 9omo o processador e(ecuta milh.es de instru.es por segundo# isso d a impresso de muitos processos serem e(ecutados ao mesmo tempo. +m um sistema de computador que suporta mais de um processo de cada !ez# algum mecanismo de!e ser usado para intercalar de uma tare$a para outra. - dois mtodos principais usados para $azer essa troca7 +scalonamento por 9ooperao indica que uma tare$a que est sendo e(ecutada atualmente dei(ar !oluntariamente em algum momento o processador e permitir que outros processos se)am e(ecutados. +scalonamento 1reempti!o signi$ica que uma tare$a corrente ser interrompida ($orou a se render) e o processador se dedica a outro processo em estado de espera. O problema da mudana por cooperao que um processo poderia demorar e assim negar a e(ecuo de outros processos e poderia resultar em nenhum trabalho ser $eito. Um e(emplo de um sistema de cooperao o >indows H.I. O escalonamento preempti!o melhor. 8 mais respostas a todos os processos e a)uda a pre!enir (ou reduz o n0mero de ocorr"ncias de) contra o medo de mquinas tra!adas. >indows ,6 um e(emplo de tal sistema operacional. ,ota7 S' para programas de HJbits em >indows ?@ h escalonamento preempti!o. 1rogramas de IKbits ainda so escalonados cooperati!amente# o que signi$ica que ainda $cil para um programa de IKbits tra!ar um computador >indows. &ontexto de Troca Euando o processador muda de um processo a outro# o seu estado (o processador registra e associa os dados) de!e ser sal!o# pois algum tempo depois# ser reiniciado o processo e continuar como se nunca $ora interrompido. Uma !ez esse estado tenha sido sal!o# o pr'(imo processo em espera ati!ado. 2sso en!ol!e carga nos registradores do processador e na mem'ria# com todos os dados pre!iamente sal!os# e reiniciando na instruo que seria e(ecutada quando hou!e a 0ltima interrupo. O ato de mudar de um processo a outro chamado troca de conte(to. Um perAodo de tempo que um processo e(ecute antes de ser trocado chamado de time slice ou perAodo de quantum. Escalonamento !Sceduling$ / deciso de qual o pr'(imo processo de!e ser e(ecutado chamado escalonamento (scheduling)# e pode ser $eito em uma grande !ariedade de maneiras. +scalonadores por cooperao geralmente so muito simples# ) que os processos so organizados em $ila circular (3OU,8 3OG2,). Euando um processo corrente se dei(a# !ai para o $im da $ila. O processo no topo da $ila ento e(ecutado# e todos os processos se mo!imentam um lugar para cima na $ila. 2sso pro!" uma medida )usta# mas no impede que um processo monopolize o sistema (no se dei(ando). +scalonadores preempti!os usam um rel'gio em tempo real que gera interrupo a inter!alos regulares (digamos# a cada ILIMM de um segundo). 9ada !ez que uma interrupo ocorre# o processador muda para outra tare$a. Sistemas que geralmente empregam esse tipo de escalonamento atribuem prioridades a cada processo# de $orma que alguns podem ser e(ecutados mais $reqFentemente que outros. &arga do Sistema Operacional O SO pode ser carregado na mem'ria de um computador de duas maneiras. N est presente em 3O% O carregado a partir do disco quando o computador ligado. Se o SO ) est presente em 3O% (para sistemas tipo controladores industriais# bombas de petr'leo# etc)# ele ganhar controle imediato do processador ao ser ligado o computador. 1ara sistemas mais comple(os# o SO armazenado normalmente em mAdia secundria (como disco)# e carregado em 3/% quando o computador ligado. / !antagem desse tipo de sistema que o escalonamento para o SO mais $cil de $azer e programar. O PRO&ESSO de 'OOTSTRAP 8escre!e a ao da carga inicial do sistema operacional do disco para a 3/%. Uma pequena rotina armazenada em 3O%# chamada de 9/33+:/8O3 de GOO6S63/1 ou 214 (9arregador de 1rograma 2nicial)# l" uma rotina especial de carga no disquete. +m sistema baseado em disquete# essa rotina normalmente reside na trilha MM# setor MM (ou MI)# e chamado de setor de booting. O c'digo contido no setor trans$erido para a 3/%# e ento e(ecutada. 6em a responsabilidade e(clusi!a de carregar o resto do sistema operacional na mem'ria.
Tipos di(erentes de processamentos em sistemas operacionais Sistemas operacionais so di!ididos em categorias que de$inem as suas caracterAsticas. Sistemas modernos podem usar combina.es de essas categorias descritas a seguir. BATCH (em LOT! O tipo mais antigo de SO permite s' um programa ser e(ecutado de cada !ez. O programa que carregado no computador e(ecutado completamente. Os dados usados pelo programa no podem ser modi$icados enquanto o programa est sendo e(ecutado. Eualquer erro no programa ou nos dados signi$ica comear tudo no!amente. "#T$AT"%O +sses permitem a modi$icao e entrada de dados ainda durante a e(ecuo do programa. Sistemas tApicos so reser!as de !Po areo e linguagens como G/S29. T"&'(HA$"#)*&+LT"'+(+,$"O +sses SOs compartilham o computador entre mais de um usurio# e adota tcnicas de escalonamento preempti!o. &+LT"'TA$-A( %ais de um processo pode ser e(ecutado concorrentemente. O processador escalonado rapidamente entre os processos. Um usurio pode ter mais de um processo e(ecutado de cada !ez. T&.O $AL 1rincipalmente usado em controle de processos# telecomunica.es# etc. O SO monitora !rias entradas que a$etam a e(ecuo de processos# mudando os modelos de computadores do ambiente# e assim a$etando as saAdas# dentro de um perAodo de tempo garantido (normalmente Q I segundo). &+LT"'.$OC((A&#TO Um computador que tem mais de um processador central dedicados na e(ecuo de processos. Gom. +spero que !oc"s gostem. /t a pr'(ima. http://www.ofcinadanet.com.br/artigo/851/o_que_e_um_sistema_operacional /2