Vous êtes sur la page 1sur 21

Processo de Boot

(White, Ron. Como funciona o Computador. 5 ed. Ed. Quark, 1993) Quando seu computador pessoal est desligado, ele simplesmente um conjunto de partes de metal, plstico e minsculas partculas de silcio. Ao acionar o boto Ligar (On), uma pequena fasca de eletricidade - de apenas cinco volts - d incio a uma srie de acontecimentos que, de forma mgica, do vida ao que parecia simplesmente um sofisticado peso de papis. Mesmo com esse sopro de vida, o PC ainda se mostra um tanto estpido primeira vista. Ele parece ter conscincia disso, quando verifica quais partes esto instaladas e funcionando, tal como aquele paciente que volta de um estado de coma e examina seu corpo para ver se est tudo certo com as pernas e braos. Entretanto, aps este processo de auto-verificao, o recm-despertado PC ainda no consegue produzir nada de til, nem mesmo algo que poderamos considerar um laivo de inteligncia. No melhor dos casos, ele pode buscar essa inteligncia - inteligncia que vem na forma do sistema operacional, que estrutura a existncia primitiva e esttica do PC. Em seguida, vem o aprendizado na forma de aplicativos - programas que dizem ao computador como desempenhar suas tarefas de forma mais rpida e precisa, tornando-se um aluno capaz de superar o professor. Mas nem todos os computadores precisam passar por esse complicado processo cada vez que so ligados. Hoje em dia, encontramos computadores que "despertam" e j esto prontos para o uso logo que acionamos o boto de ligar. No pensamos neles como computadores, j que receberam o nome de calculadora, ignio eletrnica do carro, timer de microondas e programador do videocassete. A diferena entre eles e a caixa que voc tem sobre a mesa est na complexidade dos circuitos eltricos. Os computadores so projetados para desempenhar uma nica tarefa - e so muito eficientes nela - esto equipados para isso. Mas tambm significa que esto mais para sbios idiotas que para sbios verdadeiros.

O que torna seu PC uma mquina to miraculosa, a cada vez que ligada, uma tabula rasa capaz de executar qualquer coisa que sua criatividade - ou, geralmente, a criatividade dos programadores - conseguir imaginar. Ele pode ser uma calculadora, a tela de um artista, uma mquina de escrever cheia de truques, um contador infalvel e um servidor de vrias ferramentas. Para transform-lo, basta definir alguns dos ajustes microscpicos encravados no corao dos microchips, uma tarefa realizada atravs da digitao de um comando na mensagem (prompt) do DOS ou mesmo pressionando-se o boto do mouse sobre um minsculo cone na tela. Esse tipo de inteligncia frgil e tem vida curta. Os milhes de chaves com ajustes microscpicos esto constantemente aparecendo e desaparecendo sob as oscilaes da eletricidade. E isso pode acarretar uma instruo errada ou a leitura incorreta de um simples ajuste, que levar toda essa fantstica inteligncia ao estado de caos. Ou, ento, basta desligar a mquina para que a pulsante vida artificial desaparea sem o menor suspiro. Assim, toda vez que voc ligar seu computador, este processo complexo ser reativado.

Como funciona o Auto-Teste


Ao ligarmos o computador, nada de importante parece acontecer durante alguns segundos. Na verdade, ele est passando por um complexo conjunto de operaes para verificar se todos os componentes esto funcionando de acordo e avisar se algo no est indo bem. Esta operao a primeira etapa de um processo um tanto complicado, chamado de partida (boot-up), ou simplesmente, boot. O termo vem do conceito dce voc poder se levantar com seus prprios ps, ou botas, no caso. Num PC, este processo necessrio porque a mquina precisa ter uma forma de despertar todos os seus componentes e assim carregar o sistema operacional sem problemas. Em seguida, o sistema operacional encarrega-se de tarefas um pouco mais complicadas, que o cdigo de boot no consegue gerenciar sozinho, inclusive a de fazer o equipamento interagir com os programas.

