Logo Passei Direto
Buscar
Material
páginas com resultados encontrados.
páginas com resultados encontrados.
left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

left-side-bubbles-backgroundright-side-bubbles-background

Experimente o Premium!star struck emoji

Acesse conteúdos dessa e de diversas outras disciplinas.

Libere conteúdos
sem pagar

Ajude estudantes e ganhe conteúdos liberados!

Prévia do material em texto

<p>unidade</p><p>1</p><p>OPERACIONAIS</p><p>Sistemas</p><p>unidade</p><p>1</p><p>Introdução aos Sistemas Operacionais</p><p>e Contexto histórico</p><p>Prezado estudante,</p><p>Estamos começando uma unidade desta disciplina. Os textos que a compõem foram</p><p>organizados com cuidado e atenção, para que você tenha contato com um conteúdo</p><p>completo e atualizado tanto quanto possível. Leia com dedicação, realize as atividades e</p><p>tire suas dúvidas com os tutores. Dessa forma, você, com certeza, alcançará os objetivos</p><p>propostos para essa disciplina.</p><p>OBJETIVO GERAL</p><p>Entender como foi a evolução dos sistemas operacionais desde seu surgimento, as</p><p>características que marcaram cada geração e sua importância na popularização do</p><p>uso dos computadores.</p><p>OBJETIVOS ESPECÍFICOS</p><p>• Identificar os fatos históricos do surgimento dos sistemas operacionais.</p><p>• Apontar as características básicas dos sistemas operacionais e sua relação como</p><p>hardware a que está vinculado.</p><p>• Descrever como foi a evolução dos sistemas operacionais até os dias atuais.</p><p>• Diferenciar os principais módulos e placas do PC.</p><p>• Reconhecer o processo de montagem dos principais módulos do PC.</p><p>• Definir placa-mãe, processadores, ponte norte/sul, BIOS.</p><p>• Identificar drivers, programas e tipos de sistemas operacionais.</p><p>• Reconhecer corretamente o multímetro e seu uso em fonte de alimentação.</p><p>• Definir tensão, corrente e resistência.</p><p>• Definir os principais conceitos de sistema operacional.</p><p>• Explicar o funcionamento de um sistema operacional.</p><p>• Comparar a operação de um sistema operacional com os demais software.</p><p>unidade</p><p>1</p><p>O conteúdo deste livro é</p><p>disponibilizado por SAGAH.</p><p>Parte 1</p><p>História dos Sistemas</p><p>Operacionais</p><p>SISTEMAS OPERACIONAIS12</p><p>CAPÍTULO 1 • INTRODUÇÃO 25</p><p>nada à impressora. Quando um programa tiver terminado, o sistema operacional envia para</p><p>a impressora a sua saída armazenada no arquivo em disco, enquanto, ao mesmo tempo, um</p><p>outro programa poderá continuar gerando mais saída, ignorando o fato de que ela não está</p><p>realmente indo para a impressora (ainda).</p><p>Quando um computador (ou uma rede) tem vários usuários, a necessidade de gerenciar</p><p>e proteger a memória, dispositivos de E/S e outros recursos é ainda maior, pois os usuá-</p><p>rios poderiam interferir uns com os outros. Além disso, os usuários freqüentemente precisam</p><p>compartilhar não apenas o hardware, mas também informações (arquivos, bancos de dados</p><p>etc.). Em resumo, essa visão do sistema operacional sustenta que sua principal tarefa é con-</p><p>trolar quem está usando qual recurso, garantir os pedidos de recursos, medir a utilização e</p><p>mediar pedidos confl itantes de diferentes programas e usuários.</p><p>O gerenciamento de recursos inclui a multiplexação (compartilhamento) de recursos de</p><p>duas maneiras: no tempo e no espaço. Quando um recurso é multiplexado no tempo, diferen-</p><p>tes programas ou usuários o utilizam por turnos: primeiro um deles utiliza o recurso, depois</p><p>outro e assim por diante. Por exemplo, com apenas uma CPU e vários programas que queiram</p><p>ser executados nela, o sistema operacional primeiramente aloca a CPU para um programa</p><p>e, depois, após o programa ter executado o sufi ciente, outro programa utiliza a CPU, depois</p><p>outro e, fi nalmente, o primeiro programa novamente. Determinar como o recurso é multiple-</p><p>xado no tempo – quem vem em seguida e por quanto tempo – é tarefa do sistema operacional.</p><p>Outro exemplo de multiplexação no tempo é o compartilhamento da impressora. Quando</p><p>várias tarefas de impressão são enfi leiradas em uma única impressora, uma decisão precisa</p><p>ser tomada com relação a qual das tarefas deve ser impressa a seguir.</p><p>O outro tipo de multiplexação é a no espaço. Em vez dos clientes atuarem por turnos,</p><p>cada um deles recebe parte do recurso. Por exemplo, normalmente, a memória principal</p><p>é dividida entre vários programas que estejam em execução para que cada um possa estar</p><p>residente ao mesmo tempo (por exemplo, para utilizar a CPU por turnos). Supondo que haja</p><p>memória sufi ciente para conter múltiplos programas, é mais efi ciente manter vários progra-</p><p>mas na memória de uma vez do que alocar toda ela para um único programa, especialmente</p><p>se ele precisar apenas de uma pequena fração do total. É claro que isso levanta problemas</p><p>de imparcialidade, proteção etc., e fi ca por conta do sistema operacional resolvê-los. Outro</p><p>recurso multiplexado no espaço é o disco (rígido). Em muitos sistemas, um único disco pode</p><p>conter arquivos de muitos usuários ao mesmo tempo. Alocar espaço em disco e controlar</p><p>quem está usando quais blocos de disco é uma típica tarefa de gerenciamento de recursos do</p><p>sistema operacional.</p><p>1.2 HISTÓRIA DOS SISTEMAS OPERACIONAIS</p><p>Os sistemas operacionais vêm evoluindo ao longo dos anos. Nas seções a seguir, veremos re-</p><p>sumidamente alguns dos destaques. Como, historicamente, os sistemas operacionais têm sido</p><p>intimamente ligados à arquitetura dos computadores em que são executados, examinaremos</p><p>as sucessivas gerações de computadores para vermos como eram seus sistemas operacionais.</p><p>Esse mapeamento das gerações de sistema operacional para gerações de computador é gros-</p><p>seiro, mas oferece uma base que de outra forma não teríamos.</p><p>O primeiro computador digital foi projetado pelo matemático inglês Charles Babbage</p><p>(1792–1871). Embora Babbage tenha gasto a maior parte de sua vida e de sua fortuna tentan-</p><p>do construir sua “máquina analítica”, nunca conseguiu fazê-la funcionar corretamente, pois</p><p>ela era puramente mecânica e a tecnologia de seu tempo não podia produzir as rodas e en-</p><p>grenagens exigidas com a alta precisão que necessitava. É desnecessário dizer que a máquina</p><p>analítica não tinha sistema operacional.</p><p>13 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>História dos Sistemas Operacionais PARTE 1</p><p>26 SISTEMAS OPERACIONAIS</p><p>Como um dado histórico interessante, Babbage percebeu que precisaria de software</p><p>para sua máquina analítica; assim, contratou como a primeira programadora do mundo, uma</p><p>jovem chamada Ada Lovelace, que era fi lha do famoso poeta britânico Lord Byron. A lingua-</p><p>gem de programação Ada® recebeu esse nome em sua homenagem.</p><p>1.2.1 A primeira geração (1945–1955): válvulas e painéis de conectores</p><p>Depois dos esforços mal-sucedidos de Babbage, pouco progresso foi feito na construção</p><p>de computadores digitais até a II Guerra Mundial. Em meados da década de 40, Howard</p><p>Aiken, da Universidade de Harvard, John von Neumann, do Instituto de Estudos Avan-</p><p>çados de Princeton, J. Presper Eckert e John Mauchley, da Universidade da Pensilvânia,</p><p>e Konrad Zuse, na Alemanha, entre outros, tiveram êxito na construção de máquinas de</p><p>calcular. As primeiras delas usavam relés mecânicos, mas eram muito lentas, com tempos</p><p>de ciclo medidos em segundos. Posteriormente, os relés foram substituídos por válvulas a</p><p>vácuo. Essas máquinas eram enormes, ocupavam salas inteiras com dezenas de milhares</p><p>de válvulas, mas ainda eram milhões de vezes mais lentas do que os computadores pes-</p><p>soais mais baratos de hoje.</p><p>Naqueles tempos, um único grupo de pessoas projetava, construía, programava, opera-</p><p>va e mantinha cada máquina. Toda a programação era feita em linguagem de máquina pura,</p><p>freqüentemente interligando fi os através de painéis de conectores para controlar as funções</p><p>básicas da máquina. As linguagens de programação não existiam (nem mesmo a linguagem</p><p>assembly). Ninguém tinha ouvido falar de sistemas operacionais. O modo de operação normal</p><p>era o programador reservar um período de tempo em uma folha de reserva afi xada na parede,</p><p>depois descer à sala da máquina, inserir seu painel de conectores no computador e passar as</p><p>próximas horas esperando que nenhuma das quase 20.000 válvulas queimasse durante a exe-</p><p>cução. Praticamente todos os problemas resolvidos eram cálculos numéricos simples, como a</p><p>geração de tabelas de senos, co-senos e logaritmos.</p><p>No início da década de 50, a</p><p>diversos destes programas insta-</p><p>lados em celulares, a qual chamamos de aplicativos.</p><p>Estes programas servem para determinado fim, como por exemplo: Mi-</p><p>crosoft Word, que serve para editar documentos de textos, o Paint, que serve</p><p>para editar imagens bitmap, e a Calculadora, que realiza cálculos.</p><p>Tipos de sistemas operacionais</p><p>Cabe ao sistema operacional definir políticas para gerenciar o uso dos re-</p><p>cursos de hardware pelos aplicativos, e resolver eventuais disputas e conflitos.</p><p>Cada computador possui normalmente um só processador. O uso do pro-</p><p>cessador deve ser distribuído entre os programas presentes no sistema, de</p><p>forma que cada um deles possa executar na velocidade adequada para cumprir</p><p>suas funções sem prejudicar os outros. Também a memória RAM, que deve</p><p>ser distribuída de forma justa entre as aplicações.</p><p>Gerenciar as impressões em computadores em rede, por exemplo, é uma</p><p>tarefa necessária, que o sistema operacional faz</p><p>Então, um sistema operacional visa abstrair o acesso e gerenciar os re-</p><p>cursos de hardware, provendo aos aplicativos um ambiente de execução abs-</p><p>trato, no qual o acesso aos recursos se faz através de interfaces simples, inde-</p><p>pendentes das características e detalhes de baixo nível, e no qual os conflitos</p><p>no uso do hardware são minimizados.</p><p>Os sistemas operacionais podem ser classificados segundo diversos parâ-</p><p>metros e perspectivas, como tamanho, velocidade, suporte a recursos especí-</p><p>ficos, acesso à rede, etc.</p><p>SISTEMAS OPERACIONAIS50</p><p>A seguir são apresentados alguns tipos de sistemas operacionais usuais:</p><p>Batch (de lote): os sistemas operacionais mais antigos trabalhavam “por</p><p>lote”, ou seja, todos os programas a executar eram colocados em uma fila, com</p><p>seus dados e demais informações para a execução. O processador recebia um</p><p>programa após o outro, processando-os em seqüência, o que permitia um alto</p><p>grau de utilização do sistema. Exemplos desses sistemas incluem o OS/360 e</p><p>VMS, entre outros.</p><p>De rede: um sistema operacional de rede deve possuir suporte à operação</p><p>em rede, ou seja, a capacidade de oferecer às aplicações locais recursos que</p><p>estejam localizados em outros computadores da rede, como arquivos e im-</p><p>pressoras. Ele também deve disponibilizar seus recursos locais aos demais</p><p>computadores, de forma controlada. A maioria dos sistemas operacionais</p><p>atuais oferece esse tipo de funcionalidade.</p><p>Distribuído: em um sistema operacional distribuído, os recursos de cada</p><p>máquina estão disponíveis globalmente, de forma transparente aos usuários.</p><p>Ao lançar uma aplicação, o usuário interage com sua janela, mas não sabe</p><p>onde ela está executando ou armazenando seus arquivos: o sistema é quem de-</p><p>cide, de forma transparente. Os sistemas operacionais distribuídos já existem</p><p>há algum tempo, mas ainda não são uma realidade de mercado.</p><p>Multi-usuário: um sistema operacional multi-usuário deve suportar a</p><p>identificação do proprietário de cada recurso dentro do sistema (arquivos,</p><p>processos, áreas de memória, conexões de rede) e impor regras de controle de</p><p>acesso para impedir o uso desses recursos por usuários não autorizados. Essa</p><p>funcionalidade é fundamental para a segurança dos sistemas operacionais de</p><p>rede e distribuídos. Grande parte dos sistemas atuais são multi-usuários.</p><p>Desktop: um sistema operacional “de mesa” é voltado ao atendimento do</p><p>usuário doméstico e corporativo para a realização de atividades corriqueiras,</p><p>como edição de textos e gráficos, navegação na Internet e reprodução de mí-</p><p>dias simples. Suas principais características são a interface gráfica, o suporte</p><p>à interatividade e a operação em rede. Exemplos de sistemas desktop são o</p><p>Windows 7, MacOS X e Linux.</p><p>Servidor: um sistema operacional servidor deve permitir a gestão efi-</p><p>ciente de grandes quantidades de recursos (disco, memória, processadores),</p><p>impondo prioridades e limites sobre o uso dos recursos pelos usuários e seus</p><p>aplicativos. Normalmente um sistema operacional servidor também tem su-</p><p>porte a rede e multi-usuários.</p><p>Embutido: um sistema operacional é dito embutido (embedded) quando</p><p>é construído para operar sobre um hardware com poucos recursos de proces-</p><p>51 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Componentes de Hardware e Software do PC PARTE 3</p><p>samento, armazenamento e energia. Aplicações típicas desse tipo de sistema</p><p>aparecem em telefones celulares (não smartphones), controladores industriais</p><p>e automotivos, equipamentos eletrônicos de uso doméstico (leitores de DVD,</p><p>eletrônicos, etc.). Muitas vezes um sistema operacional embutido se apre-</p><p>senta na forma de uma biblioteca a ser ligada ao programa da aplicação (que</p><p>é fixa). Exemplos de sistemas operacionais embutidos são o Xylinx, LynxOS</p><p>e VxWorks.</p><p>Tempo real: ao contrário da concepção usual, um sistema operacional de</p><p>tempo real não precisa ser necessariamente ultra-rápido; sua característica</p><p>essencial é ter um comportamento temporal previsível (ou seja, seu tempo</p><p>de resposta deve ser conhecido no melhor e pior caso de operação). A estru-</p><p>tura interna de um sistema operacional de tempo real deve ser construída de</p><p>forma a minimizar esperas e latências imprevisíveis, como tempos de acesso</p><p>a disco e sincronizações excessivas. Existem duas classificações de sistemas</p><p>de tempo real: soft real-time systems, nos quais a perda de prazos implica na</p><p>degradação do serviço prestado. Um exemplo seria o suporte à gravação de</p><p>CDs ou à reprodução de músicas. Caso o sistema se atrase, pode ocorrer a</p><p>perda da mídia em gravação ou falhas na música que está sendo tocada. Por</p><p>outro lado, nos hard real-time systems a perda de prazos pelo sistema pode</p><p>perturbar o objeto controlado, com graves conseqüências humanas, econô-</p><p>micas ou ambientais. Exemplos desse tipo de sistema seriam o controle de</p><p>funcionamento de caldeira industrial. Exemplos de sistemas de tempo real</p><p>incluem o QNX, RT-Linux e VxWorks. Muitos sistemas embutidos têm carac-</p><p>terísticas de tempo real, e vice-versa.</p><p>Multímetro</p><p>O multitester ou multímetro é o aparelho usado para medir corrente elétrica</p><p>(DCmA) ou (DCA), tensão contínua (DCV), tensão alternada (ACV) e re-</p><p>sistência elétrica (Ω). A função do multitester pode ser escolhida através da</p><p>chave seletora localizada abaixo do painel. Existem dois tipos de multitester:</p><p>o analógico (de ponteiro) e o digital (de visor de cristal líquido). Cada um tem</p><p>sua vantagem: o analógico é melhor para testar a maioria dos componentes</p><p>enquanto o digital é melhor para medir tensões e testar resistores, como é o</p><p>caso do computador.</p><p>SISTEMAS OPERACIONAIS52</p><p>Teste de corrente contínua – Fonte de</p><p>Alimentação</p><p>Para testar uma fonte usando o multímetro, colocamos a haste preta em</p><p>“COM” e conectamos a haste vermelha em “volts”. Posicionamos o seletor do</p><p>multímetro em DCV (corrente contínua) 20V, afinal a fonte não passa de 12V.</p><p>Fonte: Shutterstock.</p><p>Medindo tensão de Fonte ATX</p><p>As fontes ATX possuem um circuito que faz com que ela seja ligada e desli-</p><p>gada pela placa-mãe, ao invés de usar uma chave liga-desliga, como as antigas</p><p>fontes AT. O conector de uma fonte ATX possui 20 ou 24 fios (BTX), sendo</p><p>que o fio verde é o responsável por ligar a fonte.</p><p>Quando é fechado um circuito entre o fio verde e qualquer fio preto ao</p><p>lado, a fonte liga e, quando o circuito é aberto, ela desliga automaticamente.</p><p>Utilizando um pedaço de fio com as duas pontas descascadas (dobrado em</p><p>U) pode-se fechar um circuito entre o fio verde e o fio preto ao lado.</p><p>53 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Componentes de Hardware e Software do PC PARTE 3</p><p>Todos os fios da mesma cor são ligados em paralelo, por isso não existe</p><p>necessidade de testar cada um dos vermelhos, depois cada um</p><p>dos amarelos,</p><p>etc. basta testar um de cada. Os fios vermelhos fornecem 5V, os amarelos</p><p>fornecem 12V e os laranjas são os responsáveis pela tensão de 3.3V. Os fios</p><p>pretos são todos neutros, usados para fechar circuitos com os demais.</p><p>Para medir a tensão de cada uma das saídas, você conecta o pólo negativo</p><p>(preto) do multímetro a um dos fios pretos e conecta o pólo positivo (ver-</p><p>melho) a fios de cada uma das três cores. É utilizado estes mesmos processos</p><p>para os conectores molex.</p><p>Conector Molex</p><p>Fonte: Elaborado pelo autor.</p><p>SISTEMAS OPERACIONAIS54</p><p>Fonte de Alimentação ATX (20 pinos)</p><p>Pino Cor Saída Tolerância 5%</p><p>1 Laranja +3,3V 3,14V a 3,47V</p><p>2 Laranja +3,3V 3,14V a 3,47V</p><p>3 Preto Terra -</p><p>4 Vermelho +5V 5,25V a 4,75V</p><p>5 Preto Terra -</p><p>6 Vermelho +5V 5,25V a 4,75V</p><p>7 Preto Terra -</p><p>8 Cinza Power Good = 5V</p><p>9 Roxo +5VSB 4,75V a 5,25V</p><p>10 Amarelo +12V 11,4V a 12,6V</p><p>11 Laranja +3,3V 3,14V a 3,47V</p><p>12 Azul -12V -12,6V a -11,4V</p><p>13 Preto Terra -</p><p>14 Verde Power On -</p><p>15 Preto Terra -</p><p>16 Preto Terra -</p><p>17 Preto Terra -</p><p>18 Branco -5V -5,25V a -4,75V</p><p>19 Vermelho +5V 5,25V a 4,75V</p><p>20 Vermelho +5V 5,25V a 4,75V</p><p>Tabela 1: Tensões e cores dos fios da Fonte ATX e BTX</p><p>55 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Componentes de Hardware e Software do PC PARTE 3</p><p>Pino Cor Saída Tolerância 5%</p><p>Fonte de alimentação ATX\BTX(24 pinos): utiliza-se a tabela do modelo</p><p>ATX + o complemento da tabela</p><p>21 Vermelho +5V 5,25V a 4,75V</p><p>22 Vermelho +5V 5,25V a 4,75V</p><p>23 Vermelho +5V 5,25V a 4,75V</p><p>24 Preto Terra -</p><p>Tensão elétrica</p><p>Podemos definir a tensão elétrica em um circuito como sendo a diferença de</p><p>potencial entre dois pólos distintos. Em todo circuito elétrico é necessário à</p><p>existência de uma fonte de tensão (ou fonte decorrente em alguns casos, como</p><p>veremos mais adiante) para fornecer energia ao circuito.</p><p>No Sistema Internacional, a tensão elétrica, cujo símbolo é a letra U, é</p><p>medido em volts(V).</p><p>A notação dessa grandeza deve ser feita da seguinte maneira:</p><p>U = 280 V</p><p>Onde:</p><p>U - é a grandeza tensão</p><p>280 - é o seu valor numérico</p><p>V - é a unidade em que o valor foi medido (volts)</p><p>Tensão alternada e contínua</p><p>Tensão alternada: É aquela que varia no tempo, ou seja, é o tipo de tensão</p><p>que descreve uma função que varia de valor com o passar do tempo. A mais</p><p>comum das tensões alternadas é a tensão senoidal, que assume uma infini-</p><p>dade de valores no decorrer do tempo. É importante notar que uma tensão</p><p>alternada oscila em uma determinada freqüência.</p><p>SISTEMAS OPERACIONAIS56</p><p>Tensão contínua: Pode ser definida como a tensão que descreve uma cons-</p><p>tante, ou seja, seu valor não varia ao longo do tempo. Notar, portanto, que uma</p><p>tensão contínua não “tem” freqüência.</p><p>Corrente elétrica</p><p>Podemos definir uma corrente elétrica como sendo o fluxo ordenado de elé-</p><p>trons por um meio condutor. De fato, ao submetermos um material condutor</p><p>a uma diferença de potencial, os elétrons fluirão do ponto de maior concen-</p><p>tração de elétrons para o ponto de menor concentração com sentido ordenado.</p><p>O deslocamento dos elétrons pelo circuito recebe o nome de fluxo (que é</p><p>de fato a corrente). Esse fluxo pode ser chamado de fluxo convencional ou</p><p>fluxo eletrônico.</p><p>A diferença entre fluxo convencional e eletrônico pode ser ilustrado com</p><p>a figura abaixo:</p><p>Medição de tensão contínua e alternada com o</p><p>multímetro</p><p>Quando utilizamos um multímetro para medições de tensão em cc, o valor</p><p>obtido será sempre o valor médio da tensão, ou seja, um multímetro em escala</p><p>de tensão cc mede valores médios.</p><p>Quando utilizarmos um multímetro para medições de tensão ac, o valor</p><p>obtido será sempre o valor eficaz de tensão, ou seja, um multímetro em escala</p><p>de tensão ac mede valores em rms.</p><p>Na prática isso significa que se medirmos com um multímetro um valor de</p><p>tensão cc e um valor de tensão ac iguais, ambas as tensões produzirão sobre</p><p>um mesmo resistor a mesma dissipação de potência.</p><p>57 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Componentes de Hardware e Software do PC PARTE 3</p><p>Resistência elétrica</p><p>Podemos definir resistência elétrica como sendo um obstáculo à passagem</p><p>da corrente elétrica oferecido por um circuito. Em todo circuito elétrico existe</p><p>uma resistência elétrica qualquer que dificulta a passagem da corrente. Até</p><p>mesmo um condutor de cobre possui sua resistência à corrente. A resistência</p><p>elétrica, cujo símbolo é a letra R, é medida em Ohm (Ω).</p><p>A notação dessa grandeza deve ser feita da seguinte maneira:</p><p>R = 100 Ω</p><p>Onde:</p><p>R - é a grandeza resistência</p><p>100 - é o seu valor numérico</p><p>Ω - é a unidade em que o valor foi medido (Ohm)</p><p>Tanenbaum, Andrew S. Sistemas operacionais modernos. São Paulo:</p><p>Pearson Prentice Hall, 3ª Edição, 2009.</p><p>TANENBAUM, Aeron M. Estruturas de dados usando C. 2a ed. São Paulo .Makron</p><p>Books, 2003</p><p>STUART, Brian L. Princípios de Sistemas Operacionais – Projetos e Aplicações. Cen-</p><p>gage Learning , 2011</p><p>MAZIERO, PhD Carlos Alberto. Sistemas Operacionais I – Conceitos Básicos. Curiti-</p><p>ba, 2008 Link: http://www.ppgia.pucpr.br/~maziero/lib/exe/fetch.php/so:so-cap01.pdf</p><p>acessado em: 21/03/2017.</p><p>Referência</p><p>SISTEMAS OPERACIONAIS58</p><p>ENCERRA AQUI O TRECHO DO LIVRO DISPONIBILIZADO</p><p>PELA SAGAH PARA ESTA PARTE DA UNIDADE.</p><p>PREZADO ESTUDANTE</p><p>unidade</p><p>1</p><p>O conteúdo deste livro é</p><p>disponibilizado por SAGAH.</p><p>Parte 4</p><p>Conceitos de Sistema</p><p>Operacional</p><p>SISTEMAS OPERACIONAIS60</p><p>Conceitos de sistema</p><p>operacional</p><p>Objetivos de aprendizagem</p><p>Ao final deste texto, você deve apresentar os seguintes aprendizados:</p><p>� Definir os principais conceitos de sistema operacional.</p><p>� Explicar o funcionamento de um sistema operacional.</p><p>� Comparar a operação de um sistema operacional com os demais</p><p>softwares.</p><p>Introdução</p><p>Provavelmente, você deve ter utilizado, hoje mesmo, algum dispositivo</p><p>como um celular, um laptop ou um computador para executar algum</p><p>programa. Por exemplo, se você acessou um site de notícias ou uma</p><p>rede social, deve ter utilizado um navegador (ou browser), ou seja, você</p><p>executou um programa. Um programa em execução faz uma coisa muito</p><p>simples: executa instruções. Essas instruções são executadas milhões,</p><p>bilhões de vezes a cada segundo. Para isso, o processador busca uma</p><p>instrução da memória, decodifica essa instrução e a executa — isto é, faz</p><p>aquilo que é descrito por ela, como adicionar dois números juntos, acessar</p><p>a memória, verificar uma condição, saltar para uma função, entre outros.</p><p>Depois que isso é feito, o processador passa para a próxima instrução, e</p><p>assim por diante, até que o programa, finalmente, seja concluído.</p><p>Existe um conjunto de softwares que é responsável por facilitar a</p><p>execução de programas, permitindo que os programas compartilhem</p><p>memória, interajam com os dispositivos e outros programas. Esse conjunto</p><p>de softwares é chamado de sistema operacional (SO) e é responsável por</p><p>garantir que o sistema funcione de maneira correta e eficiente, sem que o</p><p>usuário precise preocupar-se com detalhes de execução. Neste capítulo,</p><p>você aprenderá sobre os principais conceitos e o funcionamento de um</p><p>sistema operacional, comparando-o com os demais softwares.</p><p>61 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Conceitos de Sistema Operacional PARTE 4</p><p>Principais conceitos de sistemas operacionais</p><p>Um sistema computacional pode ser dividido em quatro componentes: o</p><p>hardware, o sistema operacional, os programas aplicativos e o usuário (TA-</p><p>NENBAUM, 2014). O hardware — a unidade central de processamento</p><p>(CPU), a memória e os dispositivos de entrada/saída (E/S) — fornece</p><p>os</p><p>recursos básicos de computação para sistema. Os programas aplicativos,</p><p>como processadores de texto, planilhas, compiladores e navegadores da web,</p><p>definem as maneiras pelas quais esses recursos são usados para resolver</p><p>problemas de computação dos usuários. O sistema operacional, por sua vez,</p><p>controla o hardware e coordena seu uso entre os vários programas aplicativos</p><p>para os usuários.</p><p>Também podemos ver um sistema de computador como um conjunto de</p><p>hardware, software e dados. O sistema operacional fornece os meios para o uso</p><p>adequado desses recursos no funcionamento do sistema informático. Assim, é</p><p>possível pensar no sistema operacional como um governo ou corporação: ele</p><p>não desempenha nenhuma função fim por si próprio para o usuário, simples-</p><p>mente fornece um ambiente dentro do qual outros programas podem fazer o</p><p>trabalho que entrega valor ao usuário final. Para entender melhor o papel do</p><p>sistema operacional, vamos explorar sistemas operacionais de dois pontos de</p><p>vista: o do usuário e o do sistema (ARPACI-DUSSEAU; ARPACI-DUSSEAU,</p><p>2014; TANENBAUM, 2014).</p><p>Com isso, você provavelmente pode constatar que o sistema operacional</p><p>tem muitos papeis e funções. Isso se deve, pelo menos em parte, em função</p><p>da grande quantidade de projetos e usos de computadores atualmente. Com-</p><p>putadores estão presentes dentro de torradeiras, carros, navios, espaçonaves,</p><p>casas e empresas. Eles são a base para máquinas de jogos, sintonizadores de</p><p>TV a cabo e sistemas de controle industrial (TANENBAUM, 2014).</p><p>Para explicar essa diversidade, podemos voltar-nos para a história dos com-</p><p>putadores. Apesar de essas máquinas terem uma história relativamente curta,</p><p>elas evoluíram rapidamente. A computação começou como uma experiência</p><p>para determinar o que poderia ser feito e, rapidamente, mudou para sistemas</p><p>de propósito fixo para usos militares, como quebra de código e plotagem de</p><p>trajetória, e usos governamentais, como o cálculo do censo.</p><p>Então, os primeiros computadores evoluíram para mainframes multifun-</p><p>cionais de uso geral, e aí os sistemas operacionais nasceram. Na década de</p><p>1960, a Lei de Moore previu que o número de transistores em um circuito</p><p>integrado dobraria a cada 18 meses, e essa previsão se manteve verdadeira.</p><p>Logo, os computadores tiveram um grande aumento de funcionalidades e o seu</p><p>Conceitos de sistema operacional2</p><p>SISTEMAS OPERACIONAIS62</p><p>tamanho de forma geral encolheu, permitindo um vasto número de utilizações</p><p>e de sistemas operacionais (TANENBAUM, 2014).</p><p>Os sistemas operacionais foram criados, então, para oferecer uma maneira</p><p>razoável de resolver o problema de criar um sistema de computação utilizável,</p><p>com o objetivo fundamental de executar programas e facilitar a solução de</p><p>problemas do usuário.</p><p>A Lei de Moore é a observação de que o número de transistores em um denso circuito</p><p>integrado dobra a cada dois anos. A observação tem o nome de Gordon Moore,</p><p>cofundador da Fairchild Semiconductor e Intel e cujo trabalho de 1965 descrevia uma</p><p>duplicação a cada ano no número de componentes por circuito integrado. Moore</p><p>projetou que essa taxa de crescimento continuaria por, pelo menos, mais um ano. Em</p><p>1975, ansioso pela próxima década, ele revisou a previsão de dobrar a cada dois anos.</p><p>O próprio hardware de um computador é construído para esse objetivo.</p><p>No entanto, ter apenas um hardware, vazio, sozinho, não é particularmente</p><p>a forma mais fácil de se executar programas computacionais. Esses pro-</p><p>gramas exigem certas operações comuns, como aquelas que controlam os</p><p>dispositivos de E/S de um computador. Logo, essas funções comuns de</p><p>controlar e alocar recursos são encapsuladas em um pedaço de software:</p><p>o sistema operacional.</p><p>O sistema operacional pode ser definido como o único programa em exe-</p><p>cução em todos os momentos no computador — geralmente, é chamado de</p><p>kernel. Junto ao kernel, existem dois outros tipos de programas: programas</p><p>do sistema ou system programs, que estão associados ao sistema operacional,</p><p>mas não necessariamente fazem parte do kernel; e programas aplicativos,</p><p>que incluem todos os programas não associados à operação do sistema.</p><p>Hoje, no entanto, se olharmos para sistemas operacionais de disposi-</p><p>tivos móveis, podemos ver que, mais uma vez, o número de recursos que</p><p>constituem o sistema operacional está aumentando. Sistemas operacionais</p><p>de dispositivos móveis, geralmente, incluem não apenas um núcleo, mas</p><p>também middleware — um conjunto de estruturas de software que forne-</p><p>cem serviços para desenvolvedores de aplicativos (ARPACI-DUSSEAU;</p><p>ARPACI-DUSSEAU, 2014).</p><p>3Conceitos de sistema operacional</p><p>63 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Conceitos de Sistema Operacional PARTE 4</p><p>Logo, podemos notar que, ao longo dos anos, a evolução do hardware e</p><p>a forma com a qual os computadores têm sido entregues aos usuários finais,</p><p>seja desktop, laptops ou dispositivos móveis, também tem influenciado na</p><p>forma com que os sistemas operacionais são construídos. Com o passar do</p><p>tempo, os sistemas operacionais foram aperfeiçoados para fazer melhor ge-</p><p>rência de memória e discos, mais opções de segurança foram adicionadas,</p><p>usabilidade e estilos foram melhorados. Além disso, a grande quantidade de</p><p>sistemas operacionais disponíveis atualmente, sejam pagos ou gratuitos, de</p><p>código aberto ou fechado, permite que o usuário encontre aquele que melhor</p><p>se encaixa em suas necessidades.</p><p>Funcionamento de um sistema operacional</p><p>Agora que você sabe o que é um sistema operacional e aprendeu sobre sua evo-</p><p>lução ao longo dos anos, pode-se aprofundar um pouco mais no funcionamento</p><p>e nas principais partes de um sistema. De forma geral, podemos considerar uma</p><p>camada de aplicações que fazem a comunicação bidirecional com o sistema</p><p>operacional ou kernel (SILBERSCHATZ; GAGNE; GALVIN, 2018). Já o</p><p>sistema operacional, ao realizar essa comunicação com as aplicações, atende</p><p>às necessidades de controlar e executar operações nas camadas de hardware.</p><p>Logo, o sistema operacional realiza a comunicação com a memória, alocando</p><p>e desalocando espaços para que as aplicações possam inserir ou remover</p><p>informações. Além disso, o sistema operacional controla a CPU e os outros</p><p>dispositivos, realizando operações neles e abstraíndo complexidades que,</p><p>caso não existissem, seriam de responsabilidade das aplicações (Figura 1)</p><p>(TANENBAUM, 2014).</p><p>Conceitos de sistema operacional4</p><p>SISTEMAS OPERACIONAIS64</p><p>Figura 1. Estrutura de um sistema computacional e as operações de um sistema operacional.</p><p>É de responsabilidade do sistema operacional realizar diversas funções,</p><p>sendo elas:</p><p>� Gerenciamento dos processos: um processo é a unidade de execução</p><p>em um sistema. Um sistema consiste em um conjunto de processos,</p><p>alguns dos quais são processos do sistema operacional (aqueles que</p><p>executam o código do sistema) e o restante são os processos do usu-</p><p>ário (voltados para a interface com o usuário). Todos esses processos</p><p>podem ser executados simultaneamente — a partir da multiplexação</p><p>em um único núcleo de CPU — ou em paralelo, em vários núcleos de</p><p>CPU (ARPACI-DUSSEAU; ARPACI-DUSSEAU, 2014). O sistema</p><p>operacional é responsável pelas seguintes atividades na conexão com</p><p>o gerenciamento de processos:</p><p>■ criar e excluir processos do usuário e do sistema;</p><p>■ agendar processos e threads na CPU;</p><p>■ suspender e retomar processos;</p><p>■ fornecer mecanismos para sincronização de processos;</p><p>■ fornecer mecanismos para comunicação de processo.</p><p>� Gerenciamento de memória: para melhorar a utilização da CPU, a ve-</p><p>locidade do computador e a sua resposta aos usuários, os computadores</p><p>5Conceitos de sistema operacional</p><p>65 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Conceitos de Sistema Operacional PARTE 4</p><p>de uso geral devem manter vários programas na memória, criando uma</p><p>necessidade de gerenciamento de memória. Muitas técnicas diferentes</p><p>de gerenciamento de memória são usadas para esse fim. Essas técnicas</p><p>refletem várias abordagens, e a eficácia de qualquer algoritmo depende da</p><p>situação. Ao selecionar um esquema de gerenciamento de memória para</p><p>um sistema específico, devemos levar em conta muitos fatores — especial-</p><p>mente o design de hardware do sistema. Cada algoritmo requer seu próprio</p><p>suporte de hardware (TANENBAUM, 2014). O sistema operacional</p><p>desempenha um papel muito importante nesse momento e é responsável</p><p>pelas seguintes atividades na conexão com gerenciamento de memória:</p><p>■ acompanhar quais partes da memória estão sendo usadas e qual</p><p>processo está usando;</p><p>■ alocar e desalocar espaço de memória conforme necessário;</p><p>■ decidir quais processos (ou partes de processos) e dados deve mover</p><p>ou remover da memória.</p><p>� Gerenciamento de dispositivos: um dos propósitos de um sistema</p><p>operacional é ocultar as peculiaridades dos dispositivos de hardware</p><p>específicos do usuário (ARPACI-DUSSEAU; ARPACI-DUSSEAU,</p><p>2014). Por exemplo, as peculiaridades de dispositivos de E/S estão es-</p><p>condidas da maior parte do próprio sistema operacional pelo subsistema</p><p>de E/S, que é composto por vários componentes:</p><p>■ um componente de gerenciamento de memória que inclui buffering,</p><p>cache e spooling;</p><p>■ uma interface geral de driver de dispositivo;</p><p>■ drivers para dispositivos de hardware específicos.</p><p>� Gerenciamento de cache: o cache é um princípio importante dos</p><p>sistemas de computador. As informações são normalmente mantidas</p><p>em algum sistema de armazenamento (como a memória principal). À</p><p>medida que é usado, é copiado para um sistema de armazenamento mais</p><p>rápido — o cache — em uma base temporária. Quando precisamos de</p><p>uma informação específica, primeiro, verificamos se está no cache. Se</p><p>sim, usamos as informações diretamente do cache. Assim, podemos</p><p>acessar as informações de uma maneira mais rápida. O deslocamento</p><p>das informações entre os níveis de uma hierarquia de armazenamento</p><p>pode ser explícito ou implícito, dependendo do design do hardware, do</p><p>controle e do software do sistema operacional. Por exemplo, a transfe-</p><p>rência de dados do cache para a CPU e os registradores, geralmente, é</p><p>uma função de hardware, sem intervenção do sistema operacional, da</p><p>aplicação ou usuário. Em contraste, a transferência de dados do disco</p><p>Conceitos de sistema operacional6</p><p>SISTEMAS OPERACIONAIS66</p><p>para a memória é, geralmente, controlada pelo sistema operacional</p><p>(TANENBAUM, 2014).</p><p>Um conceito importante em todos os sistemas operacionais é o processo,</p><p>que é, basicamente, um programa em execução. Associado a cada processo,</p><p>está seu espaço de endereço, uma lista de locais de memória de 0 a um máximo</p><p>que o processo pode ler e gravar. O espaço de endereço contém o programa</p><p>executável, os dados do programa e sua pilha. Também associado a cada</p><p>processo, há um conjunto de recursos, comumente incluindo registradores</p><p>(como o contador de programa e o ponteiro de pilha), uma lista de arquivos</p><p>abertos, alarmes extraordinários, listas de processos relacionados e todas as</p><p>outras informações necessárias para executar o programa. Um processo é</p><p>fundamentalmente um contêiner com todas as informações necessárias para</p><p>executar um programa (SILBERSCHATZ; GAGNE; GALVIN, 2018).</p><p>A maneira mais fácil de obter uma boa sensação intuitiva de um processo</p><p>é pensar em um sistema de multiprogramação. O usuário pode ter iniciado um</p><p>programa de edição de vídeo, instruído o programa a converter um vídeo de</p><p>uma hora em um determinado formato e, depois, ter saído para navegar na web.</p><p>Enquanto isso, um processo em segundo plano, que acorda periodicamente para</p><p>verificar se há mensagens recebidas, pode ter começado a ser executado. Assim,</p><p>temos três processos ativos: o editor de vídeo, o navegador da web e o receptor de</p><p>mensagens. Periodicamente, o sistema operacional decide parar de executar um</p><p>processo e começar a executar outro, talvez porque o primeiro tenha usado mais</p><p>do que sua parcela de tempo de CPU nos últimos segundos ou dois. Quando um</p><p>processo é suspenso temporariamente assim, ele deve ser reiniciado exatamente</p><p>no mesmo estado em que foi interrompido. Isso significa que todas as informações</p><p>sobre o processo devem ser salvas em algum lugar durante a suspensão.</p><p>Por exemplo, o processo pode ter vários arquivos abertos para leitura</p><p>de uma só vez. Associado a cada um desses arquivos, está um ponteiro que</p><p>indica a posição atual (isto é, o número do byte ou registro a ser lido a seguir).</p><p>Quando um processo é temporariamente suspenso, todos esses ponteiros devem</p><p>ser salvos para que uma chamada de leitura executada após o processo ser</p><p>reiniciado leia os dados corretos. Em muitos sistemas operacionais, todas as</p><p>informações sobre cada processo, além do conteúdo de seu próprio espaço</p><p>de endereçamento, são armazenadas em uma tabela do sistema operacional</p><p>chamada tabela de processos, que é uma matriz de estruturas, uma para cada</p><p>processo atualmente existente. Assim, um processo (suspenso) consiste em seu</p><p>espaço de endereço, geralmente chamado de imagem central (em homenagem</p><p>às memórias do núcleo magnético usado antigamente), e sua entrada na tabela</p><p>7Conceitos de sistema operacional</p><p>67 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Conceitos de Sistema Operacional PARTE 4</p><p>de processos, que contém o conteúdo de seus registros e muitos outros itens</p><p>necessários para reiniciar o processo mais tarde (TANENBAUM, 2014).</p><p>Sistema operacional e outros tipos de softwares</p><p>O sistema operacional não é o único software que você usa no seu computador.</p><p>Se você é um usuário típico de computador, provavelmente, utiliza todos os</p><p>tipos de software para ajudar a personalizar seu computador e instrui-lo a</p><p>fazer o que você precisa. O software se divide em várias categorias, como</p><p>será detalhado a seguir.</p><p>O sistema operacional realiza a comunicação entre hardware, programas</p><p>do sistema e outros aplicativos. Também oferece a base para a execução dos</p><p>outros tipos de software. Na Figura 2, é possível ver um sistema operacional</p><p>sendo executado.</p><p>Figura 2. Sistema operacional Ubuntu executando um terminal de comando e um ge-</p><p>renciador de arquivos.</p><p>Quanto às aplicações, trata-se de uma categoria de software muito usada</p><p>para produtividade ou para criar coisas, isto é, os aplicativos são o software</p><p>que faz o trabalho. Essa categoria inclui softwares que podem ser usados para</p><p>produtividade ou para produzir resultados, como um jogo de computador ou</p><p>um programa de edição de vídeo. Um exemplo de aplicativo está na Figura 3,</p><p>Conceitos de sistema operacional8</p><p>SISTEMAS OPERACIONAIS68</p><p>um editor de imagens chamado GIMP, que é executado em um sistema ope-</p><p>racional Linux.</p><p>Utilitários ou ferramentas são programas projetados para ajudar o usuário</p><p>a gerenciar o computador ou diagnosticar e corrigir problemas. Por exemplo,</p><p>você pode usar uma ferramenta para otimizar o desempenho das unidades de</p><p>disco do seu computador. Na Figura 4, você pode ver um exemplo de utilitário,</p><p>um gerenciador de discos presente no sistema operacional Linux.</p><p>Figura 3. Editor de imagens GIMP.</p><p>Figura 4. Utilitário de gerenciamento de discos do Linux.</p><p>9Conceitos de sistema operacional</p><p>69 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Conceitos de Sistema Operacional PARTE 4</p><p>Drivers são um tipo especial de programa que permite que um hardware</p><p>específico funcione. Por exemplo, um programa de driver de vídeo é necessário</p><p>para o sistema</p><p>operacional usar o hardware gráfico específico do seu PC.</p><p>Esse tipo de software vem com o hardware que ele suporta. No Windows, por</p><p>exemplo, você pode verificar todos os drivers do instalador a partir do Device</p><p>Manager (Gerenciador de Dispositivos). Veja, na Figura 5, o Device Manager</p><p>exibindo os dispositivos de drivers presentes no computador.</p><p>Figura 5. Device Manager (Gerenciador de Dispositivos) exibindo os dispositivos e seus</p><p>respectivos drivers.</p><p>Conceitos de sistema operacional10</p><p>SISTEMAS OPERACIONAIS70</p><p>Atualmente, existem muitos tipos de sistemas operacionais. Alguns são pagos, como,</p><p>por exemplo, o Windows da Microsoft. Outros podemos utilizar de forma gratuita, como</p><p>a maioria das distribuições Linux. Se você possui um computador disponível, você</p><p>pode, por exemplo, instalar o Ubuntu, uma das distribuições mais populares do Linux:</p><p>ARPACI-DUSSEAU, R.; ARPACI-DUSSEAU, A. Operating systems: Three Easy Pieces. Madison:</p><p>Arpaci-Dusseau Books, 2014.</p><p>SILBERSCHATZ, A.; GAGNE, G.; GALVIN, P. B. Operating system concepts. New Jersey:</p><p>Wiley, 2018.</p><p>TANENBAUM, A. S. Modern operating system. New Jersey: Pearson Education, 2014.</p><p>Leituras recomendadas</p><p>GERALDI, L. M. A.; GALASSI, C. R.; FORMICE, C. R. Elucidando os sistemas operacionais.</p><p>Taquaritinga: Dos autores, 2013.</p><p>SILBERSCHATZ, A.; GALVIN, P. B.; GAGNE, G. Sistemas operacionais com Java. 8. ed. Rio</p><p>de Janeiro: Campus, 2016.</p><p>TANENBAUM, A. S.; BOS, H. Sistemas operacionais modernos. 4. ed. São Paulo: Pearson,</p><p>2016.</p><p>11Conceitos de sistema operacional</p><p>ENCERRA AQUI O TRECHO DO LIVRO DISPONIBILIZADO</p><p>PELA SAGAH PARA ESTA PARTE DA UNIDADE.</p><p>PREZADO ESTUDANTE</p><p>Se você encontrar algum problema nesse material, entre em</p><p>contato pelo email eadproducao@unilasalle.edu.br. Descreva o</p><p>que você encontrou e indique a página.</p><p>Lembre-se: a boa educação se faz com a contribuição de todos!</p><p>CONTRIBUA COM A QUALIDADE DO SEU CURSO</p><p>Av. Victor Barreto, 2288</p><p>Canoas - RS</p><p>CEP: 92010-000 | 0800 541 8500</p><p>ead@unilasalle.edu.br</p><p>rotina havia melhorado um pouco, com a introdução dos</p><p>cartões perfurados. Agora era possível, em vez de usar painéis de conectores, escrever progra-</p><p>mas em cartões de papel e lê-los; fora isso, o procedimento era o mesmo.</p><p>1.2.2 A segunda geração (1955–1965): transistores e sistemas de lote</p><p>A introdução do transistor, em meados da década de 50, mudou o quadro radicalmente. Os</p><p>computadores se tornaram confi áveis o bastante para serem fabricados e vendidos para clien-</p><p>tes com a expectativa de que continuariam a funcionar por tempo sufi ciente para realizarem</p><p>algum trabalho útil. Pela primeira vez, havia uma separação clara entre projetistas, construto-</p><p>res, operadores, programadores e pessoal de manutenção.</p><p>Essas máquinas, agora chamadas de computadores de grande porte (ou mainframes),</p><p>eram postas em salas especiais com ar-condicionado e com equipes de operadores profi ssio-</p><p>nais especialmente treinadas para mantê-las funcionando. Somente grandes empresas, impor-</p><p>tantes órgãos do governo ou universidades podiam arcar com seu preço, na casa dos milhões</p><p>de dólares. Para executar um job (tarefa), isto é, um programa ou um conjunto de programas,</p><p>um programador primeiro escrevia o programa no papel (em FORTRAN ou possivelmente</p><p>até em linguagem assembly) e depois o transformava em cartões perfurados. Então, ele leva-</p><p>va a pilha de cartões para a sala de submissão de jobs, o entregava para um dos operadores</p><p>e ia tomar café até que a saída estivesse pronta. Quando o computador terminava o job que</p><p>estava executando, um operador ia até a impressora, destacava a saída impressa e a levava</p><p>para uma sala de saída, para que o programador pudesse pegá-la posteriormente. Então, o</p><p>operador pegava uma das pilhas de cartões que tinham sido trazidas para a sala de submissão</p><p>SISTEMAS OPERACIONAIS14</p><p>CAPÍTULO 1 • INTRODUÇÃO 27</p><p>e os inseria na máquina de leitura. Se o compilador FORTRAN fosse necessário, o operador</p><p>teria que pegá-lo em um gabinete de arquivos e inseri-lo para leitura. Enquanto os operadores</p><p>andavam pelas salas da máquina, de submissão e de saída, o computador fi cava ocioso. Dado</p><p>o alto custo do equipamento, não é de surpreender que as pessoas procurassem rapidamente</p><p>maneiras de reduzir o tempo desperdiçado. A solução geralmente adotada era o sistema de</p><p>processamento em lotes (batch system). A idéia era reunir em uma bandeja (tray) um con-</p><p>junto de jobs da sala de submissão e então lê-los em uma fi ta magnética usando um compu-</p><p>tador relativamente pequeno e barato, como o IBM 1401, que era muito bom para ler cartões,</p><p>copiar fi tas e imprimir a saída, mas péssimo para cálculos numéricos. Outras máquinas muito</p><p>mais caras, como o IBM 7094, eram usadas para a computação de fato. Essa situação aparece</p><p>na Figura 1-2.</p><p>1401 7094 1401</p><p>(a) (b) (c) (d) (e) (f)</p><p>Leitora de</p><p>cartões</p><p>Unidade</p><p>de fita Fita de</p><p>entrada</p><p>Fita de</p><p>saída</p><p>Fita de</p><p>sistema</p><p>Impressora</p><p>Figura 1-2 Um sistema de processamento em lotes primitivo. (a) Os programadores trazem</p><p>os cartões para o 1401. (b) O 1401 lê o lote de jobs na fi ta. (c) O operador leva a fi ta de en-</p><p>trada para o 7094. (d) O 7094 realiza a computação. (e) O operador leva a fi ta de saída para o</p><p>1401. (f) O 1401 imprime a saída.</p><p>Após cerca de uma hora de leitura de lotes de jobs, a fi ta era rebobinada e levada para</p><p>a sala da máquina, onde era montada em uma unidade de fi ta. O operador carregava então</p><p>um programa especial (o ancestral do sistema operacional de hoje), que lia o primeiro job da</p><p>fi ta e a executava. A saída era gravada em uma segunda fi ta, em vez de ser impressa. Depois</p><p>que cada job terminava, o sistema operacional lia automaticamente o próximo job da fi ta e</p><p>começava a executá-lo. Quando o lote inteiro estava pronto, o operador removia as fi tas de</p><p>entrada e saída, substituía a fi ta de entrada pelo próximo lote e levava a fi ta de saída para um</p><p>1401 imprimir off line (isto é, não conectado ao computador principal).</p><p>A estrutura típica de um job aparece na Figura 1-3. Ele começava com um cartão</p><p>$JOB, especifi cando o tempo de execução máximo, em minutos, o número da conta a ser</p><p>cobrada e o nome do programador. Em seguida, vinha um cartão $FORTRAN, instruindo o</p><p>sistema operacional a carregar o compilador FORTRAN da fi ta de sistema. Depois, vinha o</p><p>programa a ser compilado e, então, um cartão $LOAD, orientando o sistema operacional a</p><p>carregar o programa-objeto recém compilado. (Freqüentemente, os programas compilados</p><p>eram gravados em fi tas virgens e tinham de ser carregados explicitamente.) Em seguida,</p><p>vinha o cartão $RUN, instruindo o sistema operacional a executar o programa com os dados</p><p>que o seguiam. Finalmente, o cartão $END marcava o fi m do job. Esses cartões de controle</p><p>primitivos foram os precursores das linguagens de controle de jobs modernos e dos interpre-</p><p>tadores de comandos.</p><p>Grandes computadores de segunda geração eram usados principalmente para cálcu-</p><p>los científi cos e de engenharia, como a solução de equações diferenciais parciais que fre-</p><p>qüentemente ocorrem na física e na engenharia. Eles eram programados principalmente em</p><p>15 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>História dos Sistemas Operacionais PARTE 1</p><p>28 SISTEMAS OPERACIONAIS</p><p>FORTRAN e em linguagem assembly. Sistemas operacionais típicos eram o FMS (o Fortran</p><p>Monitor System) e o IBSYS, sistema operacional da IBM para o 7094.</p><p>1.2.3 A terceira geração (1965–1980): CIs e multiprogramação</p><p>No início da década de 60, a maioria dos fabricantes de computadores tinha duas linhas de</p><p>produtos distintas e totalmente incompatíveis. Por um lado, havia os computadores científi cos</p><p>de grande escala, baseados em palavras binárias, como o 7094, que eram utilizados para cál-</p><p>culos numéricos em ciência e engenharia. Por outro, havia os computadores comerciais, ba-</p><p>seados em caracteres, como o 1401, que eram amplamente usados por bancos e companhias</p><p>de seguro para ordenar e imprimir fi tas.</p><p>Desenvolver, manter e comercializar duas linhas de produtos completamente diferen-</p><p>tes era uma proposta cara para os fabricantes de computadores. Além disso, muitos clientes</p><p>novos necessitavam, inicialmente, de uma máquina pequena, mas posteriormente cresciam e</p><p>queriam uma máquina maior, que tivesse a mesma arquitetura da atual para poderem executar</p><p>todos os seus programas antigos, só que mais rapidamente.</p><p>A IBM tentou resolver esses dois problemas de uma só vez introduzindo o System/360.</p><p>O 360 era uma série de máquinas de software compatível que variavam desde a capacidade de</p><p>um 1401 até um muito mais poderoso do que o 7094. As máquinas diferiam apenas no preço</p><p>e no desempenho (capacidade máxima de memória, velocidade do processador, número de</p><p>dispositivos de E/S permitidos etc.). Como todas as máquinas tinham a mesma arquitetura</p><p>e o mesmo conjunto de instruções, os programas escritos para uma podiam ser executados</p><p>em todas as outras, pelo menos teoricamente. Além disso, o 360 foi projetado para realizar</p><p>computação científi ca (isto é, numérica) e comercial. Assim, uma única família de máquinas</p><p>podia satisfazer as necessidades de todos os clientes. Nos anos seguintes, a IBM lançou novos</p><p>produtos sucessores usando tecnologia mais moderna, compatíveis com a linha 360, conheci-</p><p>dos como as séries 370, 4300, 3080, 3090 e Z.</p><p>O 360 foi a primeira linha de computadores importante a usar circuitos integrados</p><p>(CIs), oferecendo assim uma importante vantagem de preço/desempenho em relação às má-</p><p>quinas de segunda geração, que eram construídas a partir de transistores individuais. Ele</p><p>teve sucesso imediato e a idéia de uma família de computadores compatíveis logo foi ado-</p><p>$JOB, 10,6610802, MARVIN TANENBAUM</p><p>$FORTRAN</p><p>$LOAD</p><p>$RUN</p><p>$END</p><p>Programa Fortran</p><p>Dados do programa</p><p>Figura 1-3 Estrutura típica de um job FMS.</p><p>SISTEMAS OPERACIONAIS16</p><p>CAPÍTULO 1 • INTRODUÇÃO 29</p><p>tada por todos os outros principais fabricantes. As descendentes dessas máquinas ainda são</p><p>empregadas nos centros de computação atuais. Hoje em dia, elas são freqüentemente usadas</p><p>para gerenciamento de bancos de dados grandes (por exemplo, para sistemas de reservas</p><p>de passagens aéreas) ou como servidores de sites web que precisam processar milhares de</p><p>pedidos por segundo.</p><p>A maior força da idéia de “uma família” foi ao mesmo tempo sua maior fraqueza. A</p><p>intenção era que todo software, incluindo o sistema operacional, o OS/360, funcionasse em</p><p>todos os modelos. Ele tinha que funcionar em sistemas pequenos, que freqüentemente apenas</p><p>substituíam os 1401 para copiar cartões em fi ta, e em sistemas muito grandes, que muitas ve-</p><p>zes substituíam os 7094 para fazer previsão do tempo e outros cálculos pesados. Ele tinha que</p><p>ser bom em sistemas com poucos periféricos e em sistemas com muitos periféricos. Tinha</p><p>que funcionar em ambientes comerciais e em ambientes científi cos. Acima de tudo, ele tinha</p><p>que ser efi ciente em todos esses diferentes usos.</p><p>Não havia como a IBM (ou quem quer que fosse) escrever um software para atender a</p><p>todos esses requisitos confl itantes. O resultado foi um sistema operacional enorme e extraor-</p><p>dinariamente complexo, provavelmente duas ou três vezes maior do que o FMS. Ele consistia</p><p>em milhões de linhas de linguagem assembly, escritas por milhares de programadores, e con-</p><p>tinha milhares e milhares de erros, que necessitavam um fl uxo contínuo de novas versões na</p><p>tentativa de corrigi-los. Cada nova versão corrigia alguns erros e introduzia outros, de modo</p><p>que o número de erros provavelmente permanecia constante com o tempo.</p><p>Posteriormente, um dos projetistas do OS/360, Fred Brooks, escreveu um livro espiri-</p><p>tuoso e incisivo descrevendo suas experiências com o OS/360 (Brooks, 1995). Embora seja</p><p>impossível resumir o livro aqui, basta dizer que a capa mostra uma manada de animais pré-</p><p>históricos atolados em uma vala de alcatrão. A capa do livro de Silberschatz et al. (2004) faz</p><p>uma comparação semelhante, sobre o fato de os sistemas operacionais serem dinossauros.</p><p>Apesar de seu tamanho enorme e de seus problemas, o OS/360 e os sistemas operacio-</p><p>nais de terceira geração semelhantes, produzidos por outros fabricantes de computadores, sa-</p><p>tisfi zeram a maioria de seus clientes razoavelmente bem. Eles também popularizaram várias</p><p>técnicas importantes, ausentes nos sistemas operacionais de segunda geração. Provavelmente</p><p>a mais importante delas foi a multiprogramação. No 7094, quando o job corrente fazia uma</p><p>pausa para esperar a conclusão de uma operação de fi ta, ou de outro dispositivo de E/S, a CPU</p><p>simplesmente fi cava ociosa até que a operação terminasse. No caso de cálculos científi cos,</p><p>que exigem muito da CPU, as operações de E/S não são freqüentes, de modo que esse tempo</p><p>desperdiçado não é signifi cativo. No caso do processamento de dados comerciais, o tempo de</p><p>espera pelas operações de E/S freqüentemente chegava a 80 ou 90 porcento do tempo total;</p><p>portanto, algo tinha que ser feito para evitar que a CPU (cara) fi casse tão ociosa.</p><p>A solução desenvolvida foi dividir a memória em várias partições, com um job diferente</p><p>em cada partição, como mostra a Figura 1-4. Enquanto um job estava esperando a conclusão</p><p>da operação de E/S, outro podia usar a CPU. Se jobs sufi cientes pudessem ser mantidos si-</p><p>Job 3</p><p>Job 2</p><p>Job 1</p><p>Sistema</p><p>operacional</p><p>Partições</p><p>de memória</p><p>Figura 1-4 Um sistema de multiprogramação com três jobs na memória.</p><p>17 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>História dos Sistemas Operacionais PARTE 1</p><p>30 SISTEMAS OPERACIONAIS</p><p>multaneamente na memória principal, a CPU poderia fi car ocupada praticamente 100% do</p><p>tempo. Manter vários jobs simultâneos, com segurança, em memória, exige hardware espe-</p><p>cial para proteger cada um deles, evitando que um interfi ra e cause danos no outro, mas o 360</p><p>e outros sistemas de terceira geração estavam equipados com esse hardware.</p><p>Outro recurso importante apresentado nos sistemas operacionais de terceira geração</p><p>foi a capacidade de ler jobs de cartões para o disco assim que eram trazidos para a sala do</p><p>computador. Então, quando um job em execução acabava, o sistema operacional podia car-</p><p>regar um novo job do disco na partição, agora vazia, e executá-lo. Essa técnica é chamada de</p><p>spooling (de Simultaneous Peripheral Operation On Line – Operação Periférica Simultânea</p><p>On-line) e também era usada para saída. Com o spooling, os 1401 não eram mais necessários</p><p>e acabava grande parte do trabalho de carga das fi tas.</p><p>Embora os sistemas operacionais de terceira geração fossem convenientes para cálculos</p><p>científi cos pesados e execuções de processamento de dados comerciais de grande volume, ba-</p><p>sicamente eles ainda eram sistemas de lote. Muitos programadores sentiam falta dos tempos</p><p>da primeira geração, quando eles tinham a máquina toda para si por algumas horas e, assim,</p><p>podiam depurar seus programas rapidamente. Com os sistemas de terceira geração, o tempo</p><p>entre submeter um job e receber a saída era freqüentemente de várias horas, de modo que uma</p><p>vírgula colocada em lugar errado podia fazer uma compilação falhar e o programador perder</p><p>metade do dia.</p><p>Essa necessidade de um tempo de resposta curto abriu caminho para o compartilha-</p><p>mento do tempo (time sharing), uma variante da multiprogramação na qual cada usuário</p><p>tem um terminal on-line. Em um sistema de tempo compartilhado, se 20 usuários estivessem</p><p>conectados e 17 deles estivessem pensando, conversando ou tomando café, a CPU podia ser</p><p>alocada por turnos para os três jobs que quisessem o serviço. Como as pessoas que depuram</p><p>programas normalmente utilizam comandos curtos (por exemplo, compilar uma procedure†</p><p>de cinco páginas) em vez de longos (por exemplo, ordenar um arquivo de um milhão de</p><p>registros), o computador pode oferecer um serviço rápido e interativo para vários usuários e</p><p>também trabalhar em segundo plano (background) com jobs grandes em lotes, quando a CPU</p><p>estiver ociosa. O primeiro sistema sério de compartilhamento de tempo, o CTSS (Compatible</p><p>Time Sharing System), foi desenvolvido no M.I.T. em um 7094 especialmente modifi cado</p><p>(Corbató et al., 1962). Entretanto, o compartilhamento de tempo não se tornou popular até</p><p>que o hardware de proteção necessário se tornou difundido, durante a terceira geração.</p><p>Após o sucesso do sistema CTSS, o MIT, o Bell Labs e a General Electric (na época,</p><p>um importante fabricante de computadores) decidiram dedicar-se ao desenvolvimento de um</p><p>“computer utility”*, uma máquina que suportaria centenas de usuários de tempo compartilha-</p><p>do simultaneamente. Seu modelo era o sistema de distribuição de eletricidade – quando preci-</p><p>sa de energia elétrica, você simplesmente insere um plugue na tomada da parede e, dentro do</p><p>possível, toda a energia que precisar estará lá. Os projetistas desse sistema, conhecido como</p><p>MULTICS (MULTiplexed Information and Computing Service – Serviço de Computação</p><p>e Informação Multiplexado), imaginaram uma única máquina enorme fornecendo poder de</p><p>computação para todos na região de Boston. A idéia de que máquinas muito mais poderosas</p><p>do que seu computador de grande porte GE-645 seriam vendidas aos milhões por menos de</p><p>mil dólares, apenas 30 anos depois, era pura fi cção científi ca, como seria nos dias de hoje a</p><p>idéia de trens supersônicos e transatlânticos submarinos.</p><p>† Usaremos os termos procedure, procedimento, sub-rotina e função indistintamente neste livro.</p><p>* N. de R. T.: Utility neste caso tem o sentido de um serviço público, indicando um recurso computacional amplamente dispo-</p><p>nível.</p><p>SISTEMAS OPERACIONAIS18</p><p>CAPÍTULO 1 • INTRODUÇÃO 31</p><p>O MULTICS foi um sucesso misto. Ele foi projetado para suportar centenas de usuários</p><p>em uma máquina apenas ligeiramente mais poderosa do que um</p><p>PC baseado no Intel 80386,</p><p>embora tivesse muito mais capacidade de E/S. Isso não é tão louco quanto parece, pois na-</p><p>quela época as pessoas sabiam escrever programas pequenos e efi cientes, uma habilidade</p><p>que subseqüentemente foi perdida. Houve muitas razões para o MULTICS não tomar conta</p><p>do mundo, não sendo a menor delas, o fato de ter sido escrito em PL/I e que o compilador</p><p>de PL/I estava anos atrasado e mal funcionava quando fi nalmente chegou ao mercado. Além</p><p>disso, o MULTICS era enormemente ambicioso para sua época, semelhantemente à máquina</p><p>analítica de Charles Babbage no século XIX.</p><p>O MULTICS introduziu muitas idéias embrionárias na literatura sobre computadores,</p><p>mas transformá-lo em um produto sério e em um sucesso comercial foi muito mais difícil do</p><p>que o esperado. O Bell Labs retirou-se do projeto e a General Electric desistiu completamen-</p><p>te do negócio de computadores. Entretanto, o M.I.T. persistiu e fi nalmente fez o MULTICS</p><p>funcionar. Por fi m, ele foi vendido como um produto comercial pela empresa que adquiriu o</p><p>ramo de computadores da GE (a Honeywell) e instalado por cerca de 80 empresas e univer-</p><p>sidades importantes do mundo todo. Embora em número pequeno, os usuários do MULTICS</p><p>eram extremamente leais. A General Motors, a Ford e a Agência de Segurança Nacional dos</p><p>EUA, por exemplo, só desligaram seus sistemas MULTICS no fi nal dos anos 90. O último</p><p>MULTICS que estava em funcionamento, no Departamento de Defesa Nacional canadense,</p><p>foi desligado em outubro de 2000. Apesar de sua falta de sucesso comercial, o MULTICS</p><p>teve uma enorme infl uência sobre os sistemas operacionais subseqüentes. Existem muitas in-</p><p>formações sobre ele (Corbató et al., 1972; Corbató e Vyssotsky, 1965; Daley e Dennis, 1968;</p><p>Organick, 1972; e Saltzer, 1974). Ele também tem um site web ainda ativo, www.multicians.</p><p>org, com muitas informações sobre o sistema, seus projetistas e seus usuários.</p><p>Não se ouve falar mais da expressão computer utility, mas a idéia ganhou vida nova</p><p>recentemente. Em sua forma mais simples, os PCs ou estações de trabalho (PCs de topo de</p><p>linha) em uma empresa, ou em uma sala de aula, podem estar conectados, por meio de uma</p><p>rede local (LAN), a um servidor de arquivos no qual todos os programas e dados estão ar-</p><p>mazenados. Então, um administrador precisa instalar e proteger apenas um conjunto de pro-</p><p>gramas e dados, e pode reinstalar facilmente software local em um PC ou estação de trabalho</p><p>que não esteja funcionando bem, sem se preocupar com a recuperação ou com a preservação</p><p>de dados locais. Em ambientes mais heterogêneos, foi desenvolvida uma classe de software</p><p>chamada middleware para fazer a ligação entre usuários locais e arquivos e entre programas e</p><p>bancos de dados armazenados em servidores remotos. O middleware faz os computadores in-</p><p>terligados em rede parecerem locais para os PCs ou para as estações de trabalho dos usuários</p><p>individuais e apresenta uma interface uniforme com o usuário, mesmo que haja uma ampla</p><p>variedade de servidores, PCs e estações de trabalho diferentes em uso. A World Wide Web é</p><p>um exemplo. Um navegador web apresenta documentos para um usuário de maneira unifor-</p><p>me e um documento visualizado no navegador de um usuário pode ser composto por texto</p><p>de um servidor e elementos gráfi cos de um outro, apresentados em um formato determinado</p><p>por uma folha de estilos (style sheets) de um terceiro servidor. Normalmente, as empresas e</p><p>universidades utilizam uma interface web para acessar bancos de dados e executar programas</p><p>em um computador em outro prédio ou mesmo em outra cidade. O middleware parece ser</p><p>o sistema operacional de um sistema distribuído, mas na realidade não é um sistema ope-</p><p>racional e esse assunto está fora dos objetivos deste livro. Para ver mais informações sobre</p><p>sistemas distribuídos, consulte Tanenbaum e Van Steen (2002).</p><p>Outro desenvolvimento importante durante a terceira geração foi o fenomenal cresci-</p><p>mento dos minicomputadores, começando com o PDP-1 da DEC (Digital Equipment Com-</p><p>pany), em 1961. O PDP-1 tinha apenas 4K de palavras de 18 bits, mas a US$120.000 por</p><p>19 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>História dos Sistemas Operacionais PARTE 1</p><p>32 SISTEMAS OPERACIONAIS</p><p>máquina (menos de 5% do preço de um 7094), foi um grande sucesso de vendas. Para certos</p><p>tipos de trabalho não numéricos, ele era quase tão rápido quanto o 7094 e deu origem a toda</p><p>uma nova indústria. Rapidamente, foi seguido por uma série de outros PDPs (ao contrário da</p><p>família da IBM, todos incompatíveis), culminando no PDP-11.</p><p>Um dos cientistas da computação do Bell Labs, que tinha trabalhado no projeto do</p><p>MULTICS, Ken Thompson, encontrou um pequeno minicomputador PDP-7 que ninguém</p><p>usava e começou a escrever uma versão monousuário simplifi cada do MULTICS. Posterior-</p><p>mente, esse trabalho transformou-se no sistema operacional UNIX, que se tornou popular no</p><p>mundo acadêmico, entre órgãos do governo e em muitas empresas.</p><p>A história do UNIX foi contada em outros textos (por exemplo, Salus, 1994). Como o</p><p>código-fonte estava amplamente disponível, várias organizações desenvolveram suas próprias</p><p>versões (incompatíveis), que levaram ao caos. Duas versões importantes foram desenvolvi-</p><p>das, o System V, da AT&T, e a BSD (Berkeley Software Distribution), da Universidade da</p><p>Califórnia, em Berkeley. Elas também tiveram pequenas variantes, agora incluindo FreeBSD,</p><p>OpenBSD e NetBSD. Para tornar possível escrever programas que pudessem ser executados</p><p>em qualquer sistema UNIX, o IEEE desenvolveu um padrão para o UNIX, chamado POSIX,</p><p>que a maioria das versões de UNIX agora o suportam. O padrão POSIX defi ne uma interfa-</p><p>ce mínima de chamadas de sistema que os sistemas UNIX compatíveis devem suportar. Na</p><p>verdade, agora, outros sistemas operacionais também oferecem suporte a interface POSIX.</p><p>As informações necessárias para se escrever software compatível com o padrão POSIX estão</p><p>disponíveis em livros (IEEE, 1990; Lewine, 1991) e on-line, como a “Single UNIX Specifi ca-</p><p>tion” do Open Group, que se encontra no endereço www.unix.org. Posteriormente, neste capí-</p><p>tulo, quando nos referirmos ao UNIX, incluímos também todos esses sistemas, a não ser que</p><p>mencionemos de outra forma. Embora sejam diferentes internamente, todos eles suportam o</p><p>padrão POSIX; portanto, para o programador, eles são bastante semelhantes.</p><p>1.2.4 A quarta geração (1980–hoje): computadores pessoais</p><p>Com o desenvolvimento dos circuitos LSI (Large Scale Integration – integração em larga</p><p>escala), chips contendo milhares de transistores em um centímetro quadrado de silício, surgiu</p><p>a era do computador pessoal baseado em microprocessador. Em termos de arquitetura, os</p><p>computadores pessoais (inicialmente chamados de microcomputadores) não eram muito</p><p>diferentes dos minicomputadores da classe PDP-11, mas em termos de preço, eles certamente</p><p>eram diferentes. O minicomputador também tornou possível que um departamento de uma</p><p>empresa ou universidade tivesse seu próprio computador. O microcomputador tornou possí-</p><p>vel que uma pessoa tivesse seu próprio computador.</p><p>Havia várias famílias de microcomputadores. Em 1974, a Intel apareceu com o 8080,</p><p>o primeiro microprocessador de 8 bits de propósito geral. Diversas empresas produziram</p><p>sistemas completos usando o 8080 (ou o microprocessador compatível da Zilog, o Z80) e o</p><p>sistema operacional CP/M (Control Program for Microcomputers), de uma empresa cha-</p><p>mada Digital Research, foi amplamente usado neles. Muitos programas aplicativos foram</p><p>escritos para executar no CP/M e ele dominou o mundo da computação pessoal por cerca</p><p>de 5 anos.</p><p>A Motorola também produziu um microprocessador de 8 bits, o 6800. Um grupo de</p><p>engenheiros deixou a Motorola para formar a MOS Technology e fabricar a CPU 6502, após</p><p>a Motorola ter rejeitado as melhorias sugeridas por eles</p><p>para o 6800. O 6502 foi a CPU de</p><p>vários sistemas antigos. Um deles, o Apple II, se tornou um importante concorrente dos sis-</p><p>temas CP/M nos mercados doméstico e educacional. Mas o CP/M era tão popular que muitos</p><p>proprietários de computadores Apple II adquiriram placas com o coprocessador Z-80 para</p><p>executar CP/M, pois a CPU 6502 não era compatível com este sistema operacional. As pla-</p><p>SISTEMAS OPERACIONAIS20</p><p>CAPÍTULO 1 • INTRODUÇÃO 33</p><p>cas CP/M eram comercializadas por uma pequena empresa chamada Microsoft, que também</p><p>tinha um nicho de mercado, fornecendo interpretadores BASIC, usado por vários microcom-</p><p>putadores que executavam o CP/M.</p><p>A geração seguinte de microprocessadores foram os sistemas de 16 bits. A Intel apare-</p><p>ceu com o 8086 e, no início dos anos 80, a IBM projetou o IBM PC utilizando o 8088 da Intel</p><p>(internamente, um 8086, com um caminho de dados externo de 8 bits). A Microsoft ofereceu</p><p>à IBM um pacote que incluía o BASIC e um sistema operacional, o DOS (Disk Operating</p><p>System), originalmente desenvolvido por outra empresa – a Microsoft comprou o produto e</p><p>contratou o autor original para aprimorá-lo. O sistema revisado foi chamado de MS-DOS</p><p>(MicroSoft Disk Operating System) e rapidamente dominou o mercado do IBM PC.</p><p>O CP/M, o MS-DOS e o Apple DOS eram todos sistemas de linha de comando: os</p><p>usuários digitavam comandos no teclado. Anos antes, Doug Engelbart, do Stanford Research</p><p>Institute, tinha inventado a GUI (Graphical User Interface – interface gráfi ca com o usuá-</p><p>rio), contendo janelas, ícones, menus e mouse. Steve Jobs, da Apple, viu a possibilidade de</p><p>um computador pessoal realmente amigável (para usuários que não sabiam nada sobre com-</p><p>putadores e não queriam aprender) e o Macintosh da Apple foi anunciado no início de 1984.</p><p>Ele usava a CPU 68000 de 16 bits da Motorola e tinha 64 KB de memória ROM (Read Only</p><p>Memory – memória somente de leitura), para suportar a GUI. Com o passar dos anos, o Ma-</p><p>cintosh evoluiu. As CPUs subseqüentes da Motorola eram verdadeiros sistemas de 32 bits e</p><p>posteriormente a Apple mudou para as CPUs PowerPC da IBM, com arquitetura RISC de 32</p><p>bits (e, posteriormente, 64 bits). Em 2001, a Apple fez uma mudança importante no sistema</p><p>operacional, lançando o Mac OS X, com uma nova versão da GUI Macintosh sobre o UNIX</p><p>de Berkeley. E, em 2005, a Apple anunciou que estaria mudando para processadores Intel.</p><p>Para concorrer com o Macintosh, a Microsoft inventou o Windows. Originalmente, o</p><p>Windows era apenas um ambiente gráfi co sobre o MS-DOS de 16 bits (isto é, era mais um</p><p>shell do que um verdadeiro sistema operacional). Entretanto, as versões atuais do Windows</p><p>são descendentes do Windows NT, um sistema de 32 bits completo, reescrito desde o início.</p><p>O outro concorrente importante no mundo dos computadores pessoais é o UNIX (e</p><p>seus vários derivados). O UNIX é mais poderoso em estações de trabalho e em outros</p><p>computadores topo de linha, como os servidores de rede. Ele é especialmente difundido</p><p>em máquinas equipadas com chips RISC de alto desempenho. Em computadores baseados</p><p>em Pentium, o Linux está se tornando uma alternativa popular ao Windows para os estu-</p><p>dantes e, cada vez mais, para muitos usuários corporativos. (Neste livro, usaremos o termo</p><p>“Pentium” para nos referirmos à família Pentium inteira, incluindo os microprocessadores</p><p>Celeron, de baixo poder computacional e os Xeon, de mais alto poder computacional e seus</p><p>compatíveis AMD).</p><p>Embora muitos usuários de UNIX, especialmente programadores experientes, prefi -</p><p>ram uma interface baseada em comandos a uma GUI, praticamente todos os sistemas UNIX</p><p>suportam um sistema de janelas chamado X Window, desenvolvido no M.I.T. Esse sistema</p><p>trata do gerenciamento básico de janelas, permitindo aos usuários criar, excluir, mover e re-</p><p>dimensionar janelas usando um mouse. Freqüentemente, uma GUI completa, como a Motif,</p><p>é disponibilizada para funcionar sobre o sistema X Window, proporcionando ao UNIX a apa-</p><p>rência e o comportamento do Macintosh ou do Microsoft Windows para os usuários UNIX</p><p>que assim o desejarem.</p><p>Um desenvolvimento interessante, que começou durante meados dos anos 80, é o cres-</p><p>cimento das redes de computadores pessoais executando sistemas operacionais de rede e</p><p>sistemas operacionais distribuídos (Tanenbaum e Van Steen, 2002). Em um sistema opera-</p><p>cional de rede, os usuários sabem da existência de vários computadores e podem se conectar</p><p>a máquinas remotas e copiar arquivos de uma para outra. Cada máquina executa seu próprio</p><p>21 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>História dos Sistemas Operacionais PARTE 1</p><p>34 SISTEMAS OPERACIONAIS</p><p>sistema operacional local e tem seu próprio usuário (ou usuários) local. Basicamente, as má-</p><p>quinas são independentes entre si.</p><p>Os sistemas operacionais de rede não são fundamentalmente diferentes dos sistemas</p><p>operacionais locais a uma máquina. Obviamente, eles precisam de uma controladora de inter-</p><p>face de rede e de algum software de baixo nível para fazê-los funcionar, assim como de pro-</p><p>gramas para obter login remoto e acesso remoto aos arquivos, mas essas adições não mudam</p><p>a estrutura básica do sistema operacional.</p><p>Em contraste, um sistema operacional distribuído é aquele que aparece para seus usuá-</p><p>rios como um sistema de um processador tradicional, mesmo sendo composto, na verdade,</p><p>por vários processadores. Os usuários não devem saber onde seus programas estão sendo exe-</p><p>cutados nem onde seus arquivos estão localizados; tudo isso deve ser manipulado automática</p><p>e efi cientemente pelo sistema operacional.</p><p>Os verdadeiros sistemas operacionais distribuídos exigem mais do que apenas adicionar</p><p>um código em um sistema operacional centralizados, pois os sistemas distribuídos e os cen-</p><p>tralizados diferem de maneiras importantes. Os sistemas distribuídos, por exemplo, freqüen-</p><p>temente permitem que os aplicativos sejam executados em vários processadores ao mesmo</p><p>tempo, exigindo assim algoritmos de escalonamento mais complexos para otimizar o volume</p><p>de paralelismo.</p><p>Muitas vezes, os atrasos de comunicação em rede signifi cam que esses algoritmos (e</p><p>outros) devam ser executados com informações incompletas, desatualizadas ou mesmo incor-</p><p>retas. Essa situação é radicalmente diferente de um sistema operacional centralizado, no qual</p><p>se tem informações completas sobre o estado do sistema.</p><p>1.2.5 A história do MINIX 3</p><p>No início, o código-fonte do UNIX (versão 6) estava amplamente disponível, sob licença da</p><p>AT&T, e era muito estudado. John Lions, da Universidade de New South Wales, na Austrália,</p><p>escreveu um livro descrevendo seu funcionamento, linha por linha (Lions, 1996), e ele foi</p><p>usado (com permissão da AT&T) como livro texto em muitos cursos universitários sobre</p><p>sistemas operacionais.</p><p>Quando a AT&T lançou a versão 7, começou a perceber que o UNIX era um produto</p><p>comercial valioso e, assim, distribuiu essa versão com uma licença proibindo o estudo do</p><p>código-fonte em cursos para evitar o risco de expor seu status de segredo comercial. Muitas</p><p>universidades obedeceram simplesmente eliminando o estudo do UNIX e ensinando apenas</p><p>a teoria.</p><p>Infelizmente, ensinar apenas a teoria deixa o aluno com uma visão prejudicada do que</p><p>um sistema operacional realmente é. Os assuntos teóricos normalmente abordados em deta-</p><p>lhes em cursos e livros sobre sistemas operacionais, como os algoritmos de escalonamento,</p><p>não têm tanta importância na prática. Os assuntos realmente importantes, como E/S e siste-</p><p>mas de arquivos, geralmente são abandonados, pois há pouca teoria a respeito.</p><p>Para corrigir essa situação, um dos autores deste livro (Tanenbaum) decidiu escrever</p><p>um novo sistema operacional a partir de zero, que seria compatível com o UNIX do ponto</p><p>de vista do usuário, mas completamente diferente por dentro. Por não usar sequer uma</p><p>linha do código da AT&T,</p><p>esse sistema evita as restrições de licenciamento; assim, ele</p><p>pode ser usado para estudo individual ou em classe. Desse modo, os leitores podem disse-</p><p>car um sistema operacional real para ver o que há por dentro, exatamente como os alunos</p><p>de biologia dissecam rãs. Ele foi chamado de MINIX e foi lançado em 1987, com seu</p><p>código-fonte completo para qualquer um estudar ou modifi car. O nome MINIX signifi ca</p><p>mini-UNIX, pois ele é pequeno o bastante até para quem não é especialista poder entender</p><p>seu funcionamento.</p><p>ENCERRA AQUI O TRECHO DO LIVRO DISPONIBILIZADO</p><p>PELA SAGAH PARA ESTA PARTE DA UNIDADE.</p><p>PREZADO ESTUDANTE</p><p>unidade</p><p>1</p><p>O conteúdo deste livro é</p><p>disponibilizado por SAGAH.</p><p>Parte 2</p><p>Estrutura de um Computador</p><p>SISTEMAS OPERACIONAIS24</p><p>Estrutura de um computador</p><p>Objetivos de aprendizagem</p><p>Ao final deste texto, você deve apresentar os seguintes aprendizados:</p><p>� Diferenciar os principais módulos e placas do PC</p><p>� Reconhecer o processo de montagem dos principais módulos do PC</p><p>� Definir placa-mãe, processadores, ponte norte/sul, BIOS</p><p>Introdução</p><p>O hardware do computador inclui suas partes físicas, que são compo-</p><p>nentes como a unidade central de processamento, monitor, teclado,</p><p>armazenamento de dados, placa gráfica, placa de som, alto-falantes</p><p>e placa-mãe. Por outro lado, o software é uma instrução que pode ser</p><p>armazenada e executada pelo hardware.</p><p>O hardware é assim chamado por ser "rígido" em relação a mudan-</p><p>ças ou modificações. O software é "soft" porque pode ser facilmente</p><p>atualizado ou alterado. Entre o software e o hardware existe também</p><p>o firmware, que é um software fortemente acoplado a um hardware</p><p>específico de um sistema de computador, difícil de mudar mas também</p><p>entre os mais estáveis no que diz respeito à consistência da interface.</p><p>A progressão dos níveis de "dureza" para "suavidade" nos sistemas de</p><p>computação é paralela a uma progressão de camadas de abstração</p><p>na computação.</p><p>Neste capítulo, você vai aprender a diferenciar os principais módulos</p><p>e placas do PC, reconhecer o processo de montagem dos principais</p><p>módulos do PC e a definir placa-mãe, processadores, ponte norte/sul</p><p>e BIOS.</p><p>Módulos e placas do PC</p><p>Um PC moderno é, ao mesmo tempo, simples e complexo. É simples no sentido</p><p>de que, ao longo dos anos, muitos dos componentes usados para construir um</p><p>25 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>sistema foram integrados a outros componentes, reduzindo as partes reais do</p><p>equipamento. É complexo, porém, no sentido de que cada parte de um sistema</p><p>moderno executa muito mais funções do que os mesmos tipos de peças em</p><p>sistemas mais antigos (LOWN, 2018).</p><p>Esta seção examina brevemente todos os componentes e periféricos em</p><p>um sistema de PC moderno. A seguir, listamos os componentes e periféricos</p><p>necessários para montar um sistema básico de PC moderno:</p><p>� placa-mãe (motherboard);</p><p>� processador;</p><p>� memória (RAM);</p><p>� gabinete;</p><p>� fonte de energia;</p><p>� unidade de disquete;</p><p>� disco rígido;</p><p>� unidade de CD-ROM, CD-RW ou DVD-ROM;</p><p>� teclado;</p><p>� mouse;</p><p>� cartão de vídeo;</p><p>� monitor;</p><p>� placa de som;</p><p>� caixas de som;</p><p>� modem.</p><p>Vamos entender a seguir o que faz cada um destes componentes e a sua</p><p>importância para as operações do computador.</p><p>A placa-mãe, também identificada como motherboard, é o núcleo do</p><p>sistema. É realmente o PC, pois tudo o mais está conectado a ela e ela controla</p><p>tudo no sistema. Uma placa-mãe é a principal placa de circuito impresso (PCB)</p><p>encontrada em microcomputadores de uso geral e outros sistemas expansíveis.</p><p>Ela mantém e permite a comunicação entre muitos dos componentes eletrôni-</p><p>cos cruciais de um sistema, como a unidade central de processamento (CPU)</p><p>e a memória, e fornece conectores para outros periféricos. Uma placa-mãe</p><p>geralmente contém subsistemas significativos, como o processador central,</p><p>os controladores de entrada/saída e de memória do chipset, os conectores de</p><p>interface e outros componentes integrados para uso geral e aplicações. Veja</p><p>um exemplo de placa-mãe na Figura 1.</p><p>Estrutura de um computador2</p><p>SISTEMAS OPERACIONAIS26</p><p>Figura 1. Placa-mãe Intel Socket 1156/Intel H55/DDR3/A&GbE/ATX.</p><p>O processador, também chamado de CPU (unidade central de processa-</p><p>mento), é considerado o "mecanismo" do computador. Trata-se do circuito</p><p>eletrônico que executa as instruções de um programa, como as operações</p><p>básicas de aritmética, lógica, controle e entrada/saída (E/S) especificadas pelas</p><p>instruções. Os principais componentes de um processador são a unidade lógica</p><p>aritmética (ULA); que realiza operações aritméticas e lógicas; registradores</p><p>de processador, que fornecem operações à ULA e armazenam os resultados</p><p>das operações; e uma unidade de controle que orquestra as buscas na memória</p><p>e a execução de instruções, orientando as operações coordenadas da ULA,</p><p>registros e outros componentes.</p><p>Veja na um exemplo de processador na Figura 2.</p><p>3Estrutura de um computador</p><p>27 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 2. Processador Intel Core i7.</p><p>A memória do sistema é frequentemente chamada de RAM (memória</p><p>de acesso aleatório, ou randômico). Essa é a memória principal, que contém</p><p>todos os programas e dados que o processador está usando em um determi-</p><p>nado momento. É um tipo de armazenamento que guarda temporariamente os</p><p>dados e o código da máquina que estão em uso. Um dispositivo de memória</p><p>RAM permite que os itens de dados sejam lidos ou gravados quase no mesmo</p><p>período de tempo, independentemente da localização física dos dados dentro</p><p>da memória. Em contraste com outras mídias de armazenamento de dados</p><p>de acesso direto, como discos rígidos, CD-RWs, DVD-RWs e as antigas fitas</p><p>magnéticas, que tem limitações mecânicas, como velocidades de rotação do</p><p>meio e movimento do braço, a memória RAM demanda tempo reduzido para</p><p>ler e gravar itens de dados. Veja, na Figura 3, um exemplo de memória RAM.</p><p>Figura 3. Módulo (também chamado de pente) de memória RAM modelo Kingston</p><p>KVR1333D3N9/2G.</p><p>Estrutura de um computador4</p><p>SISTEMAS OPERACIONAIS28</p><p>O gabinete, às vezes denominado de chassi ou case, é onde se abrigam</p><p>a placa-mãe, a fonte de alimentação, as unidades de disco, as placas adapta-</p><p>doras e quaisquer outros componentes físicos no sistema. Os gabinetes são</p><p>geralmente construídos em aço (aço inoxidável, galvanizado, laminado a frio,</p><p>bobina) ou alumínio. O plástico é usado às vezes e outros materiais, como</p><p>vidro, madeira e até mesmo peças de Lego, aparecem em gabinetes. Veja um</p><p>exemplo de gabinete na Figura 4.</p><p>Figura 4. Gabinete/chassi.</p><p>Fonte de energia é a fonte de alimentação, que fornece energia elétrica para</p><p>cada parte do PC. Uma unidade de fonte de alimentação (ou PSU) converte</p><p>a rede elétrica CA em energia CC regulada de baixa tensão para os compo-</p><p>nentes internos de um computador. Computadores pessoais modernos usam</p><p>universalmente fontes de alimentação de modo comutado. Algumas fontes</p><p>de alimentação possuem um interruptor manual para selecionar a tensão de</p><p>entrada, enquanto outras se adaptam automaticamente à tensão da rede. Veja</p><p>na Figura 5 um exemplo de fonte de alimentação/energia.</p><p>5Estrutura de um computador</p><p>29 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 5. Fonte de alimentação de energia.</p><p>A unidade de disquete é um dispositivo para receber uma mídia removível</p><p>simples, barata e de baixa capacidade</p><p>de armazenamento magnético. Atual-</p><p>mente, é raro encontrá-la em computadores, mas você poderá se deparar com</p><p>ela ao trabalhar com computadores legados. Embora as unidades de disquete</p><p>ainda tenham alguns usos limitados, especialmente com equipamento de</p><p>computador industrial legado, foram substituídas por métodos de armazena-</p><p>mento de dados com capacidade muito maior, como pen drives USB, cartões</p><p>de armazenamento flash, discos rígidos externos portáteis, discos ópticos e</p><p>armazenamento disponível através de redes de computadores. Veja na Figura</p><p>6 um exemplo de uma unidade de disquete.</p><p>O disco rígido é a memória primária de armazenamento de arquivos do</p><p>sistema. Uma unidade de disco rígido (HDD) é um dispositivo eletrome-</p><p>cânico de guarda de dados que usa armazenamento magnético para salvar</p><p>e recuperar informações digitais usando um ou mais discos de rotação</p><p>rápida, revestidos com material magnético. Os pratos são emparelhados</p><p>com cabeças magnéticas, geralmente dispostas em um braço leitor móvel,</p><p>que lê e grava dados nas superfícies dos discos. Os dados são acessados de</p><p>maneira aleatória, o que significa que blocos individuais de dados podem</p><p>ser armazenados ou recuperados em qualquer ordem e não apenas sequen-</p><p>cialmente. Os HDDs são um tipo de armazenamento não volátil, mantendo</p><p>os dados armazenados mesmo quando estão desligados. Veja um exemplo</p><p>de disco rígido na Figura 7.</p><p>Estrutura de um computador6</p><p>SISTEMAS OPERACIONAIS30</p><p>Figura 6. Disquete e driver.</p><p>Fonte: Dicas para computador (2018, documento on-line).</p><p>Figura 7. Disco rígido.</p><p>Fonte: Conceitos (2018, documento on-line).</p><p>7Estrutura de um computador</p><p>31 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>As unidades de CD-ROM (somente CD/somente leitura) e DVD-ROM</p><p>(disco digital versátil somente leitura) são unidades ópticas de mídia de ca-</p><p>pacidade relativamente alta. Durante a década de 1990 e 2000, os CD-ROMs</p><p>eram popularmente usados para distribuir softwares e dados para uso em</p><p>computadores e consoles de videogame. Alguns CDs, chamados de CDs apri-</p><p>morados, armazenam dados de computador e áudio, com os últimos podendo</p><p>ser reproduzidos em um CD player, enquanto os de dados (como software</p><p>ou vídeo digital) só podem ser usados em um computador. Também existem</p><p>drivers que permitem a leitura/escrita de DVDs e mídias blue-ray, utilizadas,</p><p>em sua maioria para armazenamento e reprodução de vídeos. Veja, na Figura 8,</p><p>um exemplo de CD-ROM.</p><p>Figura 8. CD-ROM.</p><p>Em um PC, o teclado é o dispositivo primário pelo usuário para se co-</p><p>municar e controlar um sistema. Um teclado de computador é um dispositivo</p><p>do tipo máquina de escrever que usa um arranjo de teclas para atuar como</p><p>alavancas mecânicas ou interruptores eletrônicos. Após o declínio dos car-</p><p>tões perfurados e da fita de papel, a interação por meio de teclados de estilo</p><p>teleprinter tornou-se o principal método de entrada para computadores. As</p><p>teclas do teclado (botões) normalmente possuem caracteres gravados ou im-</p><p>pressos neles e cada pressionamento de uma tecla normalmente corresponde</p><p>a um único símbolo escrito. No entanto, a produção de alguns símbolos pode</p><p>exigir pressionar e segurar várias teclas simultaneamente ou em sequência.</p><p>Enquanto a maioria das teclas do teclado produz letras, números ou sinais</p><p>(caracteres), outras teclas ou pressionamentos simultâneos de teclas podem</p><p>produzir ações ou executar comandos do computador. Veja um exemplo de</p><p>teclado na Figura 9.</p><p>Estrutura de um computador8</p><p>SISTEMAS OPERACIONAIS32</p><p>Figura 9. Teclado.</p><p>Embora muitos tipos de dispositivos apontadores estejam no mercado atu-</p><p>almente, o primeiro e mais popular dispositivo para essa finalidade é o mouse.</p><p>É um dispositivo apontador de mão que detecta movimento bidimensional</p><p>em relação a uma superfície. Esse movimento é normalmente traduzido no</p><p>movimento de um ponteiro em uma tela, o que permite um controle suave</p><p>da interface gráfica do usuário. Veja, na Figura 10, um exemplo de mouse.</p><p>Figura 10. Mouse.</p><p>9Estrutura de um computador</p><p>33 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>A placa de vídeo controla as informações que você vê no monitor. Trata-</p><p>-se de uma placa de expansão que gera uma alimentação de imagens de saída</p><p>para um monitor. No núcleo de uma placa gráfica/vídeo está a unidade de</p><p>processamento gráfico (GPU), parte principal, que faz os cálculos reais. Os</p><p>sistemas de conexão mais comuns entre a placa de vídeo e a tela do computador</p><p>são: VGA, DVI, HDMI, DisplayPort. Veja um exemplo de placa de vídeo na</p><p>Figura 11.</p><p>Figura 11. Placa de vídeo. Na imagem uma GTX 1050 da Nvidia.</p><p>A placa de som permite que o PC gere sons complexos. Também conhecida</p><p>como placa de áudio, é uma placa de expansão interna que fornece entrada e</p><p>saída de sinais de áudio de e para um computador, sob controle de softwares. O</p><p>termo placa de som também é aplicado a interfaces de áudio externas, usadas</p><p>para aplicativos de áudio profissionais. A funcionalidade de som também pode</p><p>ser integrada à placa-mãe, usando componentes semelhantes aos encontrados</p><p>em placas plug-in. O sistema de som integrado é muitas vezes ainda referido</p><p>como uma placa de som. Hardware de processamento de som também está</p><p>Estrutura de um computador10</p><p>SISTEMAS OPERACIONAIS34</p><p>presente em placas de vídeo modernas com HDMI, para saída de som junto</p><p>com o vídeo usando esse conector. Anteriormente usava-se uma conexão</p><p>SPDIF para a placa-mãe ou placa de som. Veja, na Figura 12, um exemplo de</p><p>uma placa de som não integrada com a placa-mãe.</p><p>Figura 12. Placa de som.</p><p>Atualmente, a maioria das placas-mãe já possuem alguns destes itens</p><p>anexados. Nesses casos, definimos o dispositivo como on board. Além disso,</p><p>também contamos com dispositivos USB que desempenham as mesmas fun-</p><p>ções, como drivers de CD/DVD, modens, mouses e teclados.</p><p>Processo de montagem</p><p>Agora que você já estudou a maioria dos componentes de um computador,</p><p>vamos conhecer o passo a passo de sua montagem. Inicialmente, você deve</p><p>ter todos os componentes disponíveis para a montagem, bem como chaves</p><p>do tipo philips, pasta térmica e, em alguns casos, pulseira antiestática</p><p>(LOWN, 2018). Veja o conjunto de equipamentos e componentes necessários</p><p>na Figura 13.</p><p>11Estrutura de um computador</p><p>35 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 13. Equipamentos para a montagem de um computador.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>Vamos ao passo a passo:</p><p>1. Aterrar. Use um cabo de pulseira antiestática para evitar descarga ele-</p><p>trostática (ESD) que pode ser fatal para os eletrônicos do computador. Se</p><p>você não conseguir um cabo de pulseira antiestático, conecte sua fonte</p><p>de alimentação aterrada a uma tomada (mas não a ligue) e mantenha sua</p><p>mão na unidade aterrada sempre que tocar em itens sensíveis a ESD.</p><p>2. Abrir o gabinete. Desparafuse o painel lateral (ou deslize-o em direção</p><p>à parte de trás do gabinete).</p><p>3. Instalar a fonte de alimentação. Alguns gabinetes vêm com a fonte de</p><p>alimentação já instalada, enquanto outros exigem que você compre</p><p>a fonte de alimentação separadamente e instale-a por conta própria.</p><p>Certifique-se de que a fonte de alimentação esteja instalada na orien-</p><p>tação correta e de que nada esteja bloqueando o ventilador da fonte de</p><p>alimentação. A fonte de alimentação normalmente vai perto do topo</p><p>do gabinete. Você pode determinar onde a fonte</p><p>de alimentação deve</p><p>ficar procurando uma seção ausente na parte de trás do gabinete. Veja</p><p>exemplo na Figura 14.</p><p>Estrutura de um computador12</p><p>SISTEMAS OPERACIONAIS36</p><p>Figura 14. Instalação de uma fonte no gabinete.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>4. Adicionar os componentes à placa-mãe. Geralmente é mais fácil fazer</p><p>isso antes de instalar a placa-mãe, quando suas possibilidades de co-</p><p>nectar componentes serão maiores.</p><p>5. Conectar o processador à placa-mãe, localizando a porta do proces-</p><p>sador na superfície da placa-mãe e conectando o cabo ou o conector</p><p>do processador à porta. Veja um exemplo desta conexão na Figura 15.</p><p>6. Anexar sua memória RAM à placa-mãe, encontrando os slots de me-</p><p>mória RAM e inserindo as placas de RAM de forma adequada (eles só</p><p>devem caber em um caminho). Veja a ação na Figura 16.</p><p>13Estrutura de um computador</p><p>37 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 15. Processador instalado na placa-mãe.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>Figura 16. Instalação da memória RAM na placa-mãe.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>Estrutura de um computador14</p><p>SISTEMAS OPERACIONAIS38</p><p>7. Conectar a fonte de alimentação à seção da fonte de alimentação da</p><p>placa-mãe.</p><p>8. Localizar (mas não conecte) a porta SATA do disco rígido da placa-</p><p>-mãe. Mais tarde, você vai usar isso para conectar o disco rígido com</p><p>a placa-mãe.</p><p>9. Aplicar a pasta térmica ao processador, se necessário. Coloque apenas</p><p>um pequeno ponto, do tamanho de um grão de arroz. Adicionar muita</p><p>pasta térmica cria problemas sérios, como colar o soquete da placa-mãe,</p><p>o que pode causar curto-circuito nos componentes e diminuir o valor</p><p>da própria placa-mãe se você planeja vendê-la mais adiante. Alguns</p><p>processadores vêm com dissipadores de calor e não precisam de pasta</p><p>térmica, pois o dissipador pode vir com esse produto já aplicado pela</p><p>fábrica. Portanto, verifique a parte inferior da unidade do dissipador</p><p>de calor antes de aplicar a pasta no processador.</p><p>10. Anexar o dissipador de calor. O procedimento dessa instalação varia de</p><p>um dissipador para outro. Leia, então, as instruções específicas para o</p><p>seu processador. A maioria dos coolers padrão se conecta diretamente</p><p>sobre o processador e o prende na placa-mãe. Dissipadores do mercado</p><p>de reposição podem ter suportes que precisam ser colocados embaixo</p><p>da placa-mãe. Pular esta etapa caso o processador tenha um dissipador</p><p>de calor instalado.</p><p>11. Preparar o gabinete. Você pode precisar derrubar as placas metálicas</p><p>na parte de trás do gabinete para encaixar seus componentes nas po-</p><p>sições corretas. Se o gabinete tiver unidades de prateleiras separadas</p><p>para prender o disco rígido, instale as unidades usando os parafusos</p><p>fornecidos. Você pode precisar instalar e conectar os ventiladores antes</p><p>de instalar qualquer componente. Se assim for, siga as instruções de</p><p>instalação do ventilador do seu caso.</p><p>12. Proteger a placa-mãe. Quando os espaçadores estiverem instalados,</p><p>coloque a placa-mãe no estojo e empurre-a contra a placa traseira. Todas</p><p>as portas traseiras devem encaixar nos orifícios da placa traseira de E/S.</p><p>Use os parafusos fornecidos para prender a placa-mãe aos espaçadores,</p><p>usando os orifícios que existem nela para essa finalidade.</p><p>15Estrutura de um computador</p><p>39 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 17. Instalação da placa-mãe no gabinete.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>13. Conectar os conectores do gabinete. Estes tendem a estar localizados</p><p>juntos na placa-mãe, perto da frente do gabinete. Não é preciso obede-</p><p>cer a alguma ordem em que estes devem ser conectados. Determine a</p><p>ordem de forma a tornar o trabalho mais fácil e seguro. Certifique-se</p><p>de conectar as portas USB; as chaves liga/desliga e de reinicialização;</p><p>as luzes LED de energia e disco rígido e o cabo de áudio. A documen-</p><p>tação da sua placa-mãe mostrará aonde ela recebe esses conectores.</p><p>Normalmente, há apenas uma maneira de colocar esses conectores.</p><p>Portanto, não tente forçar qualquer coisa a se encaixar.</p><p>14. Instalar o disco rígido. Em alguns casos, esse processo pode variar</p><p>um pouco.</p><p>15. Remover todos os painéis frontais do gabinete (se você estiver insta-</p><p>lando uma unidade óptica, geralmente deverá colocá-la perto do topo</p><p>do gabinete).</p><p>16. Inserir o disco rígido em seu slot. Veja exemplo na Figura 18.</p><p>17. Apertar os parafusos necessários para manter a unidade no lugar.</p><p>18. Conectar o cabo SATA do disco rígido no slot SATA da placa-mãe.</p><p>Veja a Figura 19.</p><p>Estrutura de um computador16</p><p>SISTEMAS OPERACIONAIS40</p><p>Figura 18. Instalação do HD (disco rígido) no gabinete.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>Figura 19. Cabos de conexão SATA e energia do disco rígido.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>17Estrutura de um computador</p><p>41 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>19. Ligar a fonte de alimentação a quaisquer componentes necessários.</p><p>Se você ainda não conectou a fonte de alimentação aos componentes</p><p>que precisam de energia, verifique se ela está conectada aos seguintes</p><p>locais: placa-mãe, placas gráficas, discos rígidos. Veja as saídas dos</p><p>cabos de energia na Figura 20.</p><p>Figura 20. Saída de cabos de energia da fonte.</p><p>Fonte: Bourque (2018, documento on-line).</p><p>20. Concluir a montagem do seu computador. Uma vez que você colocou</p><p>e conectou os vários componentes internos, resta garantir que nenhum</p><p>dos fios irá interferir na circulação. Feita essa verificação, feche o</p><p>gabinete.</p><p>21. Se você comprou um sistema de refrigeração, vai querer instalá-lo</p><p>antes de prosseguir. Consulte as instruções de instalação do sistema</p><p>de resfriamento para fazer isso. Em muitos casos haverá um painel</p><p>que será colocado de volta em seu lugar ou aparafusado na lateral</p><p>do gabinete.</p><p>Estrutura de um computador18</p><p>SISTEMAS OPERACIONAIS42</p><p>Processador e componentes da placa-mãe</p><p>Uma ponte do tipo norte (northbridge) ou host é um dos dois chips da arquitetura</p><p>do chipset da lógica principal em uma placa-mãe do PC, sendo a outro a ponte</p><p>sul (southbridge). Ao contrário da southbridge, a northbridge é conectada</p><p>diretamente à CPU por meio do barramento frontal (FSB). É responsável</p><p>por tarefas que exigem o mais alto desempenho. A ponte norte geralmente é</p><p>emparelhada com uma ponte sul, também conhecida como hub de controlador</p><p>de E/S. Nos sistemas em que estão incluídos, esses dois chips gerenciam as</p><p>comunicações entre o processador e outras partes da placa-mãe e constituem</p><p>o chipset principal da placa-mãe do PC (LOWN, 2018).</p><p>Em PCs baseados em Intel mais antigos, a northbridge também era de-</p><p>nominado hub controlador de memória externa (MCH) ou hub de gráficos e</p><p>controlador de memória (GMCH), se equipado com gráficos integrados. Cada</p><p>vez mais essas funções foram integradas ao próprio chip da CPU, começando</p><p>pelos controladores de memória e gráficos. Para os processadores Intel Sandy</p><p>Bridge e AMD Accelerated Processing Unit, introduzidos em 2011, todas as</p><p>funções da ponte norte residem na CPU, enquanto as CPUs AMD FX ainda</p><p>precisam de chips externos northbridge e southbridge.</p><p>Separar as diferentes funções dos chips CPU, northbridge e southbridge</p><p>foi necessário devido à dificuldade de integrar todos os componentes em um</p><p>único chip. Em alguns casos, porém, as funções northbridge e southbridge</p><p>já foram combinadas, quando</p><p>a complexidade do design e os processos de</p><p>fabricação permitiram. Por exemplo, a Nvidia GeForce 320M no 2010 MacBook</p><p>Air é um chip combinado northbridge/southbridge/GPU. Veja na Figura 21,</p><p>um organograma com as pontes norte e sul (LOWN, 2018).</p><p>19Estrutura de um computador</p><p>43 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>Figura 21. Organograma com as pontes norte e sul.</p><p>Fonte: Laboratório de Hardware (2015, documento on-line).</p><p>Com o aumento da velocidade das CPUs ao longo do tempo, acabou sur-</p><p>gindo um gargalo entre o processador e a placa-mãe, devido a descompassos</p><p>na transmissão de dados entre a CPU e seu chipset de suporte. Assim, a partir</p><p>dos processadores da série AMD Athlon 64 (baseados no Opteron), uma</p><p>nova arquitetura foi usada, onde algumas funções dos chips northbridge e</p><p>southbridge foram movidas para a CPU. Os modernos processadores Intel</p><p>Core têm o northbridge integrado no chip da CPU, sendo conhecido como</p><p>uncore ou system agent.</p><p>Estrutura de um computador20</p><p>SISTEMAS OPERACIONAIS44</p><p>A southbridge (ponte sul) é um dos dois chips do chipset de lógica principal</p><p>em uma placa-mãe de computador pessoal (PC), sendo o outro a northbridge. A</p><p>southbridge normalmente implementa as capacidades mais lentas da placa-mãe,</p><p>em uma arquitetura de computador de chipset northbridge/southbridge. Em sis-</p><p>temas com chipsets Intel, a southbridge é denominada ICH (Intel / O Controller</p><p>Hub), enquanto a AMD nomeou seu FCH (Fusion Controller Hub) Southbridge</p><p>desde a introdução de sua Fusion Accelerated Processing Unit (APU) Fusion.</p><p>A ponte sul geralmente pode ser distinguida da ponte norte por não estar</p><p>diretamente conectada à CPU. Em vez disso, a ponte norte liga a ponte sul à</p><p>CPU. Através do uso do circuito de canal integrado do controlador, a ponte</p><p>norte pode ligar diretamente os sinais das unidades de E/S à CPU para controle</p><p>e acesso de dados (WILSON, 2018).</p><p>Também é interessante que você conheça a BIOS. A BIOS (Basic Input /</p><p>Output System) é um firmware não volátil, usado para executar a inicialização</p><p>de hardware durante o processo de inicialização, e para fornecer serviços de</p><p>tempo de execução para sistemas operacionais e programas. O firmware do</p><p>BIOS vem pré-instalado na placa de sistema de um computador pessoal e é</p><p>o primeiro software a ser executado quando ligado. O nome é originário do</p><p>Sistema Básico de Entrada/Saída usado no sistema operacional CP/M em 1975.</p><p>Originalmente propriedade do IBM PC, o BIOS foi submetido a engenharia</p><p>reversa por empresas que buscavam criar sistemas compatíveis. A interface</p><p>desse sistema original serve como um padrão de fato (LOWN, 2018).</p><p>O BIOS em PCs modernos inicializa e testa os componentes de hardware</p><p>do sistema e liga um carregador de inicialização a partir de um dispositivo</p><p>de memória de massa, que inicializa um sistema operacional. Na era do MS-</p><p>-DOS, o BIOS fornecia uma camada de abstração de hardware para o teclado,</p><p>exibição e outros dispositivos de entrada/saída (E/S) que padronizavam uma</p><p>interface para os programas aplicativos e o sistema operacional. Sistemas</p><p>operacionais mais recentes não usam o BIOS após o carregamento, acessando</p><p>os componentes de hardware diretamente (WILSON, 2018).</p><p>Você pode verificar vários tipos de hardware neste site, que possui um levantamento</p><p>dos tipos de hardware de A a Z.</p><p>https://goo.gl/b4xSjL</p><p>21Estrutura de um computador</p><p>45 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Estrutura de um Computador PARTE 2</p><p>BOURQUE, B. How to build a computer. 21 nov. 2018. Disponível em: . Acesso em: 17 dez. 2018.</p><p>CONCEITOS. Disco Rígido (hard drive): conceito, o que é, Significado. 2018. Disponível</p><p>em: . Acesso em: 17 dez. 2018.</p><p>DICAS PARA COMPUTADOR. A história e o futuro do Disco Rígido – HD (Hard Disk). 2018.</p><p>Disponível em: . Acesso em: 17 dez. 2018.</p><p>LABORATÓRIO DE HARDWARE. Chipset Ponte NORTE. 29 set. 2015. Disponível em: . Acesso</p><p>em: 17 dez. 2018.</p><p>LOWN, H. Computer Hardware and Software: Computer organization and design. Seattle:</p><p>Amazon, 2018.</p><p>WILSON, K. Essential Computer Hardware: The Illustrated Guide to Understanding Com-</p><p>puter Hardware. Widnes: Elluminet Press, 2018.</p><p>Leituras recomendadas</p><p>GERALDI, L. M. A.; GALASSI, C. R.; FORMICE, C. R. Elucidando Os Sistemas Operacionais:</p><p>um estudo sobre seus conceitos. Joinville: Clube dos autores, 2013.</p><p>SILBERSCHATZ, A.; GAGNE, G.; GALVIN, P. B. Sistemas Operacionais com Java. 8. ed. Rio</p><p>de Janeiro: Campus, 2016.</p><p>TANENBAUM, A. S.; BOS, H. Sistemas operacionais modernos. 4. ed. São Paulo: Pearson,</p><p>2015.</p><p>Estrutura de um computador22</p><p>ENCERRA AQUI O TRECHO DO LIVRO DISPONIBILIZADO</p><p>PELA SAGAH PARA ESTA PARTE DA UNIDADE.</p><p>PREZADO ESTUDANTE</p><p>unidade</p><p>1</p><p>O conteúdo deste livro é</p><p>disponibilizado por SAGAH.</p><p>Parte 3</p><p>Componentes de hardware e</p><p>Software do PC</p><p>SISTEMAS OPERACIONAIS48</p><p>Componentes de Hardware</p><p>e Software do PC</p><p>Objetivos de aprendizagem</p><p>Ao final deste texto, você deve apresentar os seguintes aprendizados:</p><p>� Identificar drivers, programas e tipos de sistemas operacionais.</p><p>� Reconhecer corretamente o multímetro e seu uso em fonte de</p><p>alimentação.</p><p>� Definir tensão, corrente e resistência.</p><p>Introdução</p><p>Você já experimentou utilizar um computador desconfigurado ou</p><p>funcionando pela metade?</p><p>Não é nada agradável, não é mesmo? Muitas vezes, isso ocorre por</p><p>falta de drivers corretos para comunicar o hardware com o sistema</p><p>operacional. O driver é essencial para o correto funcionamento do seu</p><p>equipamento com os demais componentes que formam o computador.</p><p>Neste texto, você vai conhecer os componentes de hardware e sof-</p><p>tware. Além disso, vai identificar os drivers, programas e tipos de siste-</p><p>mas operacionais, bem como as partes físicas do computador.</p><p>Drivers</p><p>São chamados de drivers os softwares que permitem a combinação do har-</p><p>dware, que é a parte física do computador, placa mãe e com outros disposi-</p><p>tivos com o sistema operacional. É o driver que converte as informações do</p><p>hardware para o sistema operacional do computador. É ele que cuida quando</p><p>ao se abrir um requerimento, o processo seja executado, sendo permitida a</p><p>interação do software com o dispositivo.</p><p>O driver é essencial para o correto funcionamento do seu equipamento (a</p><p>qual o driver foi desenvolvido) com os demais componentes que formam o</p><p>computador.</p><p>Existem vários tipos de placas-mãe e sistemas operacionais. Cada fabri-</p><p>cante deve fornecer um driver especifico para cada função. Como exemplo,</p><p>49 Introdução aos Sistemas Operacionais e Contexto Histórico UNIDADE 1</p><p>Componentes de Hardware e Software do PC PARTE 3</p><p>uma placa de rede tem diferentes drivers para os S.O. Windows 10, Windows</p><p>8, Windows 7, MascOS e Linux.</p><p>“Para se usar de um driver, ele tem de ser colocado dentro do sistema</p><p>operacional, para que e tenha uma execução de modo núcleo.” (Tanenbaum,</p><p>p.17,2009)</p><p>Programas</p><p>Os programas, aplicações ou aplicativos, como os chamamos, são softwares</p><p>responsáveis para executar determinadas tarefas. Estes softwares não são os</p><p>sistemas operacionais, mas rodam em um sistema operacional, que por usa vez</p><p>é um software responsável pelo gerenciamento dos programas com o hardware.</p><p>Com o advento dos smartphones, temos</p>

Mais conteúdos dessa disciplina