Este material est protegido pelas leis do direito autoral, com todos os direitos
reservados, sendo proibida, no todo ou em parte, a cpia, adaptao, traduo, reduo ou
reproduo por qualquer meio eletrnico, mecnico, de texto, de fotocpia, de gravao ou em forma legvel em mquina, sem prvio consentimento por escrito da ftec Qualificao e Cursos Tcnicos. ARQUITETURA DE COMPUTADORES KETING
2 Arquitetura de Computadores __________ Ftec Qualificao e Cursos Tcnicos SUMRIO
CAPTULO 1 - I/O E AS INTERRUPES ........................................................................................................... 3 MEMRIA E A DMA .............................................................................................................................................. 5 WAIT STATE .......................................................................................................................................................... 5 SHADOW ................................................................................................................................................................ 7 CAPTULO 2 - PORTAS LGICAS ........................................................................................................................ 8 PRINCIPAIS PORTAS LGICAS: ......................................................................................................................... 8 PEQUENO EXEMPLO DE UM PROBLEMA: ....................................................................................................... 9 RESOLUO: ......................................................................................................................................................... 9 CAPTULO 3 - SOFTWARE MMLOGIC ............................................................................................................. 11 CONECTORES ...................................................................................................................................................... 12 PINAGEM DE CONECTORES ............................................................................................................................. 14 CAPTULO 4 - BARRAMENTOS DE ENDEREOS, DADOS E CONTROLEOS....................................... 17 PROCESSADORES RISC X PROCESSADORES CISC ...................................................................................... 17 PCS X MACS ......................................................................................................................................................... 19 FRONT END E BACK END .................................................................................................................................. 19 CAPTULO 5 - RAID ............................................................................................................................................... 21 SOFTWARE GHOST ............................................................................................................................................ 27 PARTITION MAGIC ............................................................................................................................................. 28 SOFTWARES DE DIAGNSTICO ...................................................................................................................... 28 CAPTULO 6 - LINUX INTRODUO ................................................................................................................ 33 HISTRICO DO LINUX ....................................................................................................................................... 34 GERNCIA DE PROCESSOS ............................................................................................................................... 35 INICIALIZAO ("BOOT" DO SISTEMA)........................................................................................................ 35 GERNCIA DE PROCESSO PELO KERNEL ...................................................................................................... 37 CAPTULO 7 - PROCESSOS .................................................................................................................................. 38 CRIANDO E DESTRUINDO PROCESSOS ......................................................................................................... 38 EXECUTANDO PROCESSOS .............................................................................................................................. 38 INSTALAO DO LINUX ................................................................................................................................... 39 INSTALANDO OU ATUALIZANDO .................................................................................................................. 40 SUPORTE A SCSI ................................................................................................................................................. 42 CAPTULO 8 - USANDO O DISK DRUID ............................................................................................................ 43 SEO "PARTIES ATUAIS" .......................................................................................................................... 43 SEO "RESUMO DO DISCO RGIDO" ............................................................................................................ 44 BOTES DO DISK DRUID .................................................................................................................................. 44 ADICIONADO UMA PARTIO ........................................................................................................................ 45 PROBLEMAS DURANTE A ADIO DE PARTIES .................................................................................... 46 REMOVENDO UMA PARTIO ........................................................................................................................ 47 ALTERANDO A PARTIO ............................................................................................................................... 47 CAPTULO 9 - ADICIONADO UM PONTO DE MONTAGEM NFS................................................................ 48 SELECIONANDO OS COMPONENTES DO SISTEMA ..................................................................................... 49
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 3 CAPTULO 1 I/O E AS INTERRUPES Devido ao trfego intenso de instrues que entram e saem do microprocessador, (I/O) ocorre uma organizao do acesso atravs de interrupes (IRQ). A interrupo um pedido que fazemos ao microprocessador para que ele pare de executar as tarefas que estiver executando naquele determinado momento para atender a quem pediu tal interrupo. Este tipo de procedimento extremamente importante para dispositivos de entrada, como teclados, por exemplo. Ora, para que o microprocessador saiba que voc est apertando uma tecla, ele faz uma leitura do teclado. Mas digamos que voc no esteja apertando nenhuma tecla, ele continua a fazer a leitura do teclado retornando um cdigo nenhuma tecla pressionada?. Se fosse assim, o seu computador passaria mais tempo lendo o teclado do que processando o programa solicitado. Por isso, a interrupo de muita importncia. Ficando assim, o microprocessador executando o programa solicitado at que alguma interrupo venha a parar o processo. Cada dispositivo recebe um nmero que indica sua prioridade de acesso CPU, ou seja, um nmero de IRQ (Interruption Request) que permite a CPU, mesmo tendo solicitaes ao mesmo tempo, saber qual atender antes. Com isso, se o teclado tiver uma IRQ 1 e tentar acessar CPU ao mesmo tempo que a porta paralela LPT1 em que est ligada a impressora a qual tem uma IRQ 7, ele ser atendido por primeiro. Existe ainda um tipo de interrupo no programvel e que possui prioridade sobre as demais. Essa interrupo chamada de NMI (Non Maskarable Interrupt), geralmente acionada em situaes de emergncia, como erros de paridade. Voc pode entrar no painel de controle , clicar em sistema , gerenciador de dispositivos e se clicar sobre o cone computador poder ver as interrupes que esto sendo usadas e livres . Veja a figura abaixo: TELA DO WIN 98
4 Arquitetura de Computadores __________ Ftec Qualificao e Cursos Tcnicos
Tela do Windows XP
Alguns exemplos de sinais digitais so:
INT: uma entrada que serve para que dispositivos externos possam interromper o microprocessador para que seja realizada uma tarefa que no pode esperar. Como existe apenas uma entrada INT, o microprocessador opera em conjunto com um chip chamado Controlador de Interrupes. Esse chip encarregado de receber requisies de interrupo de vrios dispositivos e envi-las ao microprocessador, de forma ordenada, atravs do sinal INT. NMI: um sinal de interrupo especial para ser usado em emergncias. Significa Interrupo no mascarvel, ou seja, essa interrupo deve ser atendida imediatamente. Ao contrrio do sinal INT, que pode ser ignorado pelo microprocessador durante pequenos intervalos de tempo, o sinal NMI uma interrupo no mascarvel. Nos PCs, o NMI usado para informar erros de paridade na memria. INTA: Significa reconhecimento de interrupo (Interrupt Acknowledge). utilizada para que o microprocessador indique que aceitou uma interrupo, e que est aguardando que o dispositivo que gerou a interrupo identifique-se, para que seja realizado o atendimento adequado.
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 5 MEMRIA E A DMA A memria RAM do computador sua rea de trabalho. Nela o computador armazena as informaes que vai recebendo dos diversos dispositivos, carrega os programas que deve usar e tambm guarda as informaes que gera durante o funcionamento. Todos os dispositivos que o computador usa e mesmo a CPU esto constantemente acessando a memria. Se qualquer coisa que fosse transferida de um dispositivo para a memria e vice-versa tivesse de passar pela CPU, muito tempo seria perdido. Assim, existe no microprocessador um canal que permite aos dispositivos que precisem acessar a memria faam sem precisar pedir a CPU: o canal DMA (Direct Memory Access). A partir do 80386, o microprocessador ficou to veloz que passou em definitivo a ser o elemento mais veloz do conjunto chamado microcomputador. Antes havia uma harmonia, em que processador, memria e todos os circuitos de apoio trabalhavam ordenadamente a uma mesma velocidade. No havendo harmonia, h perda de informaes, por isso surgiu duas provveis solues a este processo, diminuir a velocidade do microprocessador de modo a adequ-lo aos circuitos perifricos e/ou memria ou aumentar a velocidade de operao dos circuitos de apoio a memria, tais como: WAIT STATE Neste caso, adequaramos o microprocessador memria atravs de estados de espera ou Wait States. Quando o microprocessador for fazer uma escrita em memria, ele permanecer executando uma funo vazia at que a memria esteja pronta para receber outra informao. Essa tcnica parece interessante, mas faz com que o microprocessador seja subutilizado, perdendo tempo fazendo absolutamente nada. Teremos assim um desperdcio mensurvel, conseqentemente fazendo baixar a performance do microcomputador.
Cache de Memria 6 Arquitetura de Computadores __________ Ftec Qualificao e Cursos Tcnicos
Poderamos conseguir a compatibilidade do microprocessador com os circuitos de apoio e a memria, aumentando-se a velocidade de operao dos mesmos. Com os circuitos de apoio; isso era relativamente simples apesar de tornar o projeto um pouco mais caro no incio, pois implicaria o projeto e construo de circuitos mais velozes. Porm, isso no acontecia com a memria. A memria, por mais rpida que fosse, continuava mais lenta do que o microprocessador. E isso se deve a um nico fato: o tipo de memria utilizado para formar a RAM do microcomputador conhecido como memria dinmica (DRAM). Internamente essa memria construda atravs de uma matriz formada por clulas capacitivas. Para cada endereo, temos um capacitor (no caso de uma memria de 1 bit). Esse bit pode assumir somente dois valores: 0 e 1, assim como o capacitor s poder estar respectivamente descarregado ou carregado. Essas clulas capacitivas so pequenas e fceis de colocar em circuitos integrados. Como conseqncia, temos circuitos integrados pequenos, baratos e com uma grande capacidade de armazenamento. Porm, capacitores so elementos fsicos que perdem sua carga eltrica com o tempo. Portanto, de vez em quando, um circuito tem que verificar o estado das clulas capacitivas. Se a clula capacitiva est descarregada, permanecer descarregada. Se estiver carregada (ou melhor dizendo, descarregando), o circuito comanda uma recarga dessa clula. Esse processo conhecido como refresh e faz com que, infelizmente, este tipo de memria apresente um tempo de acesso alto (ou seja, so lentas) para microprocessadores de altssima performance. Elas precisam ser acessadas atravs de recursos de wait state por esses microprocessadores. Poderamos, porm, utilizar outro tipo de memria, a memria esttica (SRAM). Em vez de clulas capacitivas, esse tipo de memria possui pequenos circuitos lgicos conhecidos como flip-flops. Porm, como no lugar de uma minscula clula capacitiva, teremos um circuito inteiro, e de se esperar que o resultado final seja algo enorme e de difcil integrao. Portanto, apesar de no necessitar de refresh e possuir baixssimo tempo de acesso (ou seja, rpida), a memria esttica por outro lado grande, tem baixa capacidade de armazenamento por circuito integrado e muito mais cara. Surgiu assim um meio-termo. Um microprocessador que utilizasse memria dinmica para formar a RAM, porm, utilizando uma pequena quantidade de memria esttica para agilizar o processo. Com isto surge uma tcnica conhecida como cache de memria. Por exemplo: quando o microprocessador pega um dado da memria RAM, um circuito de apoio chamado controlador de cache percebe tal fato e faz com que uma pequena quantidade de dados adjacentes seja carregada tambm para dentro da memria esttica ou cache de memria. Como a maioria dos programas so executados de forma seqencial, provavelmente a segunda instruo que for executada ter uma cpia no cache de memria. Com isso, o controlador de cache entrega ao microprocessador o dado que se encontra dentro do cache de memria e que no necessita de qualquer tipo de recurso de wait state para o acesso, em vez de acessar o mesmo dado em RAM, em que iramos precisar utilizar recursos de wait state, baixando a performance do microcomputador. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 7 SHADOW Estvamos com problemas em relao RAM, que dinmica e possui tempos de acesso tpicos de 60 a 80 ns (nanossegundos), sendo mais lenta do que o microprocessador. Para contornarmos esse problema, passamos a utilizar uma pequena quantidade de memria esttica que possui tempos de acesso tpicos de 15 a 25 ns, to rpida quanto o microprocessador intermediando a troca de informaes entre a memria e o microprocessador. Porm, o que acontece quando o processador acessa uma ROM? Se voc ainda no pensou nisso, saiba que o tempo de acesso tpico de uma ROM est na ordem de 150 a 250 ns. E ento? Quando o microprocessador acessar uma memria ROM, ele necessitar de mais wait states do que a prpria RAM. E se j tnhamos queda de performance, que justificava a criao de algum mtodo de aumento de performance, o que diramos de acesso ROM? Neste caso, h um recurso muito interessante e que dever ser utilizado, chamado shadow. Atravs desse recurso, o contedo da ROM copiado em RAM, tal rea de RAM protegida (de modo que nenhum programa por ventura utilize essa rea, apagando os dados ali existentes) e o microprocessador passe a acessar o firmware em RAM em vez de ROM. E com isso, diminumos a quantidade de wait states utilizada ou mesmo eliminamos, pois uma vez em RAM podemos utilizar cache de memria no acesso aos dados. Portanto, podemos fazer shadow de todas as ROMs de nosso microcomputador, em especial a BIOS, que acessada constantemente e com isso aumentamos a performance geral do mesmo. O shadow habilitado atravs do programa de configurao (setup) e devemos ter em mente quantas ROMs temos no nosso microcomputador e qual endereo cada uma delas ocupa. Caso voc esteja inseguro, isso pode ser determinado com algum programa que faa um mapeamento de memria, em especial o Checklt (TouchStone Software Corporation).
MEMRIA TEMPO DE ACESSO NMERO DE BITS SRAM 15ns 32 DRAM 70ns 32 ROM 200ns 8
Os principais beneficiados com o Shadow so: Os discos rgidos, dependendo dos modelos, podem ter um aumento de at 100% na taxa de transferncia. As placas de vdeo VGA e SVGA passam a ficar com o processamento da BIOS mais veloz, em alguns casos chegam a ficar at 10 vezes mais rpidas. 8 Arquitetura de Computadores __________ Ftec Qualificao e Cursos Tcnicos CAPTULO 2 PORTAS LGICAS Aqui estudaremos um pouco das principais portas lgicas que fazem de nosso computador um equipamento de lgica digital, voc ver como importante o estudo das mesmas na realizao de um trabalho tcnico que contenha um perfeito entendimento do funcionamento interno da mquina. PRINCIPAIS PORTAS LGICAS PORTA AND (E)
ENTRADAS PORTA AND A B X 0 0 0 0 1 0 1 0 0 1 1 1
X=A.B OU X=AB
PORTA NOT ENTRADAS PORTA NOT A X 0 1 1 0
X=A
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 9 PORTA OR
ENTRADAS PORTA OR A B X 0 0 0 0 1 1 1 0 1 1 1 1
X=A+B
PEQUENO EXEMPLO DE UM PROBLEMA Voc deve criar um circuito que possua 2 chaves e que estas chaves devem ligar uma luz se estiverem em 1 e 0 ou 0 e 1. RESOLUO Primeiro levamos em conta o nmero de chaves e elevamos 2 nessa potncia, neste caso 2 elevado na 2 (n de chaves) = 4 combinaes. Em segundo lugar fazemos uma tabela de possibilidades com estas combinaes:
Aps isto aplicamos a regra que desejarmos: Se escolhermos SOMA DE PRODUTOS levamos em conta os resultados 1 e pegamos as entradas com 1 e as deixamos normais , as com zero invertemos , aps multiplicando-as e somando as linhas diferentes . Neste caso teriamos: (A.B)+(A.B)= LIGAR (O sublinhado representa not) 10 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Caso escolhermos PRODUTOS DE SOMA levamos em conta os resultados 0 e pegamos as entradas com 0 e as deixamos normais , as com 1 invertemos , aps devemos som-las e multiplicar as linhas diferentes . Neste caso teriamos: (A+B).(A+B)=NO LIGAR
GRAFICAMENTE NO MMLOGIC ISTO FICARIA PRODUTOS DE SOMA
SOMA DE PRODUTOS:
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 11 CAPTULO 3 SOFTWARE MMLOGIC O MMLOGIC um software que nos permite criar pequenos projetos e descobrir se eles funcionam corretamente. Ele simula com perfeio muitos dados e com incrvel preciso. Infelizmente detectamos em projetos mais complexos e que envolvam loop (laos de retorno de dados) uma pequena falha na porta AND que provavelmente no comprometer nenhum de seus projetos. Podemos observar a seguir uma tela do software MMLOGIC com um projeto de alarme com memria:
12 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Aqui observamos o projeto mais detalhadamente: Com este software voc pode at simular o funcionamento de um circuito de memria (exemplo existente no prprio programa):
CONECTORES Os principais tipos de conectores usados nos Sistemas de Computao so: Conectores DB
Conectores Centronics
Conectores Coaxiais/Twinaxiais Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 13
Conectores V
Conectores DIN
Conectores Vdeo
Conectores SCSI
Conectores RJ
Conectores HD
14 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Conectores Header
Conectores Variados
PINAGEM DE CONECTORES Conector Teclado/Mouse
Conector Interface Paralela
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 15 Conector Interface Serial DB-9
Conector Vdeo VGA
Conector AAUI
16 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Conector AUI
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 17 CAPTULO 4 BARRAMENTOS DE ENDEREOS, DADOS E CONTROLEOS, DADOS E CONTROLE Um sistema de microcomputador utiliza os barramentos de endereos, dados e controle para efetuar a comunicao entre o microprocessador e os dispositivos associados.
Diagrama de blocos de um sistema microprocessado
Quando um sistema microprocessado deseja se comunicar com outro sistema microprocessado se faz necessrio a existncia de um formato padro para os barramentos. PROCESSADORES RISC X PROCESSADORES CISC Sempre houve uma grande polmica em torno de qual dessas plataformas melhor. Um processador CISC (Complex Instruction Set Computer, ou computador com um conjunto complexo de instrues), capaz de executar vrias centenas de instrues complexas diferentes, sendo extremamente verstil. Exemplos de processadores CISC so o 386 e o 486. No comeo da dcada de 80, a tendncia era construir chips com conjuntos de instrues cada vez mais complexos. Alguns fabricantes porm, resolveram seguir o caminho oposto, criando o padro RISC (Reduced Instruction Set Computer, ou computador com um conjunto reduzido de instrues). Ao contrrio dos complexos CISC, os processadores RISC so capazes de executar apenas algumas poucas instrues simples. Justamente por isso, os chips baseados nesta arquitetura so mais simples e muito mais baratos. Outra vantagem dos processadores RISC, que, por terem um menor nmero de circuitos internos, podem trabalhar a frequncias mais altas. Um exemplo so os processadores Alpha, que em 97 j operavam a 600 MHz.
MICROPRO- CESSADOR BARRAMENTO DE ENDEREOS BARRAMENTO DE DADOS BARRAMENTO DE CONTROLE
MEMRIA
DISPOSITIV OS DE ENTRADA
DISP OSITI VOS DE SAD A 18 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Pode parecer estranho que um chip que capaz de executar algumas poucas instrues, possa ser considerado por muitos, mais rpido do que outro que executa centenas delas, seria como comparar um professor de matemtica com algum que sabe apenas as quatro operaes. Mas, um processador RISC capaz de executar tais instrues muito mais rapidamente. A idia principal, que apesar de um processador CISC ser capaz de executar centenas de instrues diferentes, apenas algumas so usadas frequentemente. Poderamos ento criar um processador otimizado para executar apenas estas instrues simples que so mais usadas. Como de qualquer forma, pouca gente programa diretamente em Assembly, bastaria alterar os compiladores, para que os programas fossem compatveis com os novos processadores. indiscutvel, porm, que em muitas tarefas os processadores CISC saem-se melhor, principalmente pelo seu grande nmero de recursos. Por isso, ao invs da vitria de uma das duas tecnologias, atualmente vemos processadores hbridos, que so essencialmente processadores CISC, mas incorporam muitos recursos encontrados nos processadores RISC (ou vice-versa). Apesar de por questes de Marketing, muitos fabricantes ainda venderem seus chips, como sendo Processadores RISC, no existe praticamente nenhum processador atualmente que siga estritamente uma das duas filosofias. Tanto processadores da famlia x86, como o Pentium II, Pentium III e AMD Athlon, quanto processadores supostamente RISC, como o MIPS R10000 e o HP PA-8000 misturam caractersticas das duas arquiteturas, por simples questo de performance. Por que ficar de um lado ou de outro, se possvel juntar o melhor dos dois mundos? A ltima coisa que os fabricantes de processadores so teimosos, sempre que aparece uma soluo melhor, a antiga e abandonada. Examinando de um ponto de vista um pouco mais prtico, a vantagem de uma arquitetura CISC que j temos muitas das instrues guardadas no prprio processador, o que facilita o trabalho dos programadores, que j dispe de praticamente todas as instrues que sero usadas em seus programas. No caso de um chip estritamente RISC, o programador j teria um pouco mais de trabalho, pois como disporia apenas de instrues simples, teria sempre que combinar vrias instrues sempre que precisasse executar alguma tarefa mais complexa. Seria mais ou menos como se voc tivesse duas pessoas, uma utilizando uma calculadora comum, e outra utilizando uma calculadora cientifica. Enquanto estivessem sendo resolvidos apenas clculos simples, de soma, subtrao, etc. quem estivesse com a calculadora simples poderia at se sair melhor, mas ao executar clculos mais complicados, a pessoa com a calculadora cientfica disporia de mais recursos. Nos chips atuais, que so na verdade misturas das duas arquiteturas, juntamos as duas coisas. Internamente, o processador processa apenas instrues simples. Estas instrues internas, variam de processador para processador, so como uma luva, que se adapta ao projeto do chip. As instrues internas de um K6 so diferentes das de um Pentium por exemplo. Sobre estas instrues internas, temos um circuito decodificador, que converte as instrues complexas utilizadas pelos programas em vrias instrues simples que podem ser entendidas pelo processador. Estas instrues complexas sim, so iguais em todos os processadores usados em micros PC. isso que permite que um K6 e um Pentium sejam compatveis entre s. O conjunto bsico de instrues usadas em micros PC chamado de conjunto x86. Este conjunto composto por um total de 187 instrues, que so as utilizadas por todos os programas. Alm deste conjunto principal, alguns processadores trazem tambm instrues alternativas, que permitem aos programas executar algumas tarefas mais rapidamente do que seria possvel usando as instrues x86 padro. Alguns Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 19 exemplos de conjuntos alternativos de instrues so o MMX (usado apartir do Pentium MMX), o 3D-NOW! (usado pelos processadores da AMD, apartir do K6-2), e o SSE (suportado pelo Pentium III). PCS X MACS Continuando na discusso de processadores RISC e CISC, vamos estudar um pouco sobre a arquitetura de dois processadores atuais, o G4, utilizado nos micros Macintosh e o AMD Athlon, usado em micros PC. Existe uma idia geral de que o G4, usado nos Macs um processador RISC, enquanto os processadores usados em micros PC, incluindo o Pentium III e o Athlon so todos CISC. Ambas as afirmaes esto erradas. Na verdade, tanto o G4, quanto o Athlon e o Pentium III so considerados processadores Post-RISC, processadores que possuem um conjunto de instrues gigantesco, maior do que o conjunto de instrues de um processador CISC tpico. A diferena que toda essa gigantesca gama de instrues diferentes, podem ser decodificadas em instrues RISC simples, estas sim que sero processadas. A converso das instrues feita por um componente especial do processador, chamado de Hardware Decoder, encontrado tanto no G4 quanto no Athlon. O G4 possui um enorme conjunto de instrues, assim como os processadores x86, mas todas instrues que podem ser convertidas pelo Hardware decoder e em seguida processadas. O Hardware Decoder extremamente rpido, por isso no compromete o desempenho do processador. De fato, a perda de desempenho por usar este grande conjunto de instrues que precisam ser quebradas em instrues menores de menos de 1%. por isso que os processadores atuais abandonaram a idia RISC original: a perda de desempenho nfima perto do ganho de flexibilidade. O Athlon por sua vez, tem que ser compatvel com o conjunto de instrues x86, caso contrrio no poderia ser usado em micros PC. As instrues x86 consistem em basicamente dois tipos de instrues, as instrues simples, que podem ser diretamente processadas pelo Hardware decoder, sem perda de tempo, e as instrues complexas, que so quebradas em instrues simples por outro componente, chamado Microcode decoder.As instrues simples, que podem ser diretamente processadas, so as mais frequentemente usadas nos programas. De fato, num programa atual tpico, composto de entre 95 e 97% destas instrues simples. O restante so as instrues complexas, que apesar de raramente usadas so as que do mais trabalho, pois precisam passar por um processo de decodificao muito mais lento, feito pelo Microcode Decoder. Para amenizar este problema, a AMD incluiu um buffer de pr extrao no Athlon, que funciona como uma espcie de fila por onde as instrues j decodificadas passam antes de ser processadas. Graas a isto, o processador pode processar outras instrues enquanto aguarda o Microcode Decoder decodificar cada instruo complexa, sem perder muito tempo. Com isto, mesmo mantendo compatibilidade com o conjunto de instrues x86, o Athlon perde muito pouco em desempenho em relao ao G4, isto naturalmente comparando dois processadores de mesma frequncia. O IPC, ou seja, o nmero de instrues processadas por ciclo de ambos muito prximo, o que garante que um Athlon de 500 MHz apresente um desempenho muito parecido com um G4 tambm de 500 MHz. FRONT END E BACK END Qualquer processador atual pode ser dividido em dois blocos bsicos, o Front End e o Back End. 20 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos O Front End corresponde aos circuitos que decodificam as instrues, no caso o Hardware decoder, Microcode decoder e buffer de pr extrao que acabei de explicar, junto com mais alguns componentes, como os circuitos de Branch Prediction (que ordenam as instrues de forma que o processador possa processador o maior nmero possvel de instrues por ciclo e o cache L1. Estes componentes so a porta de entrada do processador, tendo a funo de preparar as instrues para serem processadas. O Back End a parte do processador que finalmente processa as instrues, sendo composto basicamente pelas unidades de execuo. Como vimos, o fato como ambos os processadores decodificam as instrues, contando com o Hardware decoder bastante semelhante, mas o Athlon possui alguns componentes a mais para garantir compatibilidade com as instrues x86. Isto no atrapalha o desempenho do processador, mas o torna um projeto mais complexo. Em termos de unidades de execuo, ou seja, o Back End, que os processadores mostram mais algumas diferenas na forma como processam as instrues j decodificadas. O Athlon possui um total de 9 unidades de execuo, enquanto o G4 possui apenas 6. A diferena parece grande, mas na prtica o desempenho quase o mesmo, veja por que: O Athlon possui 3 unidades de execuo para leitura/gravao de dados na memria, enquanto o G4 possui apenas uma. O ponto que todas as instrues, tanto de inteiros, quanto de ponto flutuante no Athlon, vem com um espao reservado para uma instruo de leitura/gravao, espao que nem sempre preenchido, fazendo com que as 3 unidades fiquem ociosas na maior parte do tempo, apesar de agilizarem algo de vez em quando. No G4, s existe uma unidade de leitura/gravao, mas que em compensao fica ocupada na maior parte do tempo. Na prtica, esta nica unidade acaba fazendo o mesmo volume de trabalho das trs do Athlon, que ficam boa parte do tempo ociosas. Sem dvida, o G4 perde alguma coisa em termos de desempenho, mas muito pouco. Em termos de unidades de execuo de inteiros e de ponto flutuante, que so as mais importantes, temos especificaes parecidas em ambos: O Athlon possui trs unidades de ponto flutuante (que formam o coprocessador aritmtico), o mesmo nmero encontrado no G4. Apenas para efeito de comparao, o Pentium 3 possui apenas duas. Com o mesmo nmero de unidades, o desempenho dos dois processadores no quesito ponto flutuante quase igual. J em termos de unidades de processamento de inteiros, o cenrio muda um pouco de figura, pois o Athlon possui trs unidades de execuo contra apenas duas do G4. Isto garante que o Athlon tenha um desempenho um pouco melhor que o G4 em aplicativos de escritrios, mas a diferena pequena, pois o desempenho real tambm depende do cache, velocidade de acesso memria, etc. Em termos de instrues 3D, o Athlon conta com o 3D-Now, o famoso conjunto de instrues, embutido nos processadores AMD que permite melhorar o desempenho do processador em jogos e aplicativos 3D. O Athlon traz tambm o velho MMX, que garante algum ganho em aplicativos multimdia. O G4 por sua vez traz um conjunto unificado, o Altivec, que inclui tanto instrues 3D (como no 3D-Now!), quanto instrues multimdia (como no MMX), isto garante que tanto o Athlon quanto o G4 possuam armas semelhantes neste quesito, o resto fica por conta dos programadores. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 21 CAPTULO 5 RAID O RAID sempre foi um recurso bastante usado em servidores e em computadores de grande porte para otimizar o acesso a disco e adicionar tolerncia falhas. Mas, atualmente este recurso est ao alcance de qualquer usurio domstico que tenha condies de comprar mais de um HD. possvel usar RAID tanto em HDs IDE quanto em HDs SCSI. RAID EM HDS IDE Uma controladora RAID permite combinar vrios discos rgidos, permitindo aumentar tanto o desempenho, fazendo vrios discos trabalharem como se fossem um s; quanto a confiabilidade, usando um sistema de espelhamento. Alm das controladoras SCSI, que no so uma soluo muito vivel para o usurio domstico, j que os discos rgidos SCSI so caros, existem tambm algumas controladoras RAID IDE, que alm de serem mais baratas, permitem usar os discos rgidos IDE que temos no mercado. Uma controladora que vem sendo muito elogiada, a Promise FastTrak66 IDE. Nos EUA, esta controladora vendida por 65 dlares, aqui no Brasil, o preo varia muito, dependendo de onde voc for comprar, mas possvel encontra-la por menos de 100 dlares. Como outras controladoras similares, a Premisse FastTrak66 uma placa de expanso que deve ser conectada a um dos slots PCI do micro. O placa substitui as interfaces IDE da placa me, por isso detectada automaticamente pelo sistema operacional que estiver utilizando, seja o Windows 95/98 quanto o Windows 2000 ou mesmo o Linux, tornando a instalao bastante simples. A placa trs as duas sadas IDE normais. Cada sada permite conectar dois discos rgidos, o que traz a possibilidade de instalar at 4 discos rgidos IDE. As possibilidades so as seguintes: RAID 0 (STRIPING) possvel combinar 2, 3 ou 4 discos rgidos, que sero acessados como se fossem um s, aumentando radicalmente o desempenho do acesso disco. Os dados gravados so fragmentados e os pedaos so espalhados por todos os discos. Na hora de ler, os discos so acessados ao mesmo tempo. Na prtica, temos um aumento de desempenho de cerca de 98% usando dois discos, 180% usando 3 discos e algo prximo a 250% usando 4 discos. As capacidades dos discos so somadas. Usando 3 discos de 8 GB por exemplo, voc passar a ter um grande disco de 24 22 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos GB Este modo o melhor do ponto de vista do desempenho, mas ruim do ponto de vista da confiabilidade, pois como os dados so fragmentados, caso apenas um disco falhe, voc perder os dados gravados em todos os discos. Uma observao importante sobre este modo que voc deve usar discos rgidos idnticos. at possvel usar discos de diferentes capacidades, mas o desempenho ficar limitado ao desempenho do disco mais lento. RAID 1 (MIRRORING) Este modo permite usar 2 HDs, sendo que o segundo armazenar uma imagem idntica do primeiro. Na pratica, ser como se voc tivesse apenas um disco rgido instalado, mas caso o disco titular falhe por qualquer motivo, voc ter uma cpia de segurana armazenada no segundo disco. Este o modo ideal se voc deseja aumentar a confiabilidade do sistema. A observao sobre este modo que ao usar dois discos, procure colocar um em cada uma das duas interfaces IDE da placa, isto melhorar o desempenho. Outro ponto que caso os dois discos estejam na mesma interface, como master e slave, voc teria que resetar o micro caso o primeiro disco falhasse (este problema ocorre em todas as controladoras RAID IDE). Usando um em cada interface a controladora far a troca automaticamente, sem necessidade de reset. Da prxima vez que inicializar o micro voc receber um aviso pedindo para substituir o HD defeituoso. RAID 10 (MIRROR/STRIP) Este modo pode ser usado apenas caso voc tenha 4 discos rgidos. Os dois primeiros funcionaro em Striping, dobrando o desempenho, enquanto os outros dois armazenaro uma imagem dos dois primeiros, assegurando a segurana. Este modo na verdade uma combinao dos doisprimeiros. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 23 CONFIGURAO Depois de espetar a placa em um slot PCI e conectar os discos rgidos a ela, voc dever apertar Ctrl + F (a combinao de teclas pode variar dependendo do modelo da sua controladora) durante a inicializao do micro para acessar o BIOS Setup da placa.
BIOS da controladora RAID
Usando Striping, os discos sero vistos como se fossem um s, isto significa que voc particionar e acessar os discos como se tivesse apenas um disco instalado. Usando Mirroring tambm, do ponto de vista do sistema operacional s existir um disco instalado. A prpria controladora se encarregar de copiar os dados para o segundo disco. Em geral voc tambm ter a opo de configurar o stripe block, onde possvel definir qual o tamanho dos blocos de dados em que a controladora quebrar os arquivos ao ser usado RAID 0 ou 10. Basicamente, se forem ser armazenados muitos arquivos pequenos, um stripe block de 32 KB funcionar melhor, enquanto se forem ser armazenados arquivos muito grandes, 128 KB ser um valor mais adequado. O valor defaut de 64 KB adequado para a maioria das situaes. Alm das controladoras dedicadas, existe tambm a opo de comprar uma placa me com uma controladora RAID embutida. Esta a opo mais barata, j que o acrscimo no preo da placa bem menor que o custo de uma controladora separada. Mas, no deixe de verificar se a placa me suporta os trs modos de RAID. Muitas placas suportam apenas RAID 0. Nas placas com RAID voc encontrar 4 interfaces IDE. As duas primeiras so reservadas para os HDs em RAID enquanto as outras duas so para uso geral. recomendvel instalar CD-ROMs, gravadores ou mesmo outros HDs que no vo fazer parte do RAID apenas nas duas IDEs de uso geral. 24 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos RAID COM SCSI Atualmente, o disco rgido e um dos componentes mais lentos em qualquer PC. Muito mais lento que o processador, que a memria RAM, que a placa de vdeo, etc. O grande problema que devido sua natureza mecnica, no possvel produzir HDs muito mais rpidos com a tecnologia atual, pelo menos a um custo aceitvel. No futuro este problema poder ser resolvido com o uso de HDs de estado slido, onde ser usada memria Flash (ou outra tecnologia que surja nos prximos anos) ao invs de discos magnticos. De qualquer forma, esta ainda uma soluo distante da realidade. Os HDs de estado slido j existem para uso militar e em alguns servidores de alto desempenho, mas seu custo muito alto, entre 2 e 5 dlares por MB. Para quem precisa de HDs mais rpidos, seja por precisar de um servidor de arquivos parrudo, ou por qualquer outro motivo, mas ao mesmo tempo no pode gastar muito, uma soluo o RAID. RAID significa Redundant Array of Inexpensive Disks, ou disposio redundante de discos baratos. A idia um sistema unidos venceremos, onde vrios HDs so combinados para aumentar a performance. Num nvel mais complexo, o RAID pode ser usado tambm para melhorar a confiabilidade do equipamento, atravs de espelhamento ou paridade. Num sistema RAID 1, onde temos dois HDs, sendo que o segundo armazena uma cpia fiel dos dados do primeiro, mesmo que um dos HDs pife de uma hora pra outra, o sistema continua intacto, funcionando como se nada tivesse acontecido. Como o nome sugere, um sistema RAID utiliza HDs IDE ou SCSI comuns, o que permite construir sistemas com vrios HDs a um custo relativamente baixo. Vrias placas me atuais esto vindo com controladoras RAID IDE embutidas, permitindo combinar at 4 HDs IDE. O primeiro passo para montar um sistema RAID SCSI comprar uma controladoras SCSI com suporte a RAID. A maioria das controladoras SCSI atuais suportam RAID. As controladoras diferenciam-se pelos recursos. Em primeiro lugar, existem controladoras SCSI de 8 bits e de 16 bits, as de 8 bits permitem usar at 7 HDs , enquanto as de 16 bits permitem um mximo de 15 e so duas vezes mais rpidas. Outra diferena diz respeito ao padro suportado pela placa, que dita a velocidade da interface. Placas Ultra SCSI (Fast 20) operam a 20 MB/s (placas de 8 bits) ou 40 MB/s (placas de 16 bits). Placas Ultra-2 SCSI (Fast 40) operam a 40 MB/s (8 bits) ou 80 MB/s (16 bits). As placas Ultra-3 SCSI (Fast 80) so as mais rpidas. operam a 80 MB/s ou 160 MB/s. Tambm existem controladoras com buffer embutido. Este buffer funciona como um cache de disco, melhorando a performance, principalmente nas operaes de escrita. Podem ser encontradas placas com at 32 MB de buffer. Naturalmente, quanto mais buffer, mais cara a placa. Resolvido o problema da placa SCSI, resta escolher qual modo RAID ser usado. O modo pode ser configurado atravs do BIOS da placa SCSI, que pode ser acessado pressionando uma combinao de teclas durante o boot. O mais comum Ctrl + C. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 25 Os modos RAID disponveis em placas SCSI so: RAID 0 (STRIPING) o modo que permite obter a melhor performance possvel, sacrificando parte da confiabilidade. Todos os discos passam a ser acessados como se fossem um nico drive. Ao serem gravados, os arquivos so fragmentados nos vrios discos, permitindo que os fragmentos possam ser lidos/gravados ao mesmo tempo. Usando RAID 0 a performance um patamar prximo da velocidade de todos os HDs somada. Ao usar 4 HDs com taxa de transferncia de 20 MB/s cada em RAID 0, voc teria uma taxa de transferncia total de 75, 76 MB/s. O problema que caso qualquer um dos HDs apresente problema, sero perdidos os dados armazenados em todos os HDs, j que qualquer arquivo torna-se intil caso uma parte do cdigo seja perdida. RAID 1 (MIRRORING) o famoso sistema de espelhamento, conseguido usando dois HDs. Um deles armazena dados, enquanto o seguindo armazena uma cpia fiel dos mesmos dados. Caso qualquer um dos HDs pare, ele automaticamente substitudo pelo seu clone e o sistema continua intacto. Na maioria das controladoras RAID SCSI possvel realizar a troca do HD defeituoso a quente, com o micro ligado, recurso ainda no disponvel nas controladoras RAID IDE. Esta troca quente no to importante nos PCs domsticos j que depois de tantos paus do Windows 95/98/ME ningum mais se importa em reiniciar o micro de vez em quanto. Mas, num servidor de alta disponibilidade este recurso essencial para evitar uma pane na rede. RAID 2 um modo que no mais utilizado. O RAID 2 consiste em embutir cdigos de correo de erros em cada cluster de dados gravado. Porm, todos os HDs atuais j vem com sistemas de correo de erros embutidos, tornando o sistema obsoleto. RAID 3 O RAID 3 usa um sistema de paridade para manter a integridade dos dados. Num sistema com 5 HDs, o 4 primeiros serviro para armazenar dados, enquanto o ltimo armazenar os cdigos de paridade. Nos 4 primeiros drives temos na verdade um sistema RAID 0, onde os dados so distribudos entre os 4 HDs e a performance multiplicada por 4. Porm, os cdigos armazenados no 5 HD permitem recuperar os dados caso qualquer um dos 4 HDs pare. A recuperao feita usando os cdigos de correo de erros combinados com os dados distribudos nos outros HDs. possvel aplicar o RAID 3 a sistemas com mais HDs, sendo que sempre um armazenar os cdigos de correo. Claro que este sistema funciona apenas caso apenas um 26 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos HD apresente problemas, caso d-se o azar de dois ou mais HDs apresentarem problemas ao mesmo tempo, ou antes da controladora terminar a reconstruo dos dados, novamente perdem-se todos os dados de todos os HDs. Voc pode perguntar, como possvel recuperar todos os dados, armazenados nos 4 HDs com apenas um HD de cdigos de paridade. Na verdade, a idia por trs desta aparente mgica bastante simples. A paridade consiste em adicionar um bit adicional para cada grupo de bits. Na memria RAM, existe um bit de paridade para cada 8 bits de dados, enquanto no RAID 3 temos um bit extra para cada 4 bits de dados. Caso dentro destes 4 bits exista um nmero par de bits 1, ento o bit de paridade 0. Caso exista um nmero mpar de bits 1, ento o bit de paridade 1: Veja que graas ao bit de paridade possvel saber apenas que, dentro do grupo de 4 bits existe um nmero par ou mpar de bits 1. Mas, isso j o suficiente para recuperar qualquer um dos 4 bits que seja perdido, desde que sejam respeitadas duas condies: a) Que apenas um bit de cada grupo seja perdido b) Que se saiba qual dos bits foi perdido No RAID 3 cada um dos bits dentro de cada grupo fica guardado em um HD. Quando um dos HDs pra de funcionar, a controladora sabe exatamente quais bits foram perdidos e tm condies de recuper-los. Em sistemas de operao crtica, onde a mquina no pode ficar fora do ar por mais do que alguns segundos, este sistema no o suficiente. RAID 4 Este modo parecido com o RAID 3, novamente um dos discos dedicado tarefa de armazenar os cdigos de paridade, mas a forma como os dados so gravados nos demais discos diferente. No RAID 3 os dados so divididos, sendo cada fragmento salvo em um disco diferente. Isto permite ganhar velocidade tanto na gravao quanto na leitura dos dados. No RAID 4 os dados so divididos em blocos, pedaos bem maiores do que no RAID 3. Com isto, possvel ler vrios arquivos ao mesmo tempo, o que til em algumas aplicaes, porm o processo de gravao bem mais lento que no RAID 3. O RAID 4 apresenta um bom desempenho em aplicaes onde seja preciso ler uma grande quantidade de arquivos pequenos. No RAID 4 o tempo de reconstruo dos dados caso um dos HDs falhe bem maior do que no RAID 3. RAID 5 mais um sistema que baseia-se no uso de paridade para garantir a integridade dos dados caso um HD falhe. A diferena sobre o RAID 3 que ao invs de dedicar um HD a esta tarefa, os dados de correo so espalhados entre os discos. A vantagem sobre o RAID 3 alcanar taxas de leitura um pouco mais altas, pois ser possvel ler dados apartir de todos os HDs simultaneamente, entretanto as gravaes de dados so um pouco mais lentas. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 27 O RAID 5 pode ser implementado com apartir de 3 discos. Apesar dos dados de paridade serem espalhados pelos discos, o espao esquivamente um dos HDs consumido por eles. Usando 4 HDs de 20 GB cada um, teremos 60 GB para dados e 20 GB para os cdigos de paridade. Usando 8 HDs teremos 140 GB para dados e os mesmos 20 GB para paridade, e assim por diante. RAID 6 um padro relativamente novo, suportado por apenas algumas controladoras. semelhante ao RAID 5, porm usa o dobro de bits de paridade, garantindo a integridade dos dados caso at 2 dos HDs falhem ao mesmo tempo. Ao usar 8 HDs de 20 GB cada um em RAID 6, teremos 120 GB de dados e 40 GB de paridade. RAID 10 Este sistema combina caractersticas do RAID 0 e RAID 1, da o nome. O RAID 10 pode ser implementando em sistemas com 4 discos ou mais, sendo obrigatrio um nmero par (6, 8, etc.). Metade dos discos armazena dados e a outra metade armazena uma cpia. A metade que armazena dados combinada, formando um sistema RAID 0, aumentando a performance, porm mantendo a confiabilidade, j que temos cpias de todos os dados. Usando 4 HDs de 20 GB em modo 10, teremos 40 GB de dados e o dobro de desempenho que em um HD sozinho. RAID 53 (OU 5+3) Ao contrrio do que o nome sugere, este modo uma combinao dos modos 3 e 1. O RAID 53 pode ser implementado em sistemas com pelo menos 5 HDs. Os dois primeiros HDs formam um sistema RAID 3, com os dados distribudos entre eles. Os dois HDs seguintes formam um sistema RAID 0, enquanto o ltimo armazena cdigos de paridade de todos. Este sistema apresenta um balano entre as boas taxas de transferncia do RAID 3 e a boa performance ao ler vrios arquivos pequenos do RAID 0. Porm, no existe 100% de garantia de recuperar todos os dados caso um dos HDs falhe. um modo pouco usado. SOFTWARE GHOST Muitas vezes em nosso trabalho desejamos fazer uma cpia completa de um hd (seja por Backup ou por outro motivo trocar o hd de um cliente por um maior mas ele deseja manter seus dados). Existem comandos do D.O.S que nos permitem fazer isso (XCOPY32 C:*.* D:/s/v) e pode-se tambm arrastar o contedo de uma unidade para outra em windows (Apesar de na pasta windows o arquivo WIN386.SWP causar violao de compartilhamento) , mas a melhor opo quando voc for copiar um hd inteiro para outro sem dvida usar o GHOST. Este software maravilhoso faz um xerox de seu hd e voce nem saber qual o original..... Para us-lo faa um disco de boot limpo (format a:/s) e copie os arquivos do ghost para este disquete , inicie a mquina e escreva ghost. O menu simples: v at local , escolha disk to disk e escolha o hd origem e o hd destino. Cuidado para no trocar o origem (hd que tem os dados) com o destino (hd que recebe os dados). O hd destino 28 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos conter uma copia fiel do origem portanto se nele existiam dados antes de receber a cpia sero apagados..
Veja a figura do ghost abaixo:
PARTITION MAGIC O particionador mgico sem dvida um dos melhores particionadores do mercado, pois alm de ser um particionador, possui as vantagens de redimensionar uma partio (voce tem 1 sistema no hd e resolve colocar outro sem perder dados), excluir parties, format-las , verific-las e at convert-las se necessrio. Muito simples de usar este software tem seu controle principal no menu Operations onde encontramos: Resize/Move Aumenta ou diminui a partio. Create Cria uma nova partio (FAT 16 ou 32, NTFS, Linux, SWAP Linux). Delete- Apaga partio selecionada Label- Muda o nome de uma partio Format- Formata uma Partio Copy Copia partio Check Verifica integridade dos dados. Info Exibe diversas informaes. Convert Convert a partio ex: de Fat16 a Fat32.
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 29
A seguir a operao que pode ser considerada a mais importante deste software: a operao de redimenso do disco rgido mesmo com o sistema operacional instalado. 30 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos
A vantagem desta operao sem dvida a possibilidade de matermos nosso Sistema Operacional e seus dados intactos de forma a podermos abrir espao para outra partio ainda no existente. O novo tamanho deve ser ajustado em new size . Aps ter escolhido este novo tamanho crie a nova partio e instale os novos dados. Lembre-se que apesar de segura qualquer operao com parties principalmente que contem dados no possui uma garantia 100% por isso aconselhado backup e desfragmentao dos dados antes de executar esta operao. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 31 SOFTWARES DE DIAGNSTICO Existem dezenas de softwares de diagnosticos que servem para testar e verificar velocidades, mostrar espaos de memria e funcionamento de seu computador. A discusso sobre qual o melhor o mesmo que discutir sobre qual cor a mais bonita, como exemplo mostraremos um software para Windows (Fresh Diagnose) , que alm de ser muito bom possui uma verso gratuita para download na internet (www.superdownloads.com.br). TELA DO FRESH DIAGNOSE
32 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos
Acima temos exemplos de freshdiagnose realizando um benchmark (teste de desempenho/velocidade) no processador (processador, winchester e placa de vdeo nesta ordem de cima para baixo).
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 33 CAPTULO 6 LINUX - INTRODUO O Linux um clone UNIX de distribuio livre para PCs baseados em processadores 386/486/Pentium. O Linux uma implementao independente da especificao POSIX, com a qual todas as verses do UNIX padro (true UNIX) esto convencionadas. O Linux foi primeiramente desenvolvido para PCs baseados em 386/486/Pentium, mas atualmente tambm roda em computadores Alpha da DEC, Sparcs da SUN, mquinas M68000 (semelhantes a Atari e Amiga), MIPS e PowerPCs. O Linux foi escrito inteiramente do nada, no h cdigo proprietrio em seu interior. O Linux est disponvel na forma de cdigo objeto, bem como em cdigo fonte. O Linux pode ser livremente distribudo nos termos da GNU General Public License (veja apndice). O Linux possui todos as caractersticas que voc pode esperar de um UNIX moderno, incluindo: Multitarefa real Memria virtual Biblioteca compartilhada "Demand loading" Gerenciamento de memria prprio Executveis "copy-on-write" compartilhados Rede TCP/IP (incluindo SLIP/PPP/ISDN) X Windows
A maioria dos programas rodando em Linux so freeware genricos para UNIX, muitos provenientes do projeto GNU. Muitas pessoas tem executado benchmarks em sistemas Linux rodando em 80486, e tem achado o Linux comparvel com workstations mdias da Sun e da Digital. O Linux est disponvel atravs da Internet por meio de centenas de sites FTP. O Linux est sendo usado hoje em dia por centenas e centenas de pessoas pelo mundo. Est sendo usado para desenvolvimento de softwares, networking (intra-office e Internet), e como plataforma de usurio final. O Linux tem se tornado uma alternativa efetiva de custo em relao aos caros sistemas UNIX existentes. Um exemplo de pacote de distrribuio do Linux mais populares distribuido pela InfoMagic (http://www.infomagic.com, e-mail info@infomagic.com), a verso LINUX Developers Resource CD-ROM, de dezembro de 1996, contm 6 CD-ROMs, seu contedo sucinto : Verso Red Hat 4.0 (instalando kernel 2.0.18) 34 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Verso Slackware 3.1 (Slackware 96 - instalando kernel 2.0) Verso Debian GNU/Linux 1.2 X-Windows - Xfree86 version 3.2 Arquivos Linux de tsx-11.mit.edu e sunsite.unc.edu Arquivos GNU de prep.ai.mit.edu Documnetao completa on-line & HOWTOs (Guia de Instalao e Guia do Administrador da Rede, em ingls) Softwares demostrao comerciais como : BRU, dbMan, StarOffice, Cockpit, Flagship, Smartware, GP Modula-2, Pathfinder, Scriptum, etc. HISTRICO DO LINUX O Kernel do Linux foi, originalmente, escrito por Linus Torvalds do Departamento de Cincia da Computao da Universidades de Helsinki, Finlndia, com a ajuda de vrios programadores voluntrios atravs da Internet. Linus Torvalds iniciou cortando (hacking) o kernel como um projeto particular, inspirado em seu interesse no Minix, um pequeno sistema UNIX desenvolvido por Andy Tannenbaum. Ele se limitou a criar, em suas prprias palavras, "um Minix melhor que o Minix" ("a better Minix than Minix"). E depois de algum tempo de trabalho em seu projeto, sozinho, ele enviou a seguinte mensagem para comp.os.minix: Voc suspira por melhores dias do Minix-1.1, quando homens sero homens e escrevero seus prprios "device drivers" ? Voc est sem um bom projeto e esta morrendo por colocar as mos em um S.O. no qual voc possa modificar de acordo com suas necessidades ? Voc est achando frustrante quando tudo trabalha em Minix ? Chega de atravessar noites para obter programas que trabalhem correto ? Ento esta mensagem pode ser exatamente para voc. Como eu mencionei a um ms atrs, estou trabalhando em uma verso independente de um S.O. similar ao Minix para computadores AT-386. Ele est, finalmente, prximo do estgio em que poder ser utilizado (embora possa no ser o que voc esteja esperando), e eu estou disposto a colocar os fontes para ampla distribuio. Ele est na verso 0.02... contudo eu tive sucesso rodando bash, gcc, gnu-make, gnu-sed, compresso, etc. nele. No dia 5 de outubro de 1991 Linus Torvalds anunciou a primeira verso "oficial" do Linux, verso 0.02. Desde ento muitos programadores tm respondido ao seu chamado, e tm ajudado a fazer do Linux o Sistema Operacional que hoje. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 35 GERNCIA DE PROCESSOS Consideraes Iniciais Para explicarmos como o Linux gerncia processos, faremos consideraes iniciais sobre o cdigo fonte do kernel do Linux (onde encontramos a implementao da Gerncia de Processos) e a inicializao boot do sistema. Neste tpico tentaremos explicar, de uma maneira ordenada o cdigo fonte do Linux, tentando conseguir um bom entendimento sobre como o cdigo fonte est situado e como as caractersticas mais relevantes do UNIX foram implementadas. O objetivo ajuda-lo a se familiarizar com o projeto geral do Linux. Ento, vamos comear por onde o Linux comea: seu sistema de boot. Um bom entendimento da linguagem C necessrio para entender este material, assim como familiaridade com conceitos de UNIX e arquitetura dos PCs. Porm, nenhum cdigo C aparecer neste material, mas referencias de onde podem ser encontrados. Qualquer referencia "pathname" arquivos tem como ponto de partida a arvore principal de fontes, usualmente /usr/src/linux. A maioria das informaes reportadas aqui tem como referencia o cdigo fonte do Linux verso 1.0. Referencias a verses posteriores contero o smbolo novo. Caso o smbolo no estiver presente, significa que no houveram modificaes aps as verses 1.0.9-1.1.76. Ocasionalmente um pargrafo como este ocorrer no texto. Indicando onde poderam ser obtidas mais informaes sobre o assunto corrente (geralmente o cdigo fonte). INICIALIZAO ("BOOT" DO SISTEMA) Quando o PC ligado, o processador 80x86 encontra-se em modo real e executa o cdigo contido no endereo 0xFFFF0, que corresponde a um endereo ROM-BIOS. O BIOS do PC realiza alguns testes no sistema e inicializa o vetor de interrupes no endereo fsico 0. Depois disto ele carrega o primeiro setor do device bootavel em 0x7C00, e passa a execuo para este endereo. O device , usualmente, o disquete ou o disco rgido. A descrio anterior um tanto simplificada, mas tudo que se necessita para entender o trabalho inicial do kernel. A primeirssima parte do kernel Linux est escrito em linguagem assembly 8086 (boot/bootsect.S). Quando executado, ele se move para o endereo absoluto 0x90000, carrega os prximos 2 kBytes de cdigo do device de boot at o endereo 0x90200, e o resto do kernel para o endereo 0x10000. A mensagem "Loading..." apresentada durante o carregamento do sistema. O controle , ento passado para o cdigo contido em boot/Setup.S, outro cdigo assembly de modo real. A parte de "setup" identifica algumas caractersticas do sistema (hardware) e o tipo da placa VGA. Se requerido, pede ao usurio para escolher o modo do vdeo da console. E, ento, move todo o sistema do endereo 0x10000 para o endereo 0x1000, passa para o modo protegido e passa o controle para o resto do sistema (endereo 0x1000). O prximo passo a descompresso do kernel. O cdigo em 0x1000 vem de zBoot/head.S que inicializa os registradores e invoca decompress_kernel(), o qual 36 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos composto por zBoot/inflate.c, zBoot/unzip.c e zBoot/misc.c. O dado "descompresso" vai para o endereo 0x100000 (1 Mega), e esta a principal razo do por que o Linux no pode rodar com menos de 2 Megas de RAM. O encapsulamento do kernel em um arquivo gzip realizado por Makefile e utilitrios no diretrio zBoot. So arquivos interessantes para se dar uma olhada. A verso 1.1.75 moveu os diretrios boot e zBoot para arch/i386/boot. Esta modificao pretendeu possibilitar a construo de "kernel verdadeiro" para diferentes arquiteturas. O cdigo "descompresso" executado a partir do endereo 0x1010000 , onde todo o setup 32-bit esta lotado: IDT, GDT e LDT so carregados, o processador e o co-processador so identificados, a rotina start_kernel invocada. Os arquivos fonte das operaes acima esto em boot/head.S. Este, talvez, seja o cdigo mais difcil em todo o kernel do Linux. Note que se algum erro ocorrer durante alguns dos passos precedentes, o computador ir travar. O sistema operacional no pode manipular erros enquanto no estiver totalmente operante. start_kernel() reside em init/main.c. Tudo de agora em diante esta codificado em linguagem C, exceto gerncia de interrupes e chamadas de sistemas (Bem, a maior parte das macros possuem cdigos assembly embutidos, tambm). Depois dos procedimentos com todas as questes iniciais, start_kernel() inicializa todas as partes do kernel, especificamente: Inicializa a memria e chama paging_init(). Inicializa os traps, canais IRQ e scheduling. Se requerido, aloja um profiling buffer. Inicializa todos device drives e buffers de discos, bem como outras partes menores. Regula o delay loop (calcula o numero "BogoMips"). Checa se a interrupo 16 est trabalhando com o co-processador.
Finalmente, o kernel est pronto para move_to_user_mode(), em seguida fork (bifurca) o processo de inicializao, cujos cdigos esto no mesmo arquivo fonte. E o processo nmero 0, tambm chamado idle task (tarefa preguiosa), se mantm rodando em um loop infinito. O processo de inicializao tenta executar /etc/init, ou /bin/init, ou /sbin/init. Se nenhum deles tem sucesso, o cdigo se desvia para "/bin/sh /etc/rc" e cria um root shell no primeiro terminal (console). Este cdigo remanescente do Linux 0.01, quando o S.O. era feito para um kernel stand-alone, e no havia processo de login. Depois de exec() o programa de inicializao de um dos lugares padro (deve haver um deles), o kernel no tem controle direto sobre o fluxo do programa. Sua funo, de agora em diante, prover processos atravs de chamadas ao sistema (system calls), assim como prover eventos para servios assncronos (como uma interrupo do hardware). A multitarefa est inicializada, e inicializar o gerenciamento de acesso a multiusurios, atravs do fork() e processos de login. Estando o kernel carregado e provendo servio, vamos prosseguir dando uma olhada nesses servios ("system calls"). Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 37 GERNCIA DE PROCESSO PELO KERNEL Do ponto de vista do kernel, um processo uma entrada na tabela de processos. Nada mais. A tabela de processos, ento, uma das mais importantes estruturas de dados no sistema, conjuntamente com a tabela de gerenciamento de memria e o buffer cache. O item individual na tabela de processos a estrutura task_struct, definida em include/linux/sched.h. Com a task_struct, tanto informaes de baixo quanto de alto nvel, so mantidas variando da cpia de alguns registradores de hardware at o inode do diretrio de trabalho para o processo. A tabela de processos tanto um array quanto uma lista duplamente ligada, como uma rvore. A implementao fsica um array esttico de ponteiros, cujo tamanho NR_TASKS, uma constante definida em include/linux/tasks.h, e cada estrutura reside em uma pagina de memria reservada. A estrutura da lista est entre os ponteiros next_task e prev_task, a estrutura em arvore um tanto complexa, e no ser descrita aqui. Voce pode desejar mudar NR_TASKS do seu valor default (que 128), mas esteja certo de que h dependncias, e ser necessrio recompilar todos os arquivos fonte envolvidos. Depois do boot, o kernel est sempre trabalhando em um dos processos, e a varivel global "current", um ponteiro para um item da task_struct, usado para guardar o processo que est rodando. A varivel "current" s mudada pelo scheduler, em kernel/sched.c. Quando, porm, todos os processos necessitarem estar looked, a macro for_each_task usada. Isto consideravelmente mais rpido que uma procura seqencial no array. Um processo est sempre rodando em ou em "modo usurio" ou em "modo kernel". O corpo principal de um programa de usurio executado em modo usurio e chamadas a sistema so executados em modo kernel. A pilha usada pelos processos netes dois modos de execuo so diferentes um seguimento de pilha convencional usado para o modo usurio, enquanto uma pilha de tamanho fixo (uma pgina, cujo processo dono) usada no modo kernel. A pgina de pilha para o modo kernel nunca swapped out, porque ela pode estar disponvel sempre que um system call introduzido. Chamadas a sistema (System calls), no kernel do Linux, so como funes da linguagem C, seu nome "oficial" esta prefixado por "sys_". Uma chamada a sistema de nome, por exemplo, burnout invoca a funo de kernel sys_burnout(). O mecanismo de chamadas a sistema (System calls) est descrito no captulo 3 do Linux Kernel Hackers' Guide (http://www.redhat.com:8080/HyperNews/get/khg.html). Uma olhada em for_each_task e SET_LINKS, em include/linux/sched.h pode ajudar a entender a lista e a estrutura de rvore da tabela de processos. 38 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos CAPTULO 7 PROCESSOS CRIANDO E DESTRUINDO PROCESSOS Um sistema UNIX cria um processo atravs da chamada a sistema fork(), e o seu trmino executado por exit(). A implementao do Linux para eles reside em kernel/fork.c e kernel/exit.c. Executar o "Forking" fcil, fork.c curto e de fcil leitura. Sua principal tarefa suprir a estrutura de dados para o novo processo. Passos relevantes nesse processo so: Criar uma pgina livre para dar suporte task_struct Encontrar um process slot livre (find_empty_process()) Criar uma outra pgina livre para o kernel_stack_page Copiar a LTD do processo pai para o processo filho Duplicar o mmap (Memory map - memoria virtual) do processo pai
sys_fork() tambm gerencia descritores de arquivos e inodes.
A verso 1.0 do kernel possui algum vestgio de suporte ao "threading" (trabalho ou processo em paralelo), e a chamada a sistema fork() apresenta algumas aluses ele. A morte de um processo difcil, porque o processo pai necessita ser notificado sobre qualquer filhos que existam (ou deixem de existir). Alm disso, um processo pode ser morto (kill()) por outro processo (isto um aspecto do UNIX). O arquivo exit.c , portanto, a casa do sys_kill() e de variados aspectos de sys_wait(), em acrscimo sys_exit(). O cdigo pertencente exit.c no descrito aqui - ele no to interessante. Ele trabalha com uma quantidade de detalhes para manter o sistema em um estado consistente. O POSIX "standard", por conseguinte, dependente de sinais (flags), e tinha que trabalhar com eles. EXECUTANDO PROCESSOS Depois de executar o fork(), duas copias do mesmo programa esto rodando. Uma delas usualmente executa - exec() - outro programa. A chamada a sistema exec() deve localizar a imagem binria do arquivo executvel, carrega-lo e executa-lo. "Carrega-lo" no significa, necessriamente, copiar na memria a imagem binria do arquivo, para que, assim, o Linux possa atender a demanda de programas a serem executados. A implementao Linux do exec() suporta formatos binrios diferentes. Isto dotado atravs da estrutura linux_binfmt, a qual embute dois ponteiros para funes - um para carregar o executvel e o outro para carregar a "library" associada, cada formato binrio deve conter, portanto, o executvel e sua "library". Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 39 O sistema UNIX prove, ao programador, seis formas para a funo exec(). Quase todos podem ser implementados como uma "library" de funes, e o kernel do Linux implementa sys_execve() independentemente das providas pelo UNIX. Ele executa uma nica tarefa: carregar o cabealho do executvel, e tenta executa-lo. Se os dois primeiros bytes so "#!", ento a primeira linha ignorada e um interpretador invocado, caso contrrio o formato binrio, registrado, executado seqencialmente. O formato nativo do Linux suportado diretamente por fs/exec.c, e as funes relevantes so load_aout_binary e load_aout_library. Assim como para os binrios a funo de carregamento "a.out" invocada, e a funo mmap() (memory map - memria virtual ) aloca espao em disco (no caso da memria real estar cheia) para o processo, ou invoca read_exec(), caso haja espao em memria. "The former way uses the Linux demand loading mechanism to fault-in program pages when they're accessed, while the latter way is used when memory mapping is not supported by the host filesystem (for example the "msdos" filesystem)". A partir da verso 1.1 do kernel, o Linux embutiu um sistema de arquivos (filesystem) revisado do msdos, que suporta mmap() (memory map - memria virtual). Alm disso a estrutura linux_binfmt uma "lista ligada" e no um array, para permitir carregar um novo formato binrio como um mdulo do kernel. Finalmente a estrutura, por si mesma, foi estendida para acessar rotinas com o formato relativo core-dump. INSTALAO DO LINUX A instalao do Linux realmente mais simples do que aquilo que todos falam. Como voc viu em aula (ou ver) na bios Phoenix (usadas no lab de redes da tec) era necessrio apenas mudar a opo de boot para primeiro ler o cd-rom. No geral isso que voc deve fazer dar o boot pelo cd-rom. Em outras bios estas opes podem ser: Boot Sequence, 1 st Boot Sequence ou algo parecido. Durante a instalao sero apresentadas opes que quase sempre j esto na opo certa por default , a nica considerao que deve ser feita sobre usar o disk druid na hora do particionamento: Por via de regra usamos 2 parties ( claro que isto no obrigatrio) ento devemos ter uma partio raz ( /ponto de montagem) com o tamnho desejado para o linux (aconselha-se no minimo 2000 MB) e uma partio SWAP com o dobro da ram. Aps a escolha dos pacotes surgiro configuraes simples e avanadas como as de rede (que sero estudadas em redes) mas voc pode avanar at o sistema lhe pedir a informao sobre o nome do administrador (root) e aps inform-la seu linux estar instalado (podem ocorrer pequenas variaes dependendo da verso utilizada). Para um guia mais completo mostramos nas prximas pginas uma explicao mais aprofundada sobre a instalao , inclusive da criao de parties: 40 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos INSTALANDO OU ATUALIZANDO
INSTALANDO Normalmente o Conectiva Linux instalado em um disco vazio, sobre outras instalaes de Linux ou uma partio disponvel em um equipamento com outro sistema operacional. Nota: instalar o Conectiva Linux sobre outras instalaes de Linux no preserva qualquer informao das instalaes prvias. Nestes casos indicado verificar a necessidade de salvar e guardar dados importantes. Caso se deseje executar uma instalao completa, escolha instalar. ATUALIZANDO O processo de instalao do Conectiva Linux inclui a habilidade de atualizao de verses anteriores do Red Hat Linux (2.0, 2.1,3.0.3, 4.0, 4.1, 4.2, 5.0, 5.1 e 5.2) e do Conectiva Linux Parolin e Marumbi, as quais so baseadas na tecnologia RPM. A atualizao instala no sistema o kernel mais atualizado, o qual modular, alm de atualizar as verses dos pacotes j instalados. O processo de atualizao preserva os arquivos de configurao utilizando a extenso .rpmsave (por exemplo sendmail.cf.rpmsave) e cria um arquivo de informaes com a descrio das aes efetuadas em /tmp/upgrade.log. Mudanas de formato de arquivos de configurao podem ocorrer, logo as comparaes entre novos e arquivos antigos devem ser feitos de maneira cuidadosa. Caso se deseje atualizar o Conectiva Linux, escolha Atualizao. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 41 Nota: observe que algumas atualizaes podem depender de outros programas que podem no estar instalados no seu sistema. O processo de atualizao cuida dessas dependncias, mas pode ser necessria a instalao daqueles programas para que a atualizao seja processada normalmente. CLASSES DE INSTALAO Aps a opo de atualizao ou instalao completa, o programa de instalao ir solicitar a opo de classe de instalao. Pode-se optar entre as seguintes classes de instalao.
Classes de Instalao
Estao de trabalho - uma instalao deste tipo ir automaticamente apagar todas as parties Linux do disco rgido instalado na mquina; Servidor - uma instalao deste tipo ir automaticamente apagar todas as parties do disco rgido instalado na mquina; Personalizada - uma classe de instalao que fornece total controle sobre temas relacionados com o particionamento. Caso se tenha instalado o Conectiva Linux anteriormente, esta classe de instalao ser muito similar disponvel em outras verses anteriores.
Nota: Caso se tenha escolhido Estao de Trabalho ou Servidor, parte ou a totalidade dos dados armazenados no computador podero ser apagados. Esta deciso dever ser confirmada, porm tenha em mente que aps o programa de instalao receber a confirmao, a remoo dos dados ser irreversvel. 42 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Caso se tenha optado por um dos mtodos Estao de Trabalho ou Servidor, pode-se ir diretamente para uma das seguintes sees, dependendo do mtodo de instalao selecionados: CDROM Instalao feita a partir do prprio cd-rom NFS A instalao ser[a feita via Network File System. Disco Rgido A instalao feita a partir do prprio hd. FTP Voc pode fazer download via ftp da instalao. SMB Instalao usando protocolo SMB. SUPORTE A SCSI Aps optar pela classe de instalao a ser utilizada, o processo de instalao verificar se h algum adaptador SCSI no sistema, e em alguns casos ir perguntar ao usurio sobre a existncia de tais dispositivos. Caso a opo seja SIM, ser apresentada uma lista dos programas de controles de dispositivos SCSI disponveis. Escolha o mais prximo do seu adaptador SCSI. O processo de instalao possibilitar a informao de opes e parmetros do programa de controle selecionado. A maioria dos drivers SCSI detecta o hardware automaticamente. CRIANDO AS PARTIES PARA O CONECTIVA LINUX Neste ponto, necessrio informar ao programa de instalao onde deve ser instalado o Conectiva Linux. Isto feito atravs da definio dos pontos de montagem definidos para uma ou mais parties nas quais o Conectiva Linux ser instalado. Pode-se ainda criar e/ou remover parties simultaneamente. Nota: No mnimo ser necessrio uma partio raiz de tamanho apropriado e uma rea de troca de no mnimo 16 Mb. O ideal usar o dobro de sua memria ram. O programa de instalao apresenta uma caixa de dilogo que permite optar por duas ferramentas de particionamento (veja na figura): Disk Druid - um utilitrio do Conectiva Linux de gerenciamento de disco durante a instalao. Ele pode criar e remover parties de acordo com os requisitos do usurio, alm de administrar os pontos de montagem para cada partio. fdisk - a tradicional ferramenta de particionamento do Linux. Embora seja mais flexvel que o Disk Druid, o fdisk supe que se tenha alguma experincia com parties. SELECIONANDO UM MTODO DE CONFIGURAO DE DISCO Com exceo de certas situaes atpicas, o Disk Druid pode manipular os requisitos de particionamento para uma instalao tpica do Conectiva Linux. Selecione a ferramenta de particionamento que se deseja utilizar, e tecle [Enter].
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 43 CAPTULO 8 USANDO O DISK DRUID Caso tenha sido selecionado o Disk Druid, ser apresentada a tela conforme a figura. Embora parea intimidador a princpio, na verdade ele bastante simples. Vamos repassar a seguir cada uma das sees do Disk Druid.
Tela Principal do Disk Druid SEO "PARTIES ATUAIS" Cada linha na seo Parties Atuais representa uma partio. Note que esta seo tem uma barra de rolagem direita, que significa que pode-se ter mais parties do que as exibidas em uma nica tela. Ao usar as teclas e , pode-se verificar a existncia de parties adicionais. Cada linha nesta seo tem cinco campos diferentes: Ponto de Montagem - Este campo indica onde a partio ser montada quando o Conectiva Linux estiver sendo executado. Dispositivo - Este campo exibe o nome do dispositivo das parties. Requisitado - O campo requisitado mostra o tamanho mnimo requerido quando a partio for definida. Real - O campo real mostra o espao atualmente atribudo partio. Tipo - Este campo mostra o tipo da partio.
Outro Tipo de Partio 44 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Ao rolar a tela na seo Parties Atuais, pode-se ver uma barra de ttulo Parties Solicitadas No Alocadas, seguido por uma ou mais parties. Como o ttulo explica, estas so parties que foram definidas, mas, por uma razo ou outra, no foram criadas com algum espao. Uma razo comum para ter uma partio no atribuda a falta de espao livre suficiente para a partio. SEO "RESUMO DO DISCO RGIDO" Cada linha na seo dos Sumrio dos Dispositivos representa um disco rgido no sistema. Cada linha tem o seguintes campos: Dispositivo - Este campo mostra o nome de dispositivo do disco rgido. Geom [C/H/S] - Este campo mostra a geometria do disco rgido. A geometria composta por trs nmeros que representam o nmero de cilindros, cabeas e setores do disco rgido. Total - O campo Total mostra o espao total disponvel no disco rgido. Usado - Este campo mostra quanto de espao do disco rgido atualmente est atribudo s parties. Livre - O campo Livre mostra quanto de espao do disco rgido ainda est livre. Barra - Este campo apresenta um representao visual do espao atualmente usado no disco rgido. Quanto mais sinais de libra so apresentados menos espao livre. Na Figura o grfico de barra mostra um disco sem espao livre.
Nota: a seo Resumo do Disco Rgido utilizada somente para indicar a configurao do disco do computador. Ela no foi desenvolvida para ser usada para especificar o disco rgido de uma determinada partio. Isso descrito mais detalhadamente na seo a seguir. BOTES DO DISK DRUID Estes botes controlam aes do Disk Druid. So usados para adicionar e remover parties e mudar seus atributos. Alm disso, h botes que so usados para aceitar ou descartar as mudanas realizadas ou sair do Disk Druid. Add - usado para criar uma nova partio. Quando selecionado, aparecer uma caixa de dilogo contendo os campos que devem ser preenchidos. [F2] Add NFS - usado para incluir um sistema de arquivos somente para leitura a partir de um servidor NFS. Quando selecionado, aparecer uma caixa de dilogo contendo os campos que devem ser preenchidos. Edit - usado para mudar atributos da partio atual, realado na seo Parties Atuais. Ao selecionar este boto, surgir uma caixa de dilogo. Alguns ou todos os campos da caixa de dilogo podem ser mudados, dependendo se a informao da partio j foi gravada no disco ou no. Delete - usado para remover a partio atualmente destacada na seo Parties Atuais. Quando selecionado, aparecer uma caixa de dilogo solicitando a confirmao da remoo da partio. Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 45 [F5] Reset - usado para descartar todas as alteraes feitas pelo Disk Druid, e retornar lista de parties, forando a leitura da tabela de parties residente no disco rgido. Quando selecionado, pede a confirmao. Note que qualquer ponto de montagem especificado ser perdido e precisar ser reinformado. Ok - provoca a gravao das mudanas. Ser solicitada a confirmao das mudanas antes da gravao. Qualquer ponto de montagem que tenha sido definido ser passado ao programa de instalao, e eventualmente ser usado pelo CL para definir o layout dos sistemas de arquivos. Cancelar - este boto aborta o Disk Druid sem salvar qualquer mudana feita. Quando este boto selecionado, o programa de instalao apresentar uma caixa de dilogo que permite escolher qual deciso deve ser tomada.
Nota: necessrio dedicar pelo menos uma partio ao Conectiva Linux e opcionalmente mais de uma. ADICIONADO UMA PARTIO Para adicionar uma nova partio, selecione o boto Adicionar e tecle [Espao] ou [Enter]. Surgir uma caixa de dilogo intitulada Edio de Nova Partio (veja na figura ). Ela contm os seguintes campos:
Criando Uma Nova Partio
Ponto de Montagem - este campo informa o ponto de montagem da partio. Por exemplo, se esta partio deve ser a partio raiz, digite /, digite /usr para a partio de usr e assim por diante. Tamanho (Mb) - este campo informa o tamanho (em megabytes) da partio. Note que este campo comea com "1", quer dizer que a menos que seja alterado ser criada uma partio com apenas 1 MB. 46 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Extensvel? - verifica se o tamanho digitado no campo anterior o tamanho exato da partio, ou seu tamanho mnimo. Tecle [Espao] para selecionar ou para cancelar a seleo. Quando selecionada, a partio poder crescer at preencher todo o espao disponvel no disco rgido. Neste caso, o tamanho da partio expandir e contrair medida que outras parties sejam modificadas. Tipo - este campo contm uma lista de diferentes tipos de partio. Selecione a partio usando as teclas e . Discos Possveis - este campo contm uma lista de discos rgidos instalados no sistema, com uma caixa de seleo para cada um. Se uma caixa de seleo no for ativada, ento esta partio nunca ser criada naquele disco rgido. Atravs do uso de diversas caixas de seleo, pode-se definir a localizao das parties ou deixar o Disk Druid decidir a sua melhor localizao. Ok - selecione este boto e tecle [Espao] quando tiver concludo e deseje efetivamente criar a partio. Cancelar - selecione este boto e tecle [Espao] quando no quiser criar a partio. PROBLEMAS DURANTE A ADIO DE PARTIES Se a tentativa de adicionar uma partio no puder ser executada, ser apresentada uma caixa de dilogo similar figura . Na caixa estaro listadas algumas parties que no estejam alocadas no momento, junto com a razo de sua no alocao. Selecione o boto de Ok, e tecle [Espao] para continuar. Note que a partio sem atributos tambm est exibida na tela principal do Disk Druid.
Aviso de Parties Sem Atributos Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 47 REMOVENDO UMA PARTIO Para apagar uma partio, realce a partio na seo Parties de Discos Atuais, selecione o boto Apague, e tecle [Espao]. Dever ser confirmada ou no a remoo. ALTERANDO A PARTIO Para alterar as configuraes da partio, realce a partio na seo Parties de Discos Atuais, selecione o boto Edite, e tecle [Espao]. Ser apresentado uma caixa de dilogo conforme a figura 18. Faa as alteraes apropriadas, selecione Ok e tecle [Espao]. Nota: Se j existe a partio no disco rgido, ser possvel somente alterar o ponto de montagem da partio. Para alterar outras caractersticas ser necessrio remover a partio e recri-la. 48 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos CAPTULO 9 ADICIONADO UM PONTO DE MONTAGEM NFS Para adicionar um sistema de arquivos com somente permisses para leitura de um servidor NFS, selecione o boto Adicionar NFS, e tecle [Espao], ou pressione [F2]. Caso no tenha sido selecionado um mtodo relacionado instalao via rede, vrias caixas de dilogo referentes configurao de rede sero apresentadas. Preencha-as apropriadamente. Ser apresentada uma caixa de dilogo intitulada Editar Ponto de Montagem de Rede. Nesta caixa de dilogo preciso digitar o nome do servidor NFS, o caminho do sistema de arquivos exportado e o ponto de montagem para o sistema de arquivos. Selecione o boto Ok ou Cancelar, conforme o desejado e tecle [Espao]. COMEANDO Caso se deseje abandonar qualquer alterao feita pelo Disk Druid, basta selecionar o boto Limpar, e teclar [Espao]. Voc dever confirmar esta ao. Caso se selecione SIM, o Disk Druid ler as tabelas de parties (se existir alguma) de cada disco rgido, e as exibir. Selecionando NO permite retornar tela principal do Disk Druid. CANCELANDO Caso prefira usar o fdisk, selecione Cancelar e tecle [Espao]. Pode-se ento selecionar fdisk da caixa de dilogo Configurao do Disco. FINALIZANDO... Uma vez terminada a configurao das parties e pontos de montagem, ser apresentada a tela conforme a figura . Selecione Ok e tecle [Espao]..
Parties e Pontos de Montagem Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 49 SELECIONANDO OS COMPONENTES DO SISTEMA Grupos de pacotes de componentes do sistema esto agrupados de acordo com as funes que o Conectiva Linux pode executar. Por exemplo Desenvolvimento em Linguagem C, Estao de Trabalho em Rede ou Servidor Web. Selecione cada componente que deseje instalar e pressione [Espao]. Selecionando Tudo instalar todos os pacotes disponveis no Conectiva Linux (figura ). Caso se deseje selecionar ou cancelar a seleo de pacotes individuais assim como de componentes do sistema, escolha Seleo Individual de Pacotes.
50 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos SELECIONANDO PACOTES INDIVIDUAIS Aps selecionar os componentes que se deseje instalar, possvel a seleo ou cancelamento individual de pacotes. O programa de instalao apresenta uma lista de grupos de pacotes disponveis. Selecione um grupo para examinar e pressione [Enter]. O processo de instalao apresenta uma lista de pacotes daquele grupo, que podem ser selecionados ou cuja seleo pode ser cancelada utilizando-se a tecla [Espaos]. Pode-se ainda ser visualizada uma descrio completa dos pacotes pressionando-se [F11] (veja na figura ). Quando a seleo estiver completa, basta pressionar Ok na caixa de dilogo Selecionando Grupo. Observe que alguns itens (tais como o kernel e certas bibliotecas) so necessrios para toda a instalao do Conectiva Linux, no podendo ser selecionados ou cancelados.
Selecionando Pacotes OBTENDO INFORMAES SOBRE UM PACOTE Pode-se obter uma descrio completa do pacote realado ao se pressionar [F1]. Uma caixa de dilogo aparecer contendo a descrio do pacote. Pode-se usar as setas de direo para paginar a descrio caso os dados no caibam em uma nica tela. Ao finalizar a leitura da descrio, pressione Ok e a caixa desaparecer, podendo prosseguir na seleo de pacotes e na visualizao das descries. Pode-se obter uma descrio completa do pacote realado ao se pressionar [F1]. Uma caixa de dilogo aparecer contendo a descrio do pacote. Pode-se usar as setas de direo para paginar a descrio caso os dados no caibam em uma nica tela. Ao finalizar a leitura da descrio, pressione Ok e a caixa desaparecer, podendo prosseguir na seleo de pacotes e na visualizao das descries.
Ftec Qualificao e Cursos Tcnicos ___________ Arquitetura de Computadores - 51 DEPENDNCIAS ENTRE PACOTES Muitos softwares, para funcionarem perfeitamente, dependem de outros softwares ou bibliotecas instalados no sistema. Por exemplo, muitas das ferramentas grficas de administrao do Conectiva Linux necessitam dos pacotes python e pythonlib. Para assegurar-se da existncia de todos os pacotes necessrios ao funcionamento do software, o Conectiva Linux verifica todas as dependncias a cada instalao ou desinstalao de um pacote. Aps concluir a seleo dos pacotes a instalar, o processo de instalao verificar a lista de softwares selecionados e suas dependncias. Caso tenha sido selecionado um software cuja dependncia no tenha sido selecionada, ser apresentada uma lista das dependncias no resolvidas, proporcionando a possibilidade de resolv-las (veja na figura ). Caso seja selecionado Ok, o programa resolver automaticamente as dependncias selecionando os pacotes necessrios da lista de softwares disponveis.
Resolvendo Dependncias INSTALAO DE PACOTE Aps resolver todas as dependncias, o programa de instalao inicia a instalao dos pacotes e cria um arquivo de mensagens informativas em /tmp/install.log com as mensagens de instalao do Conectiva Linux. Selecione Ok e tecle [Espao] para continuar. Neste ponto, o programa de instalao formatar cada partio que voc selecionar. Isto pode levar vrios minutos (e levar mais tempo se voc selecionar a verificao para blocos defeituosos). Em seguida, o programa de instalao comea a instalar os pacotes. Uma janela intitulada como Status da Instalao exibida com a seguinte informao: Pacote - O nome do pacote em instalao. Tamanho - O tamanho do pacote (em kbytes). 52 Arquitetura de Computadores _________ Ftec Qualificao e Cursos Tcnicos Resumo - Uma descrio sucinta do pacote. Barra de Progresso de Instalao do Pacote - Uma barra que mostra o progresso da instalao do pacote atual. Estatsticas - Esta seo possui trs linhas: Total, Completos e Restante. Como se pode supor, estas linhas contm as estatsticas do nmero total de pacotes que sero instalados, a estatstica do nmero de pacotes j instalados e a estatstica dos pacotes que ainda no foram instalados. A informao nestas trs filas inclui: Pacotes - O nmero de pacotes. Bytes - O tamanho. Tempo - O tempo gasto. Barra Progresso Total - esta barra muda a cor mostrando o andamento da instalao como um todo. Se voc estiver instalando via FTP, uma caixa de mensagem aparecer a cada pacote que for recuperado do site de FTP. Neste ponto no h nada que voc possa fazer at que todos os pacotes sejam instalados. O tempo necessrio depende do nmero de pacotes que voc selecionou e da velocidade do computador.