Mas mesmo antes de o PC tentar carregar um sistema operacional, ele precisa ter certeza de que todos os seus componentes esto rodando e que a CPU e a memria esto funcionando corretamente. Este o trabalho do auto-teste inicial, ou POST. O auto-teste a primeira coisa que o PC executa quando ligado, e o primeiro a avisar quando h problemas em qualquer um dos componentes. Quando o auto-teste detecta erro no monitor, na memria, no teclado ou em algum componente bsico, ele exibe uma mensagem de erro na tela e - caso o monitor seja um dos problemas mostra onde est o erro, emitindo uma srie de sinais sonoros, ou bips. Normalmente, nem os bips nem a mensagem de tela so suficientes para informar com exatido o que h de errado. Na verdade, o que se pretende com isso indicar de forma genrica qual componente est com problema. Um bip nico combinado com o aparecimento da mensagem do DOS, significa que todos os componentes passaram pelo auto-teste. Mas qualquer outra combinao de bips longos e breves indica problema. At mesmo a ausncia de bip indica que h algo errado. Se nenhuma mensagem de erro ou bip ocorrer, no significa que todos os componentes esto funcionando bem. O POST capaz de verificar somente os erros mais comuns. Ele pode informar se um disco rgido supostamente instalado no est sendo reconhecido, mas no consegue detectar se h problema na formatao do disco. . Conclui-se ento que o POST no assim to til. Isto ocorre porque os PCs funcionam de forma to segura que raramente alguma coisa aciona o alarme do auto-teste. Os benefcios do POST so sutis mas essenciais. Sem ele, voc nunca teria certeza da habilidade do PC em desempenhar suas tarefas com preciso e confiabilidade.

Auto-Teste Inicial

Quando voc liga o PC, um sinal eltrico segue um caminho permanentemente programado at a CPU para limpar os dados deixados nos registradores da memria interna do chip. O sinal reajusta o registrador da CPU chamado de contador de programa para um determinado nmero. No caso dos ATs e dos computadores mais recentes, o nmero F000. Esse nmero no contador informa CPU o endereo da prxima instruo que ser processada. Neste caso, o endereo o incio do programa de inicializao (boot), armazenado permanentemente no endereo F000 num conjunto de chips ROM (memria somente para leitura) que contm o sistema bsico de entrada/sada (BIOS) do PC.

A CPU utiliza o endereo para encontrar e ativar o programa de inicializao (boot) no BIOS da ROM, que por sua vez, ativa uma srie de verificaes do sistema. conhecida como auto-teste ou POST (Power-On Self-Test). Em primeiro lugar, a CPU faz a verificao de si mesma e do programa POST, atravs de um cdigo de leitura em vrias posies. comparando - e estas verificaes esto idnticas aos registros permanentes.

A CPU envia sinais atravs do sistema de barramento (bus) - os circuitos em que todos os componentes se conectam - para verificar se todos eles esto funcionando.

Nos PCS mais antigos que possuem um ncleo de linguagem de programao BASIC na ROM, essa parte do cdigo conferida durante a verificao do temporizador (timer) do sistema, responsvel pela sincronia e ordem de todas as operaes funcionais do PC.

O POST testa a memria contida na placa de vdeo (display adapter) e os sinais de vdeo que controlam o monitor. Ele faz com que o cdigo de BIOS da placa passe a fazer parte do BIOS total do sistema e da configurao da memria. a partir da que voc comea a ver algo no monitor do seu PC.

O POST executa uma bateria de testes para verificar se os chips da RAM esto funcionando sem problemas. A CPU grava dados em cada chip, em seguida faz uma leitura comparando estes dados com os enviados originalmente. Um contador da memria que est sendo lida aparece na tela durante este teste.

A CPU verifica se o teclado est devidamente conectado e se no existem teclas pressionadas.

O POST envia sinais por caminhos especficos atravs do barramento (bus) s unidades de disco e espera uma resposta para determinar quais unidades esto disponveis.

Nos computadores AT e mais recentes, os resultados dos testes POST so comparados com o registro oficial existente no chip CMOS, que informa quais componentes esto instalados. O CMOS um tipo de chip de memria que no perde seus dados quando voc desliga o micro ou h corte de energia eltrica; ele alimentado

por uma bateria (battery). Quaisquer alteraes na configurao bsica do sistema devem ser gravadas nos dados de configurao do CMOS, em todos os PC que possuem essa funo. (Somente o PC e o XT originais no utilizam a funo CMOS.)

