You are on page 1of 7

RafaelSanches FundamentosdeSistemasoperacionais

SistemasOperacionaisModernos
Introduo
Umsistemacomputacionalmodernoconsisteemumoumaisprocessadores,memria principal,discos,impressoras,teclado,monitor,interfacesderedeseoutrodispositivosde entradaesada.Enfimumsistemacomplexo.Desenvolverprogramasquemantenhamo controledetodosessescomponenteseosutilizemcorretamentedemaneiraotimizadaum trabalhoextremamentedifcil.Porisso,oscomputadorestmumdispositivodesoftware denominadosistemaoperacional,cujotrabalhogerenciaressescomponenteseforneceraos programasdousurioumainterfacecomoohardwaremaissimples. Areadeatuaodosistemaoperacionalmostradanatabelaabaixo.Naparteinferiorestao hardware,queemmuitoscasoseleoprpriocompostodedoisnveisoumaisnveis(ou camada).Onvelmaisbaixocontedispositivosfsicos:Chipsdecircuitosintegrados,fios,fonte dealimentao,tuboseraioscatdicosedispositivossemelhantes.Suaconstruoeseu funcionamentosoatribuiesdaengenhariaeltrica. Emseguidavemonveldemicroarquitetura,noqualosdispositivossoagrupadosem unidadesfuncionais.Normalmente,essenvelcontemalgunsregistradoresinternosCPU (unidadecentraldeprocessamento)emumcaminhodosdados(datapath)contendouma unidadelgicoaritmtica.Emcadaciclodemaquina,umoudoisoperadoressotraduzidos aosregistradoresecombinadosnaunidadelgicoaritmtica(porexemplo,pelaadio).O resultadoarmazenadoemumoumaisregistradores.Emalgumasmaquinas,aoperaodo caminhodosdadoscontroladaporumsoftwaredenominadomicroprograma.Emoutras, controladodiretamenteporumcircuitodehardware. Afunodocaminhodosdadosexecutarumdeterminadoconjuntodeinstrues.Algumas dessasinstruespodemserexecutadasemumciclodecaminhodosdados;outraspodem necessitardemltiplosciclos.Essasinstruespodemusarregistradoresououtrosrecursos dohardware.Juntos,ohardwareeasinstruesvisveisaumprogramadordelinguagemde montagemformamonvelISA(instruction

Sistema Bancrio

Reservade Passagens Areas Compiladores Editores

Visualizador Web Interpretador deComandos

SistemaOperacional LinguagemdeMaquina Microarquitetura DispositivosFsicos


Umsistemacomputacionalconsisteemhardware,programasdosistemaeprogramasdeaplicao.

Podesecomandaraleituradeumdiscocarregadoseosvaloresdeendereosdo disco,endereosdamemriaprincipal,contadordebyteeadireo(leituraou escrita)emseusregistradores.Napratica,vriosoutrosparmetrossonecessriose ostatusqueretornaunidadeleitoradepoisumaoperaobastantecomplexo. Almdisso,paramuitosdispositivosdeE/S(entrada/sada)atemporizao desempenhaumpapelfundamentalnaprogramao. Paraocultaressacomplexidadeexisteosistemaoperacional.Eleconsisteemuma camadadesoftwarequeoculta(parcialmente)ohardwareeforneceaoprogramador umconjuntodeinstruesmaisconveniente.Porexemplo,readblockfromfile(leia umblocodearquivo)conceitualmentemaissimplesdoqueterdesepreocupar comosdetalhesdamovimentaodascabeasdeleitura,comoesperarqueelas abaixemetc. Notopodosistemaoperacionalsituaseorestantedosoftwaredosistema.Nele encontramosointerpretadordecomandos(tambmconhecidocomoShell),o sistemasdejanelas,oscompiladores,oseditoreseosprogramassimilares independentesdeaplicao.importantenotarqueessesprogramasnoconstituem partesdefinitivasdosistemaoperacional,mesmoquesejamnormalmentefornecidos pelofabricantedocomputador.Tratasedeumpontocrucialesutil.Osistema operacional(normalmente)aquelapartedosoftwareexecutadaemmodo supervisoroumodoncleo(nocaso,apartemaisinternadeumsistemaoperacional). Eleprotegidodosusuriospelohardware(ignoremosqueporenquantoosmicro processadoresmaisantigosoumaissimplesquenotemessaproteo).Os compiladoreseoseditoressoexecutadosemmodousurio.Seousurionogostar deumdeterminadocompiladoreleserlivreparaescreverseuprpriocompiladorse oquiser;maisnolhepermitidosescreversuaprpriarotinadetratamentode

interrupoderelgio,quepartedosistemaoperacionaleestanormalmente protegidapelohardwarecontratatentativadealteraespelousurio. Essadistino,contudo,svezesconfusaemsistemasembarcados(quepodemno terummodoncleo)ousistemasinterpretados(comosistemasoperacionaisbaseados emJAVA,queusaminterpretao,enohardware,parasepararoscomponentes). Alemdisso,emcomputadorestradicionais,osistemaoperacionaloqueseexecuta emmodoncleo. Emmuitossistemashprogramasexecutadosemmodousurio,queauxiliamo sistemaoperacionalourealizamfunesprivilegiadas.Porexemplo,existeum programaquepermiteaosusuriosmudarsuassenhas.Esseprogramanofazparte dosistemaoperacionalenoexecutadoemmodoncleo,masrealizaumafuno claramentedelicadaeprecisaserprotegidodemaneiraespecial. Emalgunssistemas,essaidialevadaaoextremo,epartedoquetradicionalmente tidocomsistemaoperacional(comosistemasdearquivos)executadoemespaodo usurio.Nessessistemasdifcildefinirumlimiteclaro.Tudooqueexecutadoem modoncleoconstituisemduvidapartedosistemaoperacional,masalguns programasexecutadosforadelesoinquestionavelmentetambmpartedele,oupelo menosestointimamenteassociadosaele. Porfim,acimadosprogramasdosistemavmosprogramasdeaplicao,queso compradosouescritosporusuriospararesolverproblemasespecficos,como processamentodetexto,planilhas,clculosdeengenhariaouarmazenamentode informaoemumbancodedados.

Oquesistemaoperacional?
Amaioriadosusuriosdecomputadorjtevealgumtipodeexperinciacomumsistema operacional,mesmoassimdifcilreconhecerdemodoprecisooqueumsistema operacional.Partedoproblemaocorreporqueossistemasoperacionaisrealizambasicamente duasfunesnorelacionadas:estenderamaquinaegerenciarrecursos.Dependendodotipo deusurioelevailidarmaiscomumafunooucomoutra.Vejamoscadaumadelas.

Osistemaoperacionalcomoumamaquinaestendido
Conformemencionadoanteriormente,aarquitetura(conjuntodeinstrues,organizaode memria,E/Seestruturadebarramento)damaioriadoscomputadoresemnveldelinguagem demaquinaprimitivaededifcilprogramao,especialmenteaentrada/sada.Paratornar

issomaisconcreto,examinemosrapidamentecomofeitaaE/Sdaunidadedediscosflexveis (Disquetes)apartirdeumchipcontroladorcompatvelcomoNECPD765.Essechipusado namaioriadoscomputadorespessoaisbaseadosemprocessadoresIntel.OPD765tem16 comandos,especificadospelacargade1a9bytesnoregistradordedispositivo.Esses comandossoparaleituraeescritadedados,movimentaodobraododiscoeformaode trilhas.Servemtambmparainicializao,sinalizao,reinicializaroerecalibraodo controladordasunidadesdedisquetes. Oscomandosmaisbsicossoreadewrite;cadaumdelesrequer13parmetrosem9bytes. Essesparmetrosespecificamitenscomoendereodeblocodedadosaserlido,onumerode setoresportrilhasomododegravaousadonomeiofsico,oespaolivreentresetoreseo quefazercomummarcadordeenderecodedadosremovidos.Seessaspalavrasnotiveram sentidoparavoc,nosepreocupe:assimmesmo,umtantomstico.Quandoaoperao completada,ochipcontroladorretorna23camposdestatusedeerrosagrupadosem7bytes. Comoseissonobastasse,oprogramadordaunidadedediscosflexveisaindadevesaberseo motorestaligadoouno.Seestiverdesligadoeledeveraserligado(comumlongoatrasode inicializao)antesqueosdadospossamserlidosouescritor.Omotornopodepermanecer pormuitotempo,senoodiscoflexvelpodersofrerdesgastes.Oprogramadorento forcadoaequilibrardoisfatores:longosatrasosdeinicializaoversusdesgastesdodisco flexvel(eaperdadosdadosnelegravados). Sementraremdetalhesdefato,claroqueumprogramadordenvelmdioprovavelmente noseenvolveracomosdetalhesdeprogramaodasunidadesdediscosflexveis(oude discosrgidos,tooumaiscomplexosemuitodiferentes).Emvezdisso,oprogramadorbusca lidarcomessasunidadesdeummodomaisabstratoesimples.Nocasodediscos,uma abstraotpicaseriaaquelacompreendidacomumdiscoquecontemumacoleode arquivoscomnomes.Cadaarquivopodeserabertoparaleituraouescritaeementoserlido ouescritoe,porfim,fechado.Detalhescomoseagravaodeveriausarumamodulaopor freqnciamodificadaouqualseriaoestadoatualdomotornoapareceriamnaabstrao apresentadaaousurio. Esseprogramaqueocultadoprogramadoraverdadesobreohardwareapresentaouma visosimpleseagradveldosnomesdosarquivosquepodemserlidoseescritososistema operacional.Assimcomoosistemaoperacionalprotegeoprogramadordohardwaredodisco eapresentaumainterfaceorientadaaarquivossimples,eletambmocultammuitascoisas desagradveisrelacionadasainterrupes,temporizadores,gerenciamentodememriae outrosaspectosdeumnvelinferior.Emcadacaso,aabstraooferecidapelosistema operacionalmaissimplesefcildeusarqueaoferecidapelohardware. Portanto,afunodosistemaoperacionalapresentaraousuriooequivalenteauma maquinaestendidaoumaquinavirtualmaisfcildeprogramardoquehardware.Comoo sistemaoperacionalconsegueissoumalongahistoria,quesercontadadetalhesaolongo destetexto.Empoucaspalavras,osistemaoperacionalforneceumavariedadedeserviosque osprogramaspodemobterusandoinstruesespeciaisconhecidascomochamadasao sistema.Aindanestetextoestudaremosalgumasdaschamadasaosistemamaiscomuns.

Sistemaoperacionalcomoumgerenciadorderecursos
Oconceitodesistemaoperacionalcomoprovedordeumainterfaceconvenienteaseus usuriosumavisotopdown(abstraodotodoparaaspartes).Emumavisoalternativa, bottomup(abstraodaspartesparaotodo),osistemaoperacionalgerenciaaspartesdeum sistemacomplexo.Computadoresmodernossoconstitudosdeprocessadores,memrias, temporizadores,discos,dispositivosapontadorestipomouse,interfacesderede,impressoras eumaamplavariedadedeoutrosdispositivos.Segundoessaviso,otrabalhodosistema operacionalfornecerumaalocaoordenadaecontroladadeprocessadores,memriase dispositivosdeE/Sentrevriosprogramasquecompetemaeles. Imagineoqueaconteceriasetrsprogramasemexecuoemalgumcomputadortentassem imprimirsuassadassimultaneamentenamesmaimpressora.Asprincipaislinhaspoderiamser doprograma1,aslinhasseguintesseriamdoprograma2,algumasoutrasdoprograma3e assimpordiante.Resultado:umaconfuso.Osistemaoperacionalpodetrazerordemaessa confusopotencial,armazenandotemporariamentenodiscotodasassadasdestinadas impressora.Finalizandoumprogramae,osistemaoperacionalentoenviasuasada,que estarianoarquivoemdisco,paraaimpressora.Aomesmotempo,ooutroprogramapoderia continuargerandomaissadas,quenoestariam,obviamente,indoparaaimpressora(ainda). Quandoumcomputador(ouumarede)temmltiplosusurios,anecessidadedegerenciare protegeramemria,dispositivosdeE/Seoutrosrecursosmuitomaior,jquedeoutra maneiraosusuriospoderiaminterferirunsnosoutros.Alemdissoosusuriosmuitasvezes precisamcompartilharnosomentehardware,mastambminformao(arquivos,bancosde dadosetc.).Emresumo,essavisodosistemaoperacionalmostraquesuatarefamantero controlesobrequemestausandoqualrecurso,garantindosuasrequisiesderecursos, controlandoascontasemedindoconflitosderequisioentrediferentesprogramase usurios. Ogerenciamentoderecursosrealizaocompartilhamento(oumultiplexao)dessesrecursos deduasmaneiras:notempoenoespao.Quandoumrecursocompartilhado(multiplexado) notempo,diferentesprogramasouusuriosaguardamsuavezdeuslo.Primeiramente,um delesobtmousodorecurso,daumoutroeassimpordiante.Porexemplo,comsomente umaCPUemltiplosprogramasprecisandoserexecutadosnela,osistemaoperacionalalocaa CPUaumprograma,edepoisqueexecutouosuficiente,ooutroprogramaobtmoseuuso, entoooutroeporfimoprimeiroprogramanovamente.Determinarcomoorecurso compartilhadonotempoquemvaidepoisdequemeporquantotempoumatarefado sistemaoperacional.Outroexemplodecompartilhamentonotemposedacomaimpressora. Quandomltiplassadassoenfileiradasparaimprimiremumanicaimpressora,adecisode sertomadasobrequalseraprximasadaaprximasadaaserimpressa. Ooutrotipodecompartilhamento(multiplexao)odeespao;e,lugardeconsumidores esperandosuavez,cadaumocupaumapartedorecurso.Porexemploamemriaprincipal normalmentedivididaentrevriosprogramasemexecuo.Asssim,cadaumpoderesidirao mesmotemponamemria(porexemplo,afimdeocupartemporariamenteaCPU).Existindo memriasuficienteparaabrigarmltiplosprogramas,maiseficientemantlosnamemria

emvezdedestinartodamemriaaumsdeles,especialmenteseoprogramaprecisarde apenasdeumapequenafraodototal.Naturalmente,issolevantaquestessobrejustia, proteoetc.,ecabeaosistemaoperacionalresolvelas.Umoutrorecursoquenoespao odisco(rgido).Emvriossistemas,umnicodiscopodeconterarquivosdemuitosusurios aomesmotempo.Alocarespaoemdiscoemanterocontrolesobrequemestausandoquais parcelasdodiscoumatpicatarefadegerenciamentoderecursosdosistemaoperacional.

Historiadossistemasoperacionais
Ossistemasoperacionaisvempassandoporumprocessogradualdeevoluo.Comoa historiadossistemasoperacionaisbastanteligadaaarquiteturadecomputadoressobrea qualelessoexecutados,veremosassucessivasgeraodecomputadoresparaentendermos asprimeirasversesdesistemasoperacionais.Essemapeamentodasgeraesdesistemas operacionaisemrelaoageraodecomputadoresumtantovago,masrevelaexistncia deumaestrutura. OprimeirocomputadordigitalfoiprojetadopelomatemticoInglsCharlesBabbage(1792 1871).EmboraBabbagetenhaempregadoamaiorpartedasuavidaedesuafortunapara construirsuamaquinaanaltica,elenuncaconseguiuvlafuncionandodemodoapropriado, poiserainteiramentemecnicaeatecnologiadesuapocanopoderiaproduzirasrodas,as engrenagenseacorreiadealtaprecisoqueeramnecessrias.obvioqueamaquina analticanopossuasistemaoperacional. OutroaspectohistricointeressantefoiqueBabbagepercebeuqueseriaprecisoumsoftware parasuamaquina.ParaissoelecontratouumajovemchamadaAdaLovelace,filhadofamoso poetainglsLordByron,comoaprimeiraprogramadoradomundo.Alinguagemde programaoAdafoiassimdenominadaemsuahomenagem.

You might also like