Nos sistemas que contm componentes que incluem seus prprios BIOS. como certas placas controladoras de disco (disk controller), o cdigo do BIOS reconhecido e incorporado como parte do prprio BIOS do sistema e da utilizao da memria. 0 PC agora est preparado para a prxima etapa do processo de inicializao (boot): carregar o sistema operacional do disco.

Como funciona o disco de boot


O computador pessoal no pode fazer nada de aproveitvel se no possuir um sistema operacional - o programa que permite ao PC utilizar os demais programas. Mas antes de executar o sistema operacional, o PC precisa de uma forma de carreg-lo na memria de acesso aleatrio (RAM). Esta forma conhecida como bootstrap, ou apenas boot - um pequeno cdigo que faz parte permanente do PC. O bootstrap possui este nome porque permite que o PC execute algo por si s, sem o auxlio de um sistema operacional externo. Na verdade, a operao de boot no faz muita coisa. Ela possui somente duas funes: executar o POST ou auto-teste inicial (descrito no captulo anterior) e pesquisar as unidades de disco para o sistema operacional. Ao terminar as duas funes, inicia-se o processo de leitura dos arquivos do sistema operacional e a cpia destes arquivos para a memria de acesso aleatrio. Por que os PCs usam esse tipo de mtodo? Por que no integrar o sistema operacional no PC? Alguns computadores mais especializados ou mais bsicos o fazem. Os primeiros modelos, utilizados principalmente para jogos, como os Atari 400 e 800, e o palmtop LX95 da Hewlett-Packard possuem um sistema operacional permanente. O LX95 inclui at mesmo um aplicativo, o Lotus 1-2-3, num microchip especial. Mas, na maioria das vezes, o sistema operacional carregado do disco por dois motivos. mais fcil atualizar a verso do sistema se este for carregado atravs de disco. Quando uma empresa como a Microsoft - fabricante do MS-DOS, o sistema operacional mais utilizado em PCs - deseja acrescentar novos recursos ou eliminar erros de programao (bugs), ela simplesmente lana um novo conjunto de discos com a nova verso. s vezes, somente um nico arquivo inserido para corrigir uma falha no sistema operacional. mais barato para a Microsoft distribuir o DOS em disquetes do que projetar um microchip que contenha o sistema operacional. E bem mais fcil para os usurios instalar um novo DOS em disquetes do que trocar chips.

Outra razo para se carregar o sistema operacional a partir de discos permitir que o usurio possa escolher o sistema. Embora a maioria dos PCs baseados em microprocessadores fabricados pela Intel utilizem o MS-DOS, h sistemas operacionais alternativos como o OS/2, o DR DOS e o Unix. Na configurao de alguns PCs, pode-se at definir qual sistema operacional ser utilizado toda vez que se ligar o computador.

Depois de executar o POST em todos os componentes de hardware do PC, o programa de inicializao (boot program), contido no BIOS da ROM do computador, verifica a unidade A para observar se ela possui um disco flexvel formatado. Se houver disco na unidade, o programa busca posies especficas no disco, nas quais devem estar os arquivos que compem a primeira das duas partes do sistema operacional. Normalmente, estes arquivos de sistema no so visto, porque possuem um atributo especial que os esconde do comando DIR do DOS. Na maioria dos PCs. esses arquivo os so o IO.SYS e o MSDOS.SYS. Nos computadores IBM, os nomes mudam para IBMBIO.COM e IBMDOS.COM. Se a unidade de disco flexvel estiver vazia, o programa de inicializao pesquisa os arquivos de sistema na unidade C, que abriga o disco rgido. Se o disco de boot no possuir esses arquivos o programa de inicializao exibir uma mensagem de erro.

Depois de localizar o disco com os arquivos de sistema, o programa de inicializao l os dados armazenados no primeiro setor do disco e os copia para posies especficas na RAM. Estas informaes constituem o registro de inicializao (boot record) do DOS. O registro de inicializao encontrado na mesma posio em todo disco formatado, ocupando apenas 512 bytes que correspondem ao cdigo necessrio para iniciar a execuo dos dois arquivos ocultos. Depois de o programa de inicializao do BIOS ter carregado o registro de inicializao para a memria no endereo hexadecimal 7C00, o BIOS passa o controle para o registro atravs de um desvio para aquele endereo.

O registro de inicializao assume o controle do PC e carrega o IO.SYS na RAM. O arquivo IO.SYS possui extenses para o BIOS da ROM e uma rotina chamada

SYSINIT que gerencia o resto do processo de inicializao. Aps carregar o IO.SYS o registro de inicializao torna-se desnecessrio, sendo substitudo na RAM por outro cdigo.

O SYSINIT assume o controle do processo de inicializao e carrega o MSDOS.SYS na RAM. O arquivo MSDOS.SYS trabalha em conjunto com o BIOS no gerenciamento de arquivos, execuo de programas e resposta aos sinais do hardware.

O SYSINIT busca no diretrio raiz do disco de inicializao um arquivo o chamado CONFIG.SYS. Se o CONFIG.SYS estiver presente, o SYSINIT pede para que

o MSDOS.SYS execute os comandos contidos no arquivo. O CONFIG.SYS um arquivo criado pelo usurio. Seus comandos informam ao sistema operacional como gerenciar certas operaes como, por exemplo, quantos arquivos podero ser abertos ao mesmo tempo. O CONFIG.SYS tambm pode conter instrues para carregar os drivers de dispositivos, Os drivers de dispositivos (device drivers) so arquivos os que contm cdigos para ampliar a capacidade do BIOS no controle da memria ou dos perifricos, do hardware.

O SYSINIT pede ao CONFIG.SYS para carregar o arquivo COMMAND.COM. Este arquivo do sistema operacional composto de trs partes. Uma a extenso das funes de entrada/sada. Esta parte carregada na memria com o BIOS e passa a integrar o sistema operacional.

A segunda parte do COMMAND.COM contm os comandos internos do DOS como DIR, COPY e TYPE. Ela carregada no final da memria convencional, onde pode ser sobreposta por aplicativos caso estes necessitem utilizar mais memria.

A terceira parte do COMMAND.COM utilizada somente uma vez e depois descartada. Esta parte busca no diretrio raiz um arquivo chamado AUTOEXEC.BAT. Este arquivo criado pelo usurio e possui uma srie de comandos de DOS e/ou nomes de programas que o usurio deseja que sejam executados sempre que o computador for ligado. O PC est agora totalmente inicializado e pronto para ser usado.

Como funciona o sistema operacional


O nome do sistema operacional mais conhecido para PCs baseados no microprocessador Intel - MS-DOS -significa um disco de sistema operacional da Microsoft (Microsoft disk operating system). Originalmente, os sistemas operacionais visavam somente gerenciar uma das operaes mais complexas de entrada/sada: a comunicao com vrias unidades de disco. Mas o sistema operacional rapidamente transformou-se numa ponte completa entre o PC e o programa executado nele. Sem um sistema operacional, cada programador teria que inventar, a partir de um esboo, como o programa apresentaria o texto e a parte grfica na tela, como enviaria os dados impressora, como leria e gravaria arquivos no disco e uma srie de outras funes que ligam o programa ao hardware. Entretanto, um sistema operacional faz mais do que facilitar a vida dos programadores. O sistema operacional cria uma plataforma comum a todos os programas utilizados. Sem ele, voc provavelmente no seria capaz de gravar arquivos criados em programas diferentes no mesmo disco, porque cada um teria sua prpria maneira de armazenar tais arquivos. O sistema operacional tambm fornece ferramentas para gerenciar todas as tarefas que voc deseja executar fora do aplicativo - apagar e copiar arquivos, ver a lista dos arquivos contidos no disco e executar uma srie de comandos em um arquivo de lote (batch file). O sistema operacional no trabalha isolado. Ele depende no somente da cooperao de outros programas mas da combinao sem conflitos com o BIOS. Como visto no captulo anterior, quando algumas partes do sistema operacional so carregadas do disco, elas so acrescentadas ao BIOS, unidas atravs de drivers de dispositivos, e todas elas executam rotinas de funes de hardware. O sistema operacional, na verdade, formado por todos esses trs componentes. simplista pensar no sistema operacional como sendo somente os arquivos contidos num certo disco que acompanha o PC.

Juntos, o BIOS, os drivers de dispositivos e o sistema operacional executam tantas funes que impossvel mostrar essa complexidade em algumas pginas de ilustraes. Vamos apresentar como a memria utilizada pelo sistema operacional e dar um exemplo simples e tpico de um programa utilizando o servio do BIOS para imprimir um nico caractere. Quando o MS-DOS carregado em um PC, diferentes partes do sistema operacional so associadas a diferentes localizaes na faixa de 1MB de RAM que comea no endereo 0000. A faixa um mapa logicamente contnuo. Mas as posies fsicas reais de alguns endereos podem estar em partes diferentes do PC - nos chips da ROM que contm o BIOS do PC, nos chips do BIOS da placa de vdeo, nos chips da RAM localizados na placa-me do PC ou nos chips de memria localizados na placa de expanso. O primeiro kilobyte - 1024 bytes - gerencia os vetores de interrupo (interrupt vectors) estabelecidos pelo BIOS e pelo DOS; que podem ser modificados pelos programas aplicativos (application). Os vetores indicam as posies das rotinas do programa em outros endereos de memria para os quais essas operaes devem ramificar-se quando os vrios componentes do hardware enviarem um sinal especfico, chamado de interrupo. Os prximos 256 bytes ou mais contm os dados do BIOS conhecidos como sinalizadores (flags), utilizados para indicar o estado das diferentes condies internas do sistema. Tambm nesta rea h um buffer de teclado (keyboard buffer) de 16 bytes no qual ficam armazenadas as tecias pressionadas, enquanto o PC est temporariamente ocupado com outras tarefas, para serem processadas em seguida. O restante da RAM, at 640K, chamado de memria Convencional. Esta a RAM na qual o COMMAND.COM, os drivers de dispositivos, os programas residentes em memria e os aplicativos so normalmente carregados: Os gerenciadores de memria como o QEMM-386 ou o HIMEM.SYS que acompanha o MS-DOS 5.0, permitem o remapeamento da memria para que os drivers de dispositivos (device drivers), os programas residentes em memria (memory resident programs) e, no MS-DOS 5.0, parte do COMMAND.COM, possam ser carregados na memria alta,

acima dos 640KB, reservada aos programas aplicativos (application). Se tais gerenciadores de memria no forem utilizados, o COMMAND.COM ser carregado nos endereos mais altos da memria convencional, onde possa ser substitudo por algum aplicativo que precisar de memria Acima da memria convencional encontra-se a memria alta. Parte da qual reservada pelo BIOS para vrias placas de vdeo (display adapter) e para outras placas como as de rede local (token-ring adapter) e as controladoras de disco rgido (disk controller). Os gerenciadores de memria podem remapear as reas destinadas a esses perifricos a fim de criar reas maiores de memria disponvel, nas quais podero carregar outros drivers de dispositivos e programas. Aproximadamente, os ltimos 64KB da memria aba ficam reservados pelo BIOS contido nos chips da ROM do PC. Num sistema IBM, h tambm um cdigo simplificado de programao, o ROM BASIC. Embora o MS-DOS possa enderear diretamente apenas 1024KB, alguns esquemas especiais permitem memria com endereamento acima dos 1024KB para ser utiIizada como memria expandida ou estendida. (A RAM estendida pode ser utilizada somente nos processadores Intel 80286 ou posteriores.) Sob DOS, a memria expandida ou estendida no pode ser utilizada para gerenciar cdigos de programa, mas pode gerenciar dados. NOTA: Os servios do DOS esto sempre disponveis atravs das extenses do BIOS feitos pelo sistema operacional. Alm disso, os comandos do DOS como o DIR, que fazem parte do COMMAND.COM, so outra parte dos comandos do sistema operacional. E o que pensamos ser simples comandos do DOS (como FORMAT, CHKDSK e MEM) so na verdade programas utilitrios. Eles s esto disponveis se estiverem em disco, no diretrio atual ou em algum diretrio na lista de caminhos (path) do PC.

Sistema operacional: Software e Hardware


Quando voc digita o nome de um programa aplicativo na linha de comando do DOS, o COMMAND.COM faz uma solicitao ao BIOS para buscar o caminho desse programa e copi-lo do disco para a RAM, a partir do primeiro endereo disponvel. Se for um programa extenso, ele pode sobrepor o prprio COMMAND.COM. Atravs do aplicativo, voc envia um comando para que o documento seja impresso. O programa gera uma interrupo, um cdigo especial que solicita ateno imediata do sistema operacional. O valor da interrupo informa ao sistema operacional qual servio est sendo solicitado. No caso de impresso de um caractere, a interrupo possui duas camadas porque pode ser usada para solicitar vrios servios. A interrupo em si tem o nmero 33 e o servio usado para enviar um nico caractere impressora, o nmero 5. O sinal de interrupo interceptado pelo chip controlador de interrupo (interrupt controller), um chip especial do computador, cuja nica funo cuidar desses sinais. O chip controlador de interrupo notifica o processador que ocorreu uma interrupo e que necessita de ateno imediata. Como o processador precisa manter a informao do que estava executando antes da ocorrncia da interrupo, ele coloca o endereo da operao executada pelo programa aplicativo numa pilha (stack). Pilha uma rea especial da memria que guarda os endereos, funcionando de forma semelhante a uma pilha de pratos num restaurante. Ao ser colocado um prato novo, este empurra a pilha para baixo e deve ser removido antes que qualquer prato abaixo dele possa ser recuperado. O processador busca na parte da RAM utilizada para gerenciar os vetores de interrupo o endereo de memria associado interrupo (interrupt) 33. servio

(service) 5. 0 vetor dessa interrupo indica um endereo de memria ocupado pelo BIOS da ROM do PC. NOTA: Em algumas configuraes de PC, um spooler utilizado para agilizar a impresso. Neste caso, quando o spooler for carregado, o velar para a interrupo 33, servio 5, poder ser alterado para indicar a rotina no RAM utilizado pelo spooler. A rotina instruir o processador a enviar o caractere rea do buffer na memria estendida, no qual esperar at que os rotinas do prprio spooler enviem o caractere impressora. A rotina do BIOS termina e envia um caractere - um byte de dados - atravs da porta paralela da impressora. Se, por algum motivo, a impressora no puder receber os dados - por falta de papel ou por estar ocupada com o envio de caracteres digitados anteriormente - ela emite um sinal reconhece o erro para o PC. OBIOS reconhece o erro e tenta consertar esta situao sem interferir no aplicativo. A recuperao do erro, neste caso, uma tentativa de reenviar o caractere um determinado nmero de vezes. Se a tentativa falhar, o BIOS gera sua prpria interrupo, que desencadeia uma srie de operaes similares que terminam com o processador executando uma rotina carregada na RAM pelo aplicativo. Esta rotina exibe uma mensagem de erro na tela. Se a rotina do BIOS for completada com sucesso, o BIOS gera uma interrupo de retorno (interrupt return), ou instruo IRET, que solicita ao processador que recupere o endereo superior da pilha. O processador desvia a execuo para o endereo obtido na pilha. O endereo a posio da rotina do programa que o computador estava executando quando ocorreu a interrupo 33. Ao desviar para esse endereo, o processador retoma a execuo no ponto em que foi interrompida. Se o programa aplicativo, ao ser executado, se sobrepuser ao arquivo COMMAND.COM, o sistema operacional recupera o arquivo do disco para a RAM quando o programa terminar.

Exerccios de fixao : 1) Quais so as principais funes do processo de boot? Qual a funo de cada uma? 2) O que ocorre com o Boot se algum componente bsico do computador estiver com problema? 3) Verifique na prtica. Realiza as seguintes simulaes e anote as mensagens de erros ocorridas e o que ocorreu no processo de boot. Observe que todo o procedimento deve ser iniciado com o computador desligado e a tomada de energia desconectada da rede eltrica, para evitar danos. a) desconecte o cabo do teclado e aps ligue o computador; b) fique pressionando uma tecla do teclado enquanto o computador ligado; c) desconecte o cabo de dados do drive de 3,5 e aps ligue o computador; d) desconecte o cabo de fora do drive de 3,5a aps ligue o computador; e) desconecte o cabo de dados do HD; f) desconecte o cabo de fora do HD; g) conecte o cabo de dados do HD de forma inversa. 4) O que e como realizado o BOOTSTRAP? 5)Qual a funo do SYSINIT? Onde ele localizado? 6) Como se d a carga do S.O. em um computador?

Vous aimerez peut-être aussi