Oficina de Montagem e Manutenção de C

Transcrição

Oficina de Montagem e Manutenção de C
Of
Ofici
icina
na
Montagem e Manutenção
de Computadores
Objetivo
Ensino prático da manutenção e montagem de micro-computadores que foram captados
em doações. O curso apresenta componentes hardware (placa mãe, processador,
memória ram, hd, placa off boards em geral), ensina a configurar a BIOS (Sistema
Básico de Entrada/Saída) e, por fim, instalação do sistema Linux.
Atividades
Manipulação e encaixe das placas de computadores,configuração das placas na BIOS.
As aulas são teóricas e práticas.
Cronograma do projeto
Os encontros são realizados 2 vezes por semana com a duração de 2 horas cada,
totalizando 12h de carga horária.
Período: 3 semanas
1º dia : Apresentar a placa-mãe, bem com o suas caracteristicas técnicas (on/off-board;
chipset, slots; portas de comunicação; diferentes modelos; fabricantes; porque não
temos Hardware-Livre ainda e como seria se tivessemos).
Como funciona o fluxo de energia no computador (Corrente Eletrônica; Comportamento
de elétrons; Propriedades termodinâmicas dos metais encontrados no processador)
2º dia : Como funciona o processador? (Conceitos básicos de válvulas e transistor;
Arquitetura eletrônica do componente; Empacotamento de dados; Frequência de
processamento - Unidades de Medida; Linguagem binária - 0,1; Cooler -propriedades e
utilização do mesmo). - Montagem da placa-mãe com o processador e o cooler.
3º dia : Hard Disk - H.D. e Memória R.A.M. (Gravação de 0,1 - negativo/positivo no
disco magnético do H.D; Comunicação do mesmo com a placa-mãe pela porta IDE; o
que são BADBLOCK's e porque aparecem; Modelos de Formatação; Particionamento;
Características tecnicas como RPM e Capacidade de Armazenamento).
Processamento de dados em bits; O que é R.A.M. e R.O.M.; porque usamos diferentes
tipos de memória; Barramento e comportamento.
4º dia : Fonte do Computador (Voltagem Real; Voltagem de Pico; Trafo; Correntes);
BIOS, o que é e como funciona?; Tecnicas de Manutenção e Reparos; Limpeza; - Simular
situações onde os oficinandos devem reparar supostos erros no micro-computador e
colocá-lo para funcionar.
5º dia : Instalação de um Sistema Operacional GNU/Linux; O que é Software-Livre;
Configurações padrão; instalação de aplicativos básicos; Distribuição de um CD com S.O.
Linux para cada oficinando.
Wikistila Ctrl+C Ctrl+V
(Apostila criada com dados da Wikipédia)
Placa-mãe
Origem: Wikipédia, a enciclopédia livre.
Placa ASRock
Placa-mãe, também denominada mainboard ou motherboard, é uma placa de
circuito impresso, que serve como base para a instalação dos demais componentes de
um computador, como o processador, memória RAM, os circuitos de apoio, as placas
controladoras, os slots do barramento e o chipset.
Índice
• 1 Tipos de placas-mãe
◦ 1.1 AT
◦ 1.2 AT e ATX (simultaneamente)
◦ 1.3 ATX
◦ 1.4 BTX
◦ 1.5 LPX
◦ 1.6 ITX
• 2 Funcionamento
• 3 Componentes
•
•
•
•
4
5
6
7
◦ 3.1 Processador
◦ 3.2 Memória RAM
◦ 3.3 BIOS
◦ 3.4 Bateria
◦ 3.5 Chipset
◦ 3.6 Slots de expansão
Controladores
Componentes
Ver também
Referências
Tipos de placas-mãe
AT
Placa-mãe com slot ISA (destaque)
AT é a sigla para (Advanced Technology). Trata-se de um tipo de placa-mãe já antiga.
Seu uso foi constante de 1983 até 1996. Um dos factores que contribuíram para que o
padrão AT deixasse de ser usado (e o ATX fosse criado), é o espaço interno reduzido,
que com a instalação dos vários cabos do computador (flat cable, alimentação),
dificultavam a circulação de ar, acarretando, em alguns casos danos permanentes à
máquina devido ao super aquecimento. Isso exigia grande habilidade do técnico
montador para aproveitar o espaço disponível da melhor maneira. Além disso, o conector
de alimentação da fonte AT, que é ligado à placa-mãe, é composto por dois plugs
semelhantes (cada um com seis pinos), que devem ser encaixados lado a lado, sendo
que os fios de cor preta de cada um devem ficar localizados no meio. Caso esses
conectores sejam invertidos e a fonte de alimentação seja ligada, a placa-mãe será
fatalmente queimada. Com o padrão AT, é necessário desligar o computador pelo
sistema operacional, aguardar um aviso de que o computador já pode ser desligado e
clicar no botão "Power" presente na parte frontal do gabinete. Somente assim o
equipamento é desligado. Isso se deve a uma limitação das fontes AT, que não foram
projetadas para fazer uso do recurso de desligamento automático. Os modelos AT
geralmente são encontrados com slots ISA, EISA, VESA nos primeiro modelos e, ISA e
PCI nos mais novos AT (chamando de baby AT quando a placa-mãe apresenta um
tamanho mais reduzido que os dos primeiros modelos AT). Somente um conector
"soldado" na própria placa-mãe, que no caso, é o do teclado que segue o padrão DIN e o
mouse utiliza a conexão serial. Posição dos slots de memória RAM e socket de CPU
sempre em uma mesma região na placa-mãe, mesmo quando placas de fabricantes
diferentes. Nas placas AT são comuns os slots de memória SIMM ou SDRAM, podendo vir
com mais de um dos padrões na mesma placa-mãe. 10ºI
AT e ATX (simultaneamente)
Modelo de transição entre o AT e o ATX uma vez que as duas tecnologias são
encontradas simultaneamente. Esta é uma estratégia criada pelos fabricantes para
obterem maior flexibilidade comercial.
ATX
Conectores PS/2
ATX é a sigla para (Advanced Technology Extended). Pelo nome, é possível notar que
trata-se do padrão AT aperfeiçoado. Um dos principais desenvolvedores do ATX foi a
Intel. O objetivo do ATX foi de solucionar os problemas do padrão AT (citados
anteriormente), o padrão apresenta uma série de melhorias em relação ao anterior.
Atualmente todos os computadores novos vêm baseados neste padrão. Entre as
principais características do ATX, estão:
• o maior espaço interno, proporcionando uma ventilação adequada,
• conectores de teclado e mouse no formato mini-DIM PS/2 (conectores menores)
• conectores serial e paralelo ligados diretamente na placa-mãe, sem a
necessidade de cabos,
• melhor posicionamento do processador, evitando que o mesmo impeça a
instalação de placas de
expansão por falta de espaço.
Conector de energia ATX (24 furos)
Placa-mãe ATX com slot AGP (destaque)
Quanto à fonte de alimentação, encontramos melhoras significativas. A começar pelo
conector de energia ligado à placa-mãe. Ao contrário do padrão AT, não é possível
encaixar o plug de forma invertida. Cada orifício do conector possui um formato, que
dificulta o encaixe errado. A posição dos slots de memória RAM e socket de CPU variam
a posição conforme o fabricante. Nestas placas serão encontrados slots de memória
SDRAM, Rambus, DDR, DDR-II ou DDR-III, podendo vir com mais de um dos padrões na
mesma placa-mãe. Geralmente os slots de expansão mais encontrados são os PCI, AGP,
AMR/CNR e PCI-Express. As placas mais novas vêm com entrada na própria placa-mãe
para padrões de disco rígido IDE, Serial ATA ou Serial ATA II. Gerenciamento de energia
quando desligado o micro, suporta o uso do comando "shutdown", que permite o
desligamento automático do micro sem o uso da chave de desligamento encontrada no
gabinete. Se a placa mãe for alimentada por uma fonte com padrão ATX é possível ligar
o computador utilizando um sinal externo como, por exemplo, uma chamada telefônica
recebida pelo modem instalado.
BTX
Ver artigo principal: BTX
BTX é um formato de placas-mãe criado pela intel e lançado em 2003 para substituir o
formato ATX. O objetivo do BTX foi otimizar o desempenho do sistema e melhorar a
ventilação interna. Atualmente, o desenvolvimento desse padrão está parado.
LPX
Formato de placas-mãe usado por alguns PCs "de marca" como por exemplo Compaq.
Seu principal diferencial é não ter slots. Os slots estão localizados em uma placa a parte,
também chamada "backplane", que é encaixada à placa-mãe através de um conector
especial. Seu tamanho padrão é de 22 cm x 33 cm. Existe ainda um padrão menor,
chamado Mini LPX, que mede 25,4 cm x 21,8 cm.
Esse padrão foi criado para permitir PCs mais "finos", já que as placas de expansão em
vez de ficarem perpendiculares à placa-mãe, como é o normal, ficam paralelas.
Após o padrão de placas-mãe ATX ter sido lançado, uma versão do LPX baseada no ATX
foi lançada, chamada NLX.
Visualmente falando é fácil diferenciar uma placa-mãe LPX de uma NLX. No padrão LPX o
conector para a placa de expansão (backplane) está localizado no centro da placa-mãe e
este é um conector parecido com um slot (conector "fêmea"). Já no padrão NLX o
conector para a placa de expansão está localizado em uma das laterais da placa, e é um
contato de borda contendo 340 pinos, similar ao usado por placas de expansão (ou seja,
é um conector "macho").
ITX
[1]
É um padrão de placa-mãe criado em 2001 pela VIA Technologies.
Destinada a micros altamente integrados e compactados, com a filosofia de oferecer
não o computador mais rápido do mercado, mas sim o mais barato, já que na maioria
das vezes as pessoas usam um micro para poder navegar na Internet e editar textos.
A intenção da placa-mãe ITX é ter tudo on-board, ou seja, vídeo, áudio, modem e rede
integrados na placa-mãe.
Outra diferença dessa placa-mãe está em sua fonte de alimentação. Como possui menos
periféricos, reduzindo assim o consumo de energia, sua fonte de alimentação pode ser
fisicamente menor, possibilitando montar um computador mais compacto.
Funcionamento
A placa-mãe realiza a interconexão das peças componentes do microcomputador. Assim,
processador, memória, placa de vídeo, HD, teclado, mouse, etc. estão ligados
diretamente à placa-mãe. Ela possui diversos componentes eletrônicos (circuitos
integrados, capacitores, resistores, etc) e entradas especiais (slots) para que seja
possível conectar os vários dispositivos.
Componentes
Arquitetura de uma placa-mãe típica.
Vamos destacar os mais importantes componentes de uma placa mãe:
• Processador (conectado ao soquete)
• Memória RAM
• Bios (memória ROM)
• Bateria
• Chipset (norte e sul)
Conectores
• Slots de expansão (PCI, ISA, AGP...)
• Conector IDE
• Conector SATA
• Conector Mouse(br)/Rato(pt)
• Conector Teclado
• Conector Impressora (porta paralela)
• Conector USB
Processador
Ver artigo principal: Processador
Processador AMD-AthlonXP 1700+
O processador fica encaixado no soquete devendo observar que uma placa-mãe não
aceita qualquer tipo de processador, pois é desenvolvida para modelos específicos. Cada
tipo de processador tem características que o diferenciam de outros modelos, a
quantidade de pinos, por exemplo, ou o barramento da ponte norte. Assim sendo, a
placa-mãe deve ser desenvolvida para aceitar determinados processadores.
A freqüência é um dos itens que determinam a velocidade de processamento, entretanto
a quantidade de memória cache e o seu barramento é fundamental para a agilidade do
processador.
Memória RAM
Ver artigo principal: Memória RAM
DDR400 de 1GB da Kingston
SDRAM
As placas-mãe mais antigas trabalhavam com tecnologia conhecida com SDR SDRAM e a
DDR, atualmente o padrão mais usado é o DDR2.
Com relação à capacidade de instalação de memória RAM nas placas-mãe mais antigas
chegavam a 32Mb ou 64Mb, entretanto hoje não é dificil achar micros com pentes de
memória com 1 Gb (1024 Mb) ou 2 Gb (2048 Mb) e podendo expandir (dependendo da
placa-mãe) até 8 Gb (8192 Mb).
BIOS
Ver artigo principal: BIOS
Flash-ROM BIOS da American Megatrends 1992
BIOS (Basic Input Output System) é um tipo de chip (Flash-ROM) que contém um
pequeno software (256k) responsável por controlar o uso dos dispositivos e mantém
informações de data e hora. O BIOS trabalha junto com o POST, um software que testa
os componentes do micro em busca de eventuais erros. Podemos alterar as
configurações de hardware através do Setup, uma interface também presente na FlashROM.
Bateria
Bateria de Lítio CR2032 3V
A bateria interna do tipo Lítio(bateria de lítio) CR2032 tem a função de manter as
informações da Flash-ROM (EEPROM) armazenadas enquanto o computador está
desligado (somente em placas-mãe antigas, nas atuais sua principal função é manter o
relógio interno funcionando).
Chipset
Southbridge da placa-mãe ASUS P4P800-E
Northbridge da placa-mãe ASUS P4P800-E
Ver artigo principal: Chipset
Chipset é um chip (ou conjunto de chips) responsável pelo controle de diversos
dispositivos de entrada (input) e saída (output) como o barramento, o acesso à
memória, o acesso ao HD, periféricos on-board e off-board, comunicação do processador
com a memória RAM e entre outros componentes da placa-mãe. Geralmente, é dividido
em southbridge e northbridge.
• O northbridge faz a comunicação do processador com as memórias, através do
FSB (Front side bus), e com os barramentos de alta velocidade AGP e PCI
Express. Como ele faz o trabalho mais pesado, geralmente requer um dissipador
de calor devido ao seu aquecimento elevado.
• O southbridge geralmente é responsável pelo controle de dispositivos de
entrada ou saída (I/O) como as interfaces IDE que ligam os HDs, os drives de
CD-ROM, drives de DVD-ROM ao processador. Controlam também as interfaces
Serial ATA. Geralmente cuidam também do controle de dispositivos on-board
como o som.
Slots de expansão
placa de rede 100Mbit tipo PCI da NIC
Foto do adaptador gráfico tipo PCI Express Gigabyte com um chpiset NVIDIA (Geforce
6200TC)
Algumas tecnologias foram desenvolvidas para dar maior flexibilidade aos computadores
pessoais uma vez que cada cliente pretende utiliza-lo para um fim específico.
O barramento PCI ou (Peripheral Component Interconnect) é uma tecnologia para
conectar diferentes periféricos na Placa-mãe. Veja maiores detalhes no artigo Peripheral
Component Interconnect.
As placas-mãe mais antigas dispunham de outras tecnologias leia os artigos para saber
mais: barramento ISA, barramento EISA, barramento VESA.
O barramento AGP ou (Accelerated Graphics Port) é uma tecnologia de grande
desempenho para processamento de imagens. As placas AGP excedem um pouco em
tamanho as placas PCI. A tecnologia AGP já está sendo substituída pelo barramento PCI
Express. A tecnologia PCI Express conta com um recurso que permite o uso de uma ou
mais conexões seriais. Veja mais no artigo PCI Express.
Controladores
• On-board: como o próprio nome diz, o componente on-board vem diretamente
conectado aos circuitos da placa mãe, funcionando em sincronia e usando
capacidade do processador e memória RAM quando se trata de vídeo, som,
modem e rede. Tem como maior objetivo diminuir o preço das placas ou
componentes mas, em caso de defeito o dispositivo não será recuperável, no
caso de modem AMR, basta trocar a "placa" do modem AMR com defeito por
outra funcionando, pois, este é colocado em um slot AMR na placa-mãe. São
exemplos de circuitos on-board: vídeo, modem, som e rede.
• Off-board: são os componentes ou circuitos que funcionam independentemente
da placa mãe e por isso, são separados, tendo sua própria forma de trabalhar e
não usando o processador, geralmente, quando vídeo, som, modem ou rede, o
dipositivo é "ligado" a placa-mãe usando os slots de expansão para isso, têm um
preço mais elevado que os dispositivos on-board, sendo quase que totalmente o
contrário em todos os aspectos do tipo on-board, ou seja, praticamente todo o
processamento é realizado pelo próprio chipset encontrado na placa do
dispositivo.
Componentes
A placa-mãe pode variar conforme o modelo e fabricante, mas há componentes que se
mantêm:
• Slots
• Conectores
• Portas
• Bios
• Chipset
Processador
Origem: Wikipédia, a enciclopédia livre.
Processador Pentium III, da Intel.
Vista inferior de um Athlon XP 1800+ núcleo Palomino.
O processador é um circuito integrado que realiza as funções de cálculo e tomada de
decisão de um computador, por isso é considerado o cérebro do mesmo. Ele também
pode ser chamado de Unidade Central de Processamento (em inglês CPU: Central
Processing Unit).
Nos computadores de mesa (desktop) encontra-se alocado dentro do gabinete
juntamente com a placa-mãe e outros elementos de hardware. No passado, os
processadores eram constituídos de elementos discretos e ocupavam grandes espaços
físicos. Com o advento da microeletrônica, a válvula foi substituída pelo transistor, e este
por sua vez, permitiu integração em alta escala, originando os microprocessadores.
Os processadores trabalham apenas com linguagem de máquina (lógica booleana).
Realizam as seguintes tarefas:
- Busca e execução de instruções existentes na memória. Os programas e os dados que
ficam gravados no disco (disco rígido ou disquetes), são transferidos para a memória.
Uma vez estando na memória, o processador pode executar os programas e processar
os dados;
- Controle de todos os chips do computador.
Índice
• 1 Componentes
◦ 1.1 Unidade lógica e aritmética
◦ 1.2 Unidade de Controle
◦ 1.3 Registradores
◦ 1.4 Memory Management Unit
• 2 Frequência de Operação
• 3 Arquitetura
• 4 Modelos de Computação
• 5 Exemplos de processadores
• 6 Processadores da atualidade
• 7 Ver também
Componentes
O processador é composto basicamente de quatro partes:
Unidade lógica e aritmética
O componente principal, a Unidade lógica e aritmética (ULA) realiza todas as operações
lógicas e de cálculo que serão usadas para executar uma tarefa.
Unidade de Controle
A Unidade de controle (UC) é responsável pela tarefa de controle das ações a serem
realizadas pelo computador, comandando todos os outros componentes.
Registradores
Os registradores são pequenas memórias velozes que armazenam comandos ou valores
que utilizados no controle e processamento de cada instrução. Os registradores mais
importantes são: - Contador de Programa (PC) – Sinaliza para a próxima instrução a ser
executada; - Registrador de Instrução (IR) – Registra a instrução da execução; Os
outros realizam o armazenamento de resultados intermediários.
Memory Management Unit
A MMU (em inglês: Memory Management Unit) é um dispositivo de hardware que
transforma endereços virtuais em endereços físicos e administra a memória principal do
computador.
Frequência de Operação
O relógio do sistema (Clock) é um circuito oscilador a cristal (efeito piezoelétrico) que
tem a função de sincronizar e ditar a medida de tempo de transferência de dados no
computador. Esta freqüência é medida em ciclos por segundo, ou Hertz. A capacidade de
processamento não está relacionada exclusivamente à frequência do relógio, mas
também a outros fatores como: largura dos barramentos, quantidade de memória cachê,
arquitetura do processador, tecnologia de co-processamento, tecnologia de previsão de
saltos (branch prediction), tecnologia de pipeline, conjunto de instruções etc.
O aumento da frequência de operação nominal do processador é denominado
Overclocking.
Arquitetura
Existem duas principais arquiteturas usadas em processadores:
• A arquitetura de Von Newmann. Esta arquitetura caracteriza-se por apresentar
um barramento externo compartilhado entre dados e endereços. Embora
apresente baixo custo, esta arquitetura apresenta desempenho limitado pelo
gargalo do barramento.
• A arquitetura de Harvard. Nesta arquitetura existem dois barramentos externos
independentes (e normalmente também memórias independentes) para dados e
endereços. Isto reduz de forma sensível o gargalo de barramento, que é uma
das principais barreiras de desempenho, em detrimento do encarecimento do
sistema como um todo.
Modelos de Computação
Existem dois modelos de computação usados em processadores:
• CISC (em inglês: Complex Instruction Set Computing, Computador com um
Conjunto Complexo de Instruções), usada em processadores Intel e AMD; possui
um grande conjunto de instruções (tipicamente centenas) que são armazenadas
em uma pequena memória não-volátil interna ao processador. Cada posição
desta memória contém as microinstruções, ou seja, os passos a serem
realizados para a execução de cada instrução. Quanto mais complexa a
instrução, mais microinstruções ela possuirá e mais tempo levará para ser
executada. Ao conjunto de todas as microinstruções contidas no processador
denominamos microcódigo. Esta técnica de computação baseada em microcódigo
é denominada microprogramação.
• RISC (em inglês: Reduced Instruction Set Computing, Computador com um
Conjunto Reduzido de Instruções) usada em processadores PowerPC (da Apple,
Motorola e IBM) e SPARC (SUN); possui um conjunto pequeno de instruções
(tipicamente algumas dezenas) implementadas diretamente em hardware. Nesta
técnica não é necessário realizar a leitura em uma memória e, por isso, a
execução das instruções é muito rápida (normalmente um ciclo de clock por
instrução). Por outro lado, as instruções são muito simples e para a realização de
certas tarefas são necessárias mais instruções que no modelo CISC.
Exemplos de processadores
• Microprocessadores — São utilizados nos computadores pessoais, onde são
chamadas de Unidade Central de Processamento (CPU), workstations e
mainframes. Podem ser programados para executar as mais variadas tarefas.
• Processadores Digitais de Sinal (DSP do inglês Digital Signal Processor) — são
microprocessadores especializados em processamento digital de sinal usados
para processar sinais de áudio, vídeo, etc., quer em tempo real quer em off-line.
Estão presentes, por exemplo, em aparelhos de CD, DVD e televisores digitais.
Em geral, realizam sempre uma mesma tarefas simples.
• Microcontroladores — Processadores relativamente flexíveis, de relativo baixo
custo, que podem ser utilizados em projetos de pequeno tamanho. Podem trazer
facilidades como conversores A/D embutidos, ou um conjunto de instruções
próprias para comunicação digital através de algum protocolo específico.
• GPU — ou Unidade de Processamento Gráfico), é um microprocessador
especializado em processar gráficos. São utilizadas em placas de vídeo para
fazer computação gráfica.
Processadores da atualidade
Até os dias de hoje usou-se microprocessadores para atividades domésticas ou de
negócios com simples núcleo. Atualmente estão sendo utilizados microprocessadores de
múltiplos núcleos para melhorar a capacidade de processamento sem aumentar
diretamente o clock, como vinha-se fazendo. Assim, aumentando a capacidade sem
aumentar excessivamente o consumo de energia e superaquecer a CPU. Espera-se que
no futuro os Sistemas Operacionais domésticos sejam compilados para trabalhar com
processadores de múltiplos núcleos corretamente, realizando assim inúmeras tarefas ao
mesmo tempo (como já acontece com os supercomputadores).
Código de máquina
Origem: Wikipédia, a enciclopédia livre.
Todo computador possui um conjunto de instruções que seu processador é capaz de
executar. Essas instruções, chamadas de código de máquina, são representadas por
sequências de bits, normalmente limitadas pelo número de bits do registrador principal
da CPU.
As instruções correspondem a seqüencias muito simples de operações, como transferir
um dado em memória para a CPU ou somar dois valores e são normalmente
interpretadas por micro-código.
Um programa em código de máquina consiste de uma sequência de números que
significam uma sequência de instruções a serem executadas. É normal a representação
da linguagem de máquina por meio de números (opcodes) constantes e variáveis em
sistema binário ou sistema hexadecimal. Alguns computadores também têm seu opcodes
representados no sistema octal.
Microprocessadores tem normalmente seus códigos de operação como múltiplos de 2, 8
e 16, pois usam arquiteturas com registradores de 8,16,32,64 ou 128 bits em 2006.
Porém, existem máquinas com registradores de tamanho diferente.
Os programas de computador raramente são criados em linguagem de máquina, mas
devem ser traduzidos (por compiladores) para serem executados diretamente pelo
computador. Existe a opção, em voga atualmente, de não executá-los diretamente, mas
sim por meio de um interpretador, esse sim rodando diretamente em código de máquina
e previamente compilado.
Visualização de programas em linguagem de máquina
Estes números não podem ser vistos num editor de texto, ou, caso se tente ver
aparecem apenas um texto sem significado devido à existência de caracteres de
controle. Abaixo pode-se ver o que é mostrado ao se abrir um código de máquina de um
PC com um editor de texto:
MZÀ�$Pÿv�èŠÿ]Ë3ÀP¸�F�
ë�ƒF��¸�<
uè2Àëä�Àt�Bª
Àu�C†à2Àùã�¬I,"t��"<\u�€<"u�¬I�öАé�îY�Ê.Ž�t�‰�”�C�Û�Û‹ô‹ì+ërâ‹å‰.–�Œ�˜�ã�‰v
ÿv��èÅ�ƒÄ�ÿvþÿvü�èüêYY‹V�‹F�ë�Rÿvþÿvü�èWíƒÄ�‹å]ËU‹ìƒìHVW‹~�‹F�‰Fþ�Àu
´�Í!´3Àé•Š�˜‹ØŠ‡Ïn
Pode-se editar o código de máquina usando programas editores binários.. Com estes
programas pode-se ver o código não em binário, mas em hexadecimal, como mostrado
abaixo nesta captura da tela.
-d 0 100
0E3D:0000 CD 20 FF 9F 00 9A F0 FE-1D F0 4F 03 F0 07 8A 03
.
........O.....
0E3D:0010 F0 07 17 03 F0 07 DF 07-01 01 01 00 02 FF FF FF
................
0E3D:0020 FF FF FF FF FF FF FF FF-FF FF FF FF BD 0D 4C 01
..............L.
0E3D:0030 D0 0C 14 00 18 00 3D 0E-FF FF FF FF 00 00 00 00
......=.........
0E3D:0040 05 00 00 00 00 00 00 00-00 00 00 00 00 00 00 00
................
0E3D:0050 CD 21 CB 00 00 00 00 00-00 00 00 00 00 20 20 20
.!...........
0E3D:0060 20 20 20 20 20 20 20 20-00 00 00 00 00 20 20 20
.....
0E3D:0070 20 20 20 20 20 20 20 20-00 00 00 00 00 00 00 00
........
No exemplo acima é mostrado à esquerda o endereço da memória (segmento:offset), ao
centro o código em hexadecimal e à direita como seria o texto em ASCII..
Mais eficiente do que tudo isso seria conseguir um programa dedicado para manipulação
de código de máquina. Tais programas, porém, não são de uso comum, pois é muito
mais adequado programar em um Linguagem Assembly.
Programação em código de máquina
Programar diretamente em código de máquina costuma ser exaustivamente difícil, pois
requer o conhecimento dos opcodes, dos operandos e dos formatos de cada instrução.
Por esse motivo, foi criada uma linguagem de programação chamada linguagem de
montagem (Assembly Language), composta de códigos mnemônicos que, do ponto de
vista técnico, é tão próxima do processador quanto o código de máquina, mas é
humanamente mais fácil de se compreender uma vez que seus códigos são geralmente
acrônimos do inglês. Por exemplo ´mov´ de mover, ´rep´ de repetição e assim por
diante.
Na verdade, mesmo Assembly só é usado em ocasiões onde o uso de uma linguagem de
programação de alto nível é impossível ou proibitivo.
Bit
Origem: Wikipédia, a enciclopédia livre.
Nota: Não confundir com byte
Bit (simplificação para dígito binário, “BInary digiT” em inglês) é a menor unidade de
medida de transmissão de dados usada na Computação e na Teoria da Informação,
embora muitas pesquisas estejam sendo feitas em computação quântica com qubits. Um
bit tem um único valor, 0 ou 1, ou verdadeiro ou falso, ou neste contexto quaisquer dois
valores mutuamente exclusivos.
A matemática binária foi descrita inicialmente por George Boole, e por este motivo é
chamada de Álgebra Booleana.
Embora os computadores tenham instruções (ou comandos) que possam testar e
manipular bits, geralmente são idealizados para armazenar instruções em múltiplos de
bits, chamados bytes. No princípio, byte tinha tamanho variável mas atualmente tem
oito bits. Bytes de oito bits também são chamados de octetos. Existem também termos
para referir-se a múltiplos de bits usando padrões prefixados, como kilobit (kb), megabit
(Mb) e gigabit (Gb). De notar que a notação para bit utiliza um "b" minúsculo, em
oposição à notação para byte que utiliza um "B" maiúsculo (kB, MB, GB).
Fisicamente, o valor de um bit é, de uma maneira geral, armazenado como uma carga
elétrica acima ou abaixo de um nível padrão em um único capacitor dentro de um
dispositivo de memória. Mas, bits podem ser representados fisicamente por vários
meios. Os meios e técnicas comumente usados são: Pela eletricidade, como já citado,
por via da luz (em fibras ópticas, ou em leitores e gravadores de discos ópticos por
exemplo), por via de ondas eletromagnéticas (rede wireless), ou também, por via de
polarização magnética (discos rígidos).
Telecomunicações ou volume de tráfego em redes de computadores são geralmente
descritos em termos de bits por segundo. Por exemplo, “um modem de 56 kbps é capaz
de transferir dados a 56 kilobits em um único segundo” (o que equivale a 6,8 kilobytes
(kibibyte), 6,8 kB, com B maiúsculo para mostrar que estamos nos referindo a bytes e
não a bits. Ethernet transfere dados a velocidades que variam de 10 megabits por
segundo a 1 gigabit por segundo (de 1,19 a 119 megabytes(mebibyte) por segundo). No
Sistema Internacional (SI), os prefixos kilo-, mega-, etc às vezes têm o significado
modificado quando aplicados a bits e bytes (até bits toleram calculos decimais pois é
pontual ou é 0 ou é 1, já bytes não pois se fala dos dados agrupados): para explicação,
veja Prefixos binários.
Nome
bit
quilobit
megabit
gigabit
terabit
petabit
exabit
zettabit
yottabit
Prefixo do
Símbolo
b
kb
Mb
Gb
Tb
Pb
Eb
Zb
Yb
SI
Múltiplos de bits
Prefixo binário
Múltiplo
Nome
Símbolo
Múltiplo
100
bit
b
20
103
kibibit
Kib
210
6
10
mebibit
Mib
220
109
gibibit
Gib
230
12
10
tebibit
Tib
240
1015
pebibit
Pib
250
1018
exbibit
Eib
260
21
10
zebibit
Zib
270
1024
yobibit
Yib
280
Forma mais comum de contagem de múltiplos de bits ainda é pelos prefixos
da SI, pois os dados são tratados pontualmente, ou seja, ou é 0 ou é 1.
Saiba Mais...
Bit também é conceituado como a menor unidade de "informação" armazenável. O bit (0
ou 1)por ser um dado (fato não processado) não pode ser confundido como a menor
unidade de medida da informação, pois representa apenas valores que, somente em
conjunto (octeto ou byte), formarão a informação em si, que é o produto do
processamento desse conjunto de dados. Cabe salientar que o bit é usado como unidade
de medida sim, mas em transmissão de dados.
Byte
Origem: Wikipédia, a enciclopédia livre.
Nota: Não confundir com bit
Um
byte é
um dos
tipos
de
dados
Múltiplos de bytes
Prefixo binário (IEC)
Prefixo do SI
Nome
SímboloMúltiplo Nome SímboloMúltiplo
byte
B
20
byte
B
100
kibibyte(quilobyte) KiB
210
quilobyte kB
103
20
mebibyte(megabyte)MiB
2
megabyteMB
106
gibibyte(gigabyte) GiB
230
gigabyte GB
109
40
tebibyte(terabyte) TiB
2
terabyte TB
1012
pebibyte(petabyte) PiB
250
petabyte PB
1015
exbibyte(exabyte) EiB
260
exabyte EB
1018
70
zebibyte(zettabyte) ZiB
2
zettabyte ZB
1021
yobibyte(yottabyte) YiB
280
yottabyte YB
1024
integrais em computação. É usado com frequência para especificar o tamanho ou
quantidade da memória ou da capacidade de armazenamento de um computador,
independentemente do tipo de dados armazenados.
A codificação padronizada de byte foi definido como sendo de 8 bits. O byte de 8 bits é,
por vezes, também chamado de octeto, nomeadamente no contexto de redes de
computadores e telecomunicações.
A uma metade de um byte, dá-se o nome de nibble ou semioctecto.
Para os computadores, representar 256 números binários é suficiente. Por isso, os bytes
possuem 8 bits. Basta fazer os cálculos. Como um bit representa dois valores (1 ou 0) e
um byte representa 8 bits, basta fazer 2 (do bit) elevado a 8 (do byte) que é igual a
256.
Note que um byte nada tem de especial, é apenas um número binário de oito
algarismos. Sua importância na informática deriva apenas do fato do código ASCII haver
adotado números de oito bits, além de razões meramente construtivas ou operacionais.
Por exemplo: os códigos enviados a impressoras para controlar a impressão têm oito
bits, os valores trocados pelos modems entre computadores também, assim como
diversas outras operações elementares de intercâmbio de informações. Além disso,
memórias costumam ser organizadas de tal forma que as operações de leitura e escrita
são feitas com quantidades de um byte ou de um múltiplo de bytes (oito, dezesseis,
trinta e dois, sessenta e quatro ou cento e vinte e oito bits – o que corresponde a um,
dois, quatro, oito e dezesseis bytes, respectivamente).
Segundo norma da IEC, lançada em 2000, foi definida uma nova nomenclatura para
dados de base dois em substituição a nomenclatura usada erroneamente de base dez
separando a confusão causada entre proporção 1:1000 ou 1:1024, veja mais em
Prefixos Binários.
Índice
• 1 História
• 2 Quantidades
◦ 2.1 Byte (B)
◦ 2.2 Quilobyte (KB)
◦ 2.3 Megabyte (MB)
◦ 2.4 Gigabyte (GB)
◦ 2.5 Terabyte (TB)
◦ 2.6 Petabyte (PB)
◦ 2.7 Exabyte (EB)
◦ 2.8 Zettabyte (ZB)
◦ 2.9 Yottabyte (YB)
• 3 Ligações externas
• 4 Referências
História
No início da computação chegou-se a utilizar 1 byte = 6 bits no código BCD pois com 6
bits (64 caracteres) era possível representar todo o alfabeto alfanumérico A-Z, 0-9 além
de alguns caracteres especiais. Em terminais e impressoras Teletipo (TTY), conectados
através de interfaces seriais com o computador central, também usou-se uma variante
na comunicação de dados onde 1 byte = 7 bits e ainda hoje é possível configurar uma
interface RS32C para operar em 7 bits de dados. A transcodificação BASE64 usada até
[1][2]
hoje em documentos MIME na Internet
reflete a dificuldade passada de
comunicação de dados em 8 bits entre diferentes computadores. A primeira codificação
de 1 byte = 8 bits deve-se à IBM com a criação do código EBCDIC em 1960. A partir do
sucesso os computadores IBM, padronizou-se que 1 byte = 8 bits, surgindo também o
código ASCII de 8 bits em 1961. A representação dos caracteres nos computadores
atuais ganharam uma nova dimensão: os padrões EBCDIC (já em desuso há um bom
tempo) e ASCII estão sendo substituídos pelos códigos UNICODE UTF, UTF-16 e UTF-32
que podem demandar 1 byte, 2 bytes e até 4 bytes para representar uma letra do
alfabeto afim de acomodar as escritas em línguas mundiais.
Quantidades
Nota: Para outros significados de kB, ver kB (desambiguação).
Neste artigo exprimem-se as quantidades em prefixo binário (e não no Sistema
Internacional de Unidades), que é uma forma de quantificação utilizada em Informática
onde se torna mais útil utilizar potências de dois do que potências de dez. Têm o mesmo
10
nome das unidades do SI, embora sejam múltiplos de 1024 (2 ) no lugar de 1000
3
(10 ).
Byte (B)
3
• 1 Byte = 8 bits (2 bits).
Quilobyte (KB)
10
• 1 024 (2 ) Bytes
• 8 192 Bits
Megabyte (MB)
• 1 024 KB
20
• 1 048 576 (2 ) Bytes
• 8 388 608 Bits
Gigabyte (GB)
•
•
•
•
1
1
1
8
024
048
073
589
MB
576 KB
30
741 824 (2 ) Bytes
934 592 Bits
Terabyte (TB)
•
•
•
•
•
1
1
1
1
8
024
048
073
099
796
GB
576
741
511
093
MB
824 KB
40
627 776 (2 ) Bytes
022 208 Bits
Petabyte (PB)
•
•
•
•
•
•
1
1
1
1
1
9
024
048
073
099
125
007
TB
576
741
511
899
199
GB
824
627
906
254
MB
776 KB
50
842 624 (2 ) Bytes
740 992 Bits
TB
824
627
906
504
036
GB
776
842
606
854
MB
624 KB
60
846 976 (2 ) Bytes
775 808 Bits
TB
776
842
606
717
739
GB
624
846
411
290
MB
976 KB
70
303 424 (2 ) Bytes
427 392 Bits
PB
776
842
606
717
614
917
TB
624
846
411
629
033
GB
976
303
174
397
Exabyte (EB)
•
•
•
•
•
•
•
1
1
1
1
1
1
9
024
048
073
099
125
152
223
PB
576
741
511
899
921
372
Zettabyte (ZB)
•
•
•
•
•
•
•
•
1
1
1
1
1
1
1
9
024
048
073
099
125
152
180
444
EB
576
741
511
899
921
591
732
PB
824
627
906
504
620
965
Yottabyte (YB)
•
•
•
•
•
•
•
•
•
1
1
1
1
1
1
1
1
9
024
048
073
099
125
152
180
208
671
ZB
576
741
511
899
921
591
925
406
EB
824
627
906
504
620
819
556
MB
424 KB
80
706 176 (2 ) Bytes
649 408 Bits
Memória de acesso aleatório
Origem: Wikipédia, a enciclopédia livre.
Diferentes tipos de RAM. A partir do alto: DIP, SIPP, SIMM 30 pin, SIMM 72 pin, DIMM
(168-pin), DDR DIMM (184-pin)
Memória de acesso aleatório (do inglês Random Access Memory, frequentemente
abreviado para RAM) é um tipo de memória que permite a leitura e a escrita, utilizada
como memória primária em sistemas eletrônicos digitais.
O termo acesso aleatório identifica a capacidade de acesso a qualquer posição em
qualquer momento, por oposição ao acesso sequencial, imposto por alguns dispositivos
de armazenamento, como fitas magnéticas.
O nome não é verdadeiramente apropriado, já que outros tipos de memória (como a
ROM) também permitem o acesso aleatório a seu conteúdo. O nome mais apropriado
seria Memória de Leitura e Escrita.
Apesar do conceito de memória de acesso aleatório ser bastante amplo, atualmente o
termo é usado apenas para definir um dispositivo eletrônico que o implementa,
basicamente um tipo específico de chip. Nesse caso, também fica implícito que é uma
memória volátil, isto é, todo o seu conteúdo é perdido quando a alimentação da
memória é desligada.
Algumas memórias RAM necessitam que os seus dados sejam frequentemente
refrescados (atualizados), podendo então ser designadas por DRAM (Dynamic RAM) ou
RAM Dinâmica. Por oposição, aquelas que não necessitam de refrescamento são
normalmente designadas por SRAM (Static RAM) ou RAM Estática.
Do ponto de vista da sua forma física, uma RAM pode ser constituída por um circuito
integrado DIP ou por um módulo SIMM, DIMM, SO-DIMM, etc. Para computadores
pessoais elas são normalmente adquiridas em pentes de memória, que são placas de
circuito impresso que já contém várias memórias já montadas e configuradas de acordo
com a arquitetura usada na máquina.
10
A capacidade de uma memória é medida em Bytes, kilobytes (1 KB = 1024 ou 2
20
Bytes), megabytes (1 MB = 1024 KB ou 2 Bytes) ou gigabytes (1 GB = 1024 MB ou
30
2 Bytes).
A velocidade de funcionamento de uma memória é medida em Hz ou MHz. Este valor
está relacionado com a quantidade de blocos de dados que podem ser transferidos
durante um segundo. Existem no entanto algumas memórias RAM que podem efetuar
duas transferências de dados no mesmo ciclo de clock, duplicando a taxa de
transferência de informação para a mesma frequência de trabalho. Além disso, a
colocação das memórias em paralelo (propriedade da arquitetura de certos sistemas)
permite multiplicar a velocidade aparente da memória.
A memória principal de um computador baseado na Arquitetura de Von-Neumann é
constituída por RAM. É nesta memória que são carregados os programas em execução e
os respectivos dados do utilizador. Uma vez que se trata de memória volátil, os seus
dados são perdidos quando o computador é desligado. Para evitar perdas de dados, é
necessário salvar a informação para suporte não volátil (por ex. disco rígido), ou
memória secundária.
Para acelerar os acessos a memória de trabalho, utiliza-se normalmente uma memória
cache.
Invenção
O Escritório de Patentes americano forneceu a patente 3,387,286, "Field Effect
Transistor Memory", de 4 de julho de 1968, para Robert Langdon, da IBM, por uma
célula DRAM de um transistor (1 bit).
Ver também
•
•
•
•
•
•
•
•
•
•
•
•
•
SIMM
DIMM
SO-DIMM
SDR SDRAM
DDR SDRAM
DDR2
DDR3
Memória ROM
Memória cache
Memória flash
GDDR
Memória bolha
RAM-CMOS
DIMM
Origem: Wikipédia, a enciclopédia livre.
Pente de memória DIMM SDRAM-DDR da Kingston
DIMM - Dual Inline Memory Module, encapsulamento, é um dos tipos de memória
DRAM. As memórias DIMM estão divididas basicamente em dois tipos: as SDR SDRAM e
DDR SDRAM. São classificadas também de acordo com a quantidade de vias que
possuem, por exemplo, a SDR SDRAM que possui 168 vias e a DDR SDRAM que possui
184 vias. Ao contrário das memórias SIMM, estes módulos possuem contatos em ambos
os lados do pente, e daí lhes vem o nome (DIMM é a sigla de Dual Inline Memory
Module). São módulos de 64 bits, nao necessitando mais utilizar o esquema de ligação
das antigas SIMM's(Single Inline Memory Module), a paridade.
São comuns módulos de 64 MB, 128 MB, 256 MB, 512 MB, 1 GB, 2GB Algumas
memórias de antigamente , hoje já não são mais fabricadas , e são vendidas a preços
muito baixos !
SO-DIMM
Origem: Wikipédia, a enciclopédia livre.
SO-DIMM de 256MB
Uma memória SO-DIMM (acrônimo para small outline dual in-line memory module) é
um tipo de memória de computador.
As memórias SO-DIMM são uma alternativa menor às memórias DIMM, tendo
aproximadamente metade de seu tamanho. Como resultado, são usadas principalmente
em laptops, computadores pessoais com gabinetes pequenos, impressoras robustas de
escritório e equipamentos de rede como roteadores.
Sua configuração varia entre 72, 100, 144 ou 200 pinos. O pacote com 100 pinos
suporta tranferência de dados de 32 bits, enquanto os pacotes de 144 e 200 suportam
transferência de 64 bits. Em contraste, as memórias DIMM tradicionais possuem 168,
184 ou 240 pinos, todos suportando transferência de dados de 64 bits.
SDR SDRAM
Origem: Wikipédia, a enciclopédia livre.
Memória SDR SDRAM
Single Data Rate Sincronous Dynamic Random Access Memory ou SDR SDRAM é
um equipamento ou hardware de computador destinado a funcionar como memória
volátil do sistema. Ela é um memória que envia 1 dado por pulso de clock.
Definição SDR SDRAM
SDRAM não é um tipo de memória e sim um padrão. Existem 4 tipos de memórias com
esse padrão:
• SDR SDRAM: 1 dado por pulso de clock.
• DDR, DDR2 e DDR3 SDRAM: 2 dados por pulso de clock.
Veio para substiuir as memórias EDO que não era sincronizadas e tinham que esperar
um tempo para entregar o dado pedido pelo processador, assim tornando a SDR SDRAM
muito mais rápida. A memória SDR SDRAM tambem trouxe uma novidade, que em vez
de um grande banco de dados unificado, ela dividiu em 2, 4 ou 8. Utilizada no Pentium I,
II e III e no antigo Athlon. Obteve-se a necessidade de uma substituta, pela dificuldade
de atingir clocks maiores, assim foi criada a memória DDR.
Modelos
Existem 3 tipos de SDR SDRAM:
• PC66: Trabalha na freqüência de 66Mhz;
• PC100: Trabalha na freqüência de 100Mhz;
• PC133: Trabalha na freqüência de 133Mhz.
DDR SDRAM
Origem: Wikipédia, a enciclopédia livre.
Memória DDR 1GB 400 MHz PC3200 de 184 pinos
DDR SDRAM ou double-data-rate synchronous dynamic random access memory
(memória de acesso aleatório dinâmica síncrona de dupla taxa de transferência ) é um
tipo de circuito integrado de memória utilizado em computadores, derivada das muito
conhecidas SDRAM e combinada com a técnica DDR, que consiste em transferir dois
dados por pulso de clock, obtendo assim, teoricamente, o dobro de desempenho em
relação a técnica tradicional de transferência de dados quando operando sob a mesma
freqüência de clock.
A Era DDR
A DDR SDRAM foi criada para ter o dobro de desempenho em relação às memória
existentes (que passaram a ser chamadas SDR SDRAM) sem aumentar o clock da
memória.
A memória DDR SDRAM alcança uma largura de banda maior que a da SDR SDRAM por
usar tanto a borda de subida quanto a de descida do clock para transferir dados,
realizando efetivamente duas transferências por ciclo de clock. Isto efetivamente quase
dobra a taxa de transferência sem aumentar a freqüência do barramento externo. Desta
maneira, um sistema com SDRAM tipo DDR a 100 MHz tem uma taxa de clock efetiva de
200 MHz. Com os dados sendo transferidos 8 bytes por vez, a DDR SDRAM fornece uma
taxa de transferência de:
[freqüência do barramento da memória] × 2 (pois é uma taxa dupla) × [número de
bytes transferidos]
Assim, com uma freqüência de barramento de 100 MHz, a DDR SDRAM fornece uma
taxa de transferência máxima de 1600 MB/s.
Não foram necessárias grandes modificações nos módulos e nem nas placas-mãe, já que
a grande mudança das SDR para as DDR é a inclusão de alguns circuitos adicionais que
permitem à memória executar suas operações de transferência de dados duas vezes,
uma na borda ascendente e outra na descendente do ciclo de clock, além de usarem as
mesmas trilhas para realizar ambas as transmissões.
As memórias DDR se popularizaram devido ao bom ganho em performance sem um
considerável aumento no custo.
O grande problema é a demora no ciclo inicial que continua com o mesmo tempo das
memórias SDRAM. Com isso, apenas nas leituras de vários setores consecutivos é que
percebemos o ganho de performance e a taxa de transmissão nunca dobra realmente,
variando de acordo com o aplicativo usado.
Além da freqüência, podemos considerar também a taxa de latência CAS, identificada
por CL2, CL3, que representam a temporização CAS de 2 pulsos e 3 pulsos
respectivamente, ou seja, o tempo de acesso inicial à memória em ciclos. Por as DDR
efetuarem duas operações por ciclo, surgiram os módulos CL2.5 que indicam um meio
termo.
A perda de eficiência de um módulo com temporização CAS de 3 pulsos para um com
temporização de 2,5 pulsos estaria, teoricamente, entre 16-20 %. Porém, na prática,
essa diferença tende a variar na maioria das vezes para baixo devido às demais latências
envolvidas no processo de leitura e a atrasos impostos pelos demais subsistemas como a
controladora de memória, por exemplo.
Os modelos são especificados de acordo com a freqüência a qual o módulo opera. Por
exemplo, uma DDR-400 opera numa freqüência real de 200 MHz multiplicado por 2 pela
característica da dupla transferência. Essas especificações indicam a freqüência máxima
para a qual seu funcionamento foi comprovado, porém você pode usar o módulo a uma
freqüência mais baixa. Uma DDR-400 poderia ser usada em uma placa-mãe configurada
para trabalhar a 133 MHz, contudo, nesse caso não haveria ganho de desempenho com
relação a um módulo DDR-266, com exceção de pequenas diferenças relacionadas ao
valor CAS ou à temporização dos dois módulos.
Há também a possibilidade de aumentar a freqüência do clock para operar em taxas um
pouco mais altas, o chamado overclock. Nesse caso, o módulo DDR-400 funcionaria a
215 MHz, por exemplo. Não há perigo em se fazer overclock sem aumentar a tensão da
memória, porém não existe garantia de estabilidade. Geralmente módulos CL2 e CL2.5
suportam melhor os overclocks, já que o controlador tem mais margem para aumentar a
temporização dos módulos para compensar o aumento na freqüência.
Deve-se ter o cuidado de nivelar por baixo, ou seja, usar a freqüência suportada pelo
módulo mais lento ao usar dois módulos de especificações diferentes. Por isso nem
sempre é conveniente aproveitar os módulos antigos ao se fazer um upgrade, pois o
novo módulo acaba sendo subutilizado.
Existe um chip de identificação chamado de “SPD” (Serial Presence Detect), presente em
quase todos os módulos SDRAM e DDR, responsável por armazenar os códigos de
identificação do módulo, detalhes sobre a freqüência, tempos de acesso, CAS latency e
outras especificações. O SPD é um pequeno chip de memória EEPROM, com apenas 128
ou 256 bytes, que pode ser localizado facilmente no módulo. Através dele, a placa-mãe
pode utilizar automaticamente as configurações recomendadas para o módulo,
facilitando a configuração. Porém, pode-se desativar essa configuração (by SPD) e
especificar outra através do Setup.
DDR SDRAM DIMMs tem 184 pinos (em contra partida dos 168 pinos da SDR SDRAM).
As frequencias de clock das memorias DDR são padronizadas pelo JEDEC que é um
órgão de padronização de semicondutores da Aliança da Indústrias Eletrônicas.
Modelos
alguns modelos de DDR SDRAM: PC1600 ou DDR200 - 200 MHz clock anunciado, 100
MHz clock real. PC2100 ou DDR266 - 266 MHz clock anunciado, 133 MHz clock real.
PC2700 ou DDR333 - 333 MHz clock anunciado, 166 MHz clock real. PC3200 ou DDR400
- 400 MHz clock anunciado, 200 MHz clock real.
Nome
Clock dos Ciclo de
Clock Dados por
Nome do
Taxa de
padrão
chips
tempo
real
segundo
módulo
transferência
100
[1]
DDR-200 100 MHz
10 ns
200 Milhões
PC-1600
1600 MB/s
MHz
133
DDR-266 133 MHz
7.5 ns
266 Milhões
PC-2100
2100 MB/s
MHz
150
DDR-300 150 MHz
6.67 ns
300 Milhões
PC-2400
2400 MB/s
MHz
166
DDR-333 166 MHz
6 ns
333 Milhões
PC-2700
2700 MB/s
MHz
200
DDR-400 200 MHz
5 ns
400 Milhões
PC-3200
3200 MB/s
MHz
Dual-Channel
Um dos motivos pelos quais os computadores não alcançam todo seu poder
computacional é a lentidão das memórias por operarem com freqüências muito inferiores
aos da CPU deixando-a ociosa enquanto espera algum dado da memória. O problema é
que dificilmente as memórias alcancem um dia às mesmas freqüências de
processadores. Enquanto vemos processadores operando a mais de 3 GHz, as memórias
continuam com 400 MHz.
Para viabilizar a comunicação de modo mais eficaz, foi criado para os processadores
duas freqüências, uma interna, usada internamente para executar as instruções, e outra
externa, para acessar dispositivos externos, principalmente a memória. Mesmo assim,
ainda não é possível viabilizar a comunicação memória – CPU da forma mais eficiente
pois os processadores operam com freqüência no barramento externo ainda acima da
maioria das memórias.
Uma solução para minimizar esse problema é a memória Dual-Channel. Essas memórias,
ao invés de fazerem comunicação com o processador transferindo 64 bits, ou 8 bytes por
vez, transferem 128 bits, ou 16 bytes por vez. Isso significa que elas transmitem o
dobro de dados por transferência duplicando sua capacidade em relação às outras
memórias.
Assim, uma DDR-400, que opera a um clock real de 200 MHz, realiza duas transferências
por ciclo, transferindo 64 bits, tem taxa de transferência máxima de 3.200 MB/s. Sendo
ela Dual-Channel, os acessos a memória serão de 128 bits fazendo com que sua taxa de
transferência máxima seja 6.400 MB/s.
Porém, para usar essas memórias sua placa-mãe precisa estar apta a suportar essa
tecnologia além de utilizar dois módulos de memória iguais e instala-las nos soquetes
especificados. Normalmente as placas-mãe com suporte a essa tecnologia traz os
soquetes de memória com cores. Dependendo da marca, a instalação deverá ser feita
em dois soquetes da mesma cor ou em cores diferentes.
É esperado que nos próximos anos a memória DDR seja substituída pela DDR-II, que
apresenta clocks de freqüências mais altas porém utilizando a mesma tecnologia
empregada na atual DDR. Competindo com a DDR-II teremos a Rambus XDR, Quad Data
Rate (QDR) e Quad Band Memory (QBM) SDRAM. É esperado que a DDR-II se torne
padrão entre as memórias RAM dos computadores num futuro próximo, levando em
conta que as QDR apresentam circuitos complexos demais para terem um preço
acessível, enquanto as QBM e XDR não são muito avançadas.
RDRAM é uma alternativa à DDR SDRAM, porém a maioria dos fabricantes de chipset já
não dão suporte a elas.
Frequência de memórias
Memória DDR 400MHz PC3200 de 512MB
As memórias devem ser combinadas sempre com a mesma frequência, códigos e, de
preferência, o mesmo fabricante para que não haja travamento (tela azul) ou
congelamento de imagens ou memória virtual insuficiente; a tendência atualmente é
padronizar micros com no mínimo 2 GB de memória.
Obs.: Isso é um procedimento "aconselhável" mas não obrigatório pois as memórias
DDR são projetadas para minimizar esse tipo de conflito. Tanto que memórias DDR 400,
por exemplo, possuem as temporizações de 333 e 266 para que sejam compatíveis com
placas deste tipo.
DDR2 SDRAM
Origem: Wikipédia, a enciclopédia livre.
DRAM DDR2 512MB
A DDR2 SDRAM ou DDR2, é uma evolução ao antigo padrão DDR SDRAM, conforme
homologação da JEDEC. A nova tecnologia veio com a promessa de aumentar o
desempenho, diminuir o consumo elétrico e o aquecimento, aumentar a densidade e
minimizar a interferência eletromagnética (ruído). São esperados módulos de até 4GB de
memória.
Índice
• 1 Nome
• 2 Visão Geral
◦ 2.1 Formato e alimentação dos módulos
• 3 Clocks (frequência)
◦ 3.1 On-Die-Termination ( ODT - Terminação resistiva )
◦ 3.2 Bancos de memória
◦ 3.3 Mecanismo de busca
• 4 Encapsulamento
• 5 Referências
• 6 Ver também
Nome
DDR2 SDRAM é o acrónimo de Double Data Rate 2 Syncronous Dynamic Random Acess
Memory. Dual In-line Memory Module significa que os módulos fazem contatos pelos
seus dois lados, em contraste aos antigos módulos SIMM (Single In-line Memory
Module). Syncronous Dynamic Random Acess Memory significa que a memória possui
acesso aleatório síncrono e dinâmico. O termo sincronia é utilizado para indicar que a
memória e processador possuem clocks coincidentes, o que faz aumentar o desempenho
em comparação com a antiga tecnologia EDO em 25%. O termo dinâmica é uma
referência à estrutura dos chips, que são formados por uma matriz de capacitores que
precisam ser recarregados constamente. Double Data Rate significa que o tráfego é de
dois dados por pulso de clock. O número 2 simboliza o conjunto de melhorias do novo
padrão.
Visão Geral
Formato e alimentação dos módulos
Padrão
Número de viasTensão de alimentação
Comentários
DDR2
240
1,8V
DDR2 SO-DIMM200
1,8V
padrão para notebooks.
DDR
184
2,5V
SDR
168
3,3V
Nota-se que o novo padrão não é compatível com o antigo DDR, tanto em pinagem,
quanto em posição dos chanfros e alimentação elétrica.
Clocks (frequência)
O clock real dos novos chips é a metade do clock real dos seus módulos. Exemplificando:
uma memória DDR2 400 possui clock real 200Mhz, e seus chips possuem clock real de
100Mhz. Porém tanto memórias quanto chips possuem clock efetivo (nominal) de
400Mhz. Veja tabela abaixo:
Nome
Clock dos Ciclo de Clock Dados por
Nome do
Taxa de
padrão
chips
tempo
real
segundos
módulo
transferência
200
DDR2-400 100 MHz
10 ns
400 Milhões
PC2-3200
3200 MB/s
MHz
266
PC2-4200
DDR2-533 133 MHz
7.5 ns
533 Milhões
4266 MB/s
MHz
PC2-4300
333
PC2-5300
DDR2-667 166 MHz
6 ns
667 Milhões
5333 MB/s
MHz
PC2-5400
400
DDR2-800 200 MHz
5 ns
800 Milhões
PC2-6400
6400 MB/s
MHz
533
PC2-8500
DDR2-1066266 MHz
3.75 ns
1066 Milhões
8533 MB/s
MHz
PC2-8600
650
DDR2-1300325 MHz
3.1 ns
1300 Milhões PC2-10400 10400 MB/s
MHz
Várias confusões se devem à leitura de notícias antigas e especulações anteriores ao seu
lançamento, e ao fato de os chips enviarem aos buffers de saída da memória 4 dados à
metade do clock real dos módulos. Porém os módulos continuam sendo DDR, o que fica
bastante claro quando percebemos que as taxas de trasmissão máxima teórica se
mantêm. Uma DDR e uma DDR2 possuem taxa de transmissão máxima e teórica de
3.2Gbps.
Apesar dos benefícios, os ciclos adicionais de clock trazem em contrapartida latências
maiores, um problema muito difícil de ser contornado, sendo um dos principais
argumentos de especialistas para aguardar a transição rápida para as DDR3. Por conta
desta dicotomia entre clock dos chips e dos módulos, hoje é possível construir memórias
cada vez mais rápidas, devendo somar a esta vantagem outros fatores, como o ODT.
On-Die-Termination ( ODT - Terminação resistiva )
Ao contrário das DDR's clássicas, nas quais a terminação resistiva se localizava na placa
mãe, nas DDR2 o ODT está presente no próprio módulo, diminuindo assim a
interferência eletromagnética. Esta é uma das características que permitem um
desempenho maior desse modelo.
Bancos de memória
Os novos chips possuem mais subdivisões internas (banks, que não devem ser
confundidos com outras definições de banco de memória). Agora são 4 ou 8 bancos,
diferente do antigo padrão que possuía apenas 2 ou 4.
A subdivisão de chips é muito importante para a utilização de uma técnica chamada
Bank Interleave. Como usamos memórias dinâmicas que precisam ser recarregadas
constantemente, durante o processo de recarga a memória não pode ser acessada. Ao
utilizarmos esta técnica quando acessamos um banco (uma fração de chips), os outros
bancos são recarregados (as outras frações dos chips), minimizando assim a
possibilidade de acesso a um banco que esteja em processo de recarga.
Mecanismo de busca
A DDR2 possui um pre-fetch de 4 bits, o dobro da DDR clássica..
Encapsulamento
DDR2 usam o encapsulamento FBGA (Fine pitch Ball Grid Array), derivado do BGA (Ball
Grid Array), enquanto as DDR's utilizam, em geral, TSOP (Thin Small-Outline
[1]
Package).
Apesar disso, a DDR2 é apontada como o novo padrão para as futuras
memórias RAM, por conservar o custo benefício das antigas memórias DDR. Contudo, as
novas memórias XDR da Rambus prometem muita performance.
DDR3 SDRAM
Origem: Wikipédia, a enciclopédia livre.
Memória RAM DDR3
Memória RAM DDR3
A memória DDR3 SDRAM, Taxa Dupla de Transferência Nível Três de Memória Síncrona
Dinâmica de Acesso Aleatório), também conhecida como DDR3, é um padrão para
memórias RAM que está sendo desenvolvida para ser a sucessora das memórias DDR2
SDRAM.
Diferenças entre as Memórias Anteriores
Ela aparece com a promessa de reduzir em 40% o consumo de energia comparadas aos
módulos de memórias DDR2 comercializadas atualmente, devido à sua tecnologia de
fabricação de 90 nanômetros (90nm), permite baixas taxas de operação de consumo e
baixas voltagens (1.5 Volt, comparado com as DDR2 que consomem 1.8V até 2.1V, ou
as DDR´s comuns de 2.5V). Transístores "dual-gate" ou "portão duplo" serão usados
para reduzir as taxas de consumo actuais.
As DDR3 apresentam um buffer de 8 bits, onde as DDR2 usam 4 bits, e as DDR 2 bits.
Teoricamente, estes módulos podem transferir dados à taxa de freqüencia efectiva de
400 a 800 MegaHertz (MHz) (para uma largura de banda de clock simples, de 800 a
1600 Mhz), comparadas com as DDR2 e suas taxas actuais de 200 a 625 MHZ (400 a
1250 MHz) ou DDR's e a sua taxa de 100 a 200 MHz (200 a 400 MHz). Actualmente, tais
requisitos de largura de banda têm sido do mercado das placas de vídeo, onde vasta
troca de informação entre os buffers é requerida, logo, a DDR3 pode ser uma boa
escolha para os fabricantes de GPU.
Protótipos foram anunciados no ano de 2005. Supostamente, a Intel afirmou seu
anúncio preliminar de que espera estar preparada para oferecer suporte para as DDR3
perto do fim do ano de 2007. Já a AMD em seus planos para o futuro indica que adotará
as memórias DDR3 no começo de 2008.
Em Agosto de 2006, a Samsung anuncia suas memórias DDR3, na qual suas freqüencias
vão de 800 a 1333 MHz. Também, promete que em 2007 chegará a uma taxa de
freqüencia de 1600 MHZ, transferindo a 25.6 GB/s. Em relação à capacidade de
armazenamento não houve tanto avanço, mantendo a capacidade entre os 256MB e
2GB.
As memórias GDDR3, com nome similar mas com tecnologia totalmente diferente, já
estão em uso há anos nas melhores placas de vídeo conhecidos da NVIDIA e ATI
Technologies e são parte também do sistema de memória do Xbox 360 da Microsoft, e
muitas vezes aparecem nestes casos referências incorrectas às DDR3.
Memória ROM
Origem: Wikipédia, a enciclopédia livre.
EEPROM da Intel de 1971
A memória ROM (acrónimo para a expressão inglesa Read-Only Memory) é um tipo de
memória que permite apenas a leitura, ou seja, as suas informações são gravadas pelo
fabricante uma única vez e após isso não podem ser alteradas ou apagadas, somente
acessadas. São memórias cujo conteúdo é gravado permanentemente.
Uma memória ROM propriamente dita vem com seu conteúdo gravado durante a
fabricação. Atualmente, o termo Memória ROM é usado informalmente para indicar
uma gama de tipos de memória que são usadas apenas para a leitura na operação
principal de dispositivos eletrônicos digitais, mas possivelmente podem ser escritas por
meio de mecanismos especiais. Entre esses tipos encontramos as PROM, as EPROM, as
EEPROM e as memórias flash. Ainda de forma mais ampla, e de certa forma imprópria,
dispositivos de memória terciária, como CD-ROMs, DVD-ROMs, etc., também são
algumas vezes citados como memória ROM.
Apesar do nome memória ROM ser usado algumas vezes em contraposição com o
nome memória RAM, deve ficar claro que ambos os tipos de memória são de acesso
aleatório.
Tipos de ROM
• PROMs (Programmable Read-Only Memory) podem ser escritas com dispositivos
especiais mas não podem mais ser apagadas
• EPROMs (Erasable Programmable Read-Only Memory) podem ser apagadas pelo
uso de radiação ultravioleta permitindo sua reutilização
• EEPROMs (Electrically Erasable Programmable Read-Only Memory) podem ter
seu conteúdo modificado eletricamente, mesmo quando já estiver funcionando
num circuito eletrônico
• Memória flash semelhantes às EEPROMs são mais rápidas e de menor custo
• CD-ROM são discos ópticos que retêm os dados não permitindo sua alteração
• DVD-ROM são discos ópticos, tal como os CD-ROM, mas de alta densidade.
Arquitetura da ROM
Com a evolução da ROM seu próprio nome perdeu sentido pois ela poder ser gravada e
re-gravada, mas seu foco não é para gravação com freqüência. Vários aparelhos
eletrônicos usam essa tecnologia, como leitores de DVD, placas de computador,
taxímetros, celulares. Dá-se o nome de firmware para o software gravado dentro da
ROM para o funcionamento destes aparelhos. O firmware de um aparelho é para ele
como um sistema operacional, que além de fazer a comunicação entre o usuário e o
aparelho, tem funções pré-programadas para execução quando solicitadas pelo usuário
ou por um outro aparelho nele acoplado. O firmware pode ser atualizado caso seja
necessário por alguma eventualidade ou erro de programação, mas para isto o aparelho
deve estar funcional para poder fazer a atualização.
A memória ROM também foi bastante usada em cartuchos de videogames. Atualmente
emuladores de videogames utilizam "roms", que nada mais são que os softwares
extraídos de um cartucho. (sem uma carcaça de plástico para poder ser manuseado).
Cache
Origem: Wikipédia, a enciclopédia livre.
Na área da computação, cache é um dispositivo de acesso rápido, interno a um sistema,
que serve de intermediário entre um operador de um processo e o dispositivo de
armazenamento ao qual esse operador acede. A vantagem principal na utilização de uma
cache consiste em evitar o acesso ao dispositivo de armazenamento - que pode ser
demorado -, armazenando os dados em meios de acesso mais rápidos
Índice
•
•
•
•
•
•
1
2
3
4
5
6
Nos dispositivos de armazenamento
Operação
Princípio da Localidade
Tipos de Memória Cache
Erro de MISS
Cache em Níveis
◦ 6.1 Cache L1
◦ 6.2 Cache L2
◦ 6.3 Cache L3
◦ 6.4 Tamanho da cache
• 7 Técnicas de escrita de dados da cache
◦ 7.1 Write-Back Cache
◦ 7.2 Write-Through Cache
◦ 7.3 Write Allocate
◦ 7.4 No Write Allocate
• 8 Veja também
• 9 Referências
Nos dispositivos de armazenamento
Com os avanços tecnologicos, vários tipos de cache foram desenvolvidos. Atualmente há
cache em processadores, discos-rígidos, sistemas, servidores, nas placas-mães, entre
outros. Qualquer dispositivo que requeira do usuário uma solicitação/requisição a algum
outro recurso, seja de rede ou local, interno ou externo a esta rede, pode requerer ou
possuir de fábrica o recurso de cache.
Por ser mais caro, o recurso mais rápido não pode ser usado para armazenar todas as
informações. Sendo assim, usa-se a cache para armazenar apenas as informações mais
frequentemente usadas. Nas unidades de disco também conhecidas como disco rígido ou
Hard Drive (HD), também existem chips de cache nas placas eletrónicas que os
acompanham. Como exemplo, a unidade Samsung de 160 GB tem 8 MBytes de cache.
No caso da informática, a cache é útil em vários contextos:
• Nos casos dos processadores, em que a cache disponibiliza alguns dados já
requisitados e outros a processar;
• No caso dos navegadores, em que as páginas são guardadas localmente para
evitar consultas constantes à rede (especialmente úteis quando se navega por
páginas estáticas);
• No caso das redes de computadores , o acesso externo , ou à Internet , se dá
por meio de um software que compartilha a conexão ou link , software este
também chamado de proxy , que tem por função rotear as requisições a IPs
externos à rede que se encontra , Nestes proxyes temos ainda um cache , que
na verdade é uma enorme lista de todos os sites que foram visitados pelos
usuários dos computadores desta rede, fazendo com isto a mesma função que os
caches presentes nos navegadores , ou browsers, só que com a atribuição de
servir a toda a rede e com isso aumentar a taxa de acerto dos proxyes ,
[1]
minimizar o consumo do link e agilizar a navegação.
• Os servidores Web, também podem dispor caches configurados pelo
administrador, que variam de tamanho conforme o número de page views que o
servidor tem.
Operação
Um cache é um bloco de memória para o armazenamento temporário de dados que
possuem uma grande probabilidade de serem utilizados novamente.
Uma definição mais simples de cache poderia ser: uma área de armazenamento
temporária onde os dados freqüentemente acedidos são armazenados para acesso
rápido.
Uma cache é feita de uma fila de elementos. Cada elemento tem um dado que é a cópia
exacta do dado presente em algum outro local (original). Cada elemento tem uma
etiqueta que especifica a identidade do dado no local de armazenamento original, que foi
copiado.
Quando o cliente da cache (CPU, navegador etc.) deseja aceder a um dado que acredita
estar no local de armazenamento, primeiramente ele verifica a cache. Se uma entrada
for encontrada com uma etiqueta correspondente ao dado desejado, o elemento da
cache é então utilizado ao invés do dado original. Essa situação é conhecida como cache
hit (acerto do cache). Como exemplo, um navegador poderia verificar a sua cache local
no disco para ver se tem uma cópia local dos conteúdos de uma página Web numa URL
particular. Nesse exemplo, a URL é a etiqueta e o conteúdo da página é o dado
desejado. A percentagem de acessos que resultam em cache hits é conhecida como a
taxa de acerto (hit rate ou hit ratio) da cache.
Uma situação alternativa, que ocorre quando a cache é consultada e não contém um
dado com a etiqueta desejada, é conhecida como cache miss (erro do cache). O dado
então é copiado do local original de armazenamento e inserido na cache, ficando pronto
para o próximo acesso.
Se a cache possuir capacidade de armazenamento limitada (algo comum de acontecer
devido ao seu custo), e não houver mais espaço para armazenar o novo dado, algum
outro elemento deve ser retirado dela para que liberte espaço para o novo elemento. A
forma (heurística) utilizada para seleccionar o elemento a ser retirado é conhecida como
política de troca (replacement policy). Uma política de troca muito popular é a LRU (least
recently used), que significa algo como “elemento recentemente menos usado”.
Quando um dado é escrito na cache, ele deve ser gravado no local de armazenamento
nalgum momento. O momento da escrita é controlado pela política de escrita (write
policy). Existem diferentes políticas. A política de write-through (algo como “escrita
através”) funciona da seguinte forma: a cada vez que um elemento é colocado no cache,
ele também é gravado no local de armazenamento original. Alternativamente, pode ser
utilizada a política de write-back (escrever de volta), onde as escritas não são
directamente espelhadas no armazenamento. Ao invés, o mecanismo de cache identifica
quais de seus elementos foram sobrepostos (marcados como sujos) e somente essas
posições são colocadas de volta nos locais de armazenamento quando o elemento for
retirado do cache. Por essa razão, quando ocorre um cache miss (erro de acesso ao
cache pelo fato de um elemento não existir nele) em um cache com a política writeback, são necessários dois acessos à memória: um para recuperar o dado necessário e
outro para gravar o dado que foi modificado no cache.
O mecanismo de write-back pode ser accionado por outras políticas também. O cliente
pode primeiro realizar diversas mudanças nos dados do cache e depois solicitar ao cache
para gravar os dados no dispositivo de uma única vez.
Os dados disponíveis nos locais de armazenamento original podem ser modificados por
outras entidades diferentes, além do próprio cache. Nesse caso, a cópia existente no
cache pode se tornar inválida. Da mesma forma, quando um cliente atualiza os dados no
cache, as cópias do dado que estejam presentes em outros caches se tornarão inválidas.
Protocolos de comunicação entre gerentes de cache são responsáveis por manter os
dados consistentes e são conhecidos por protocolos de coerência.
Princípio da Localidade
É a tendência de o processador ao longo de uma execução referenciar instruções e dados
da memória principal localizados em endereços próximos. Tal tendência é justificada
devido as estruturas de repetição e as estruturas de dados, vetores e tabelas utilizarem
a memória de forma subseqüente (um dado após o outro). Assim a aplicabilidade da
cache internamente ao processador fazendo o intermédio entre a memória principal e o
processador de forma a adiantar as informações da memória principal para o
processador.
Tipos de Memória Cache
Memória Cache é uma pequena quantidade de memória estática de alto desempenho,
tendo por finalidade aumentar o desempenho do processador realizando uma busca
antecipada na memória RAM.
Erro de MISS
Quando o processador necessita de um dado, e este não está presente no cache, ele
terá de realizar a busca diretamente na memória RAM, utilizando wait states e reduzindo
o desempenho do computador. Como provavelmente será requisitado novamente
(localidade temporal) o dado que foi buscado na RAM é copiado na cache.
Cache em Níveis
Cache L1
Uma pequena porção de memória estática presente dentro do processador. Em alguns
tipos de processador, como o Pentium 2, o L1 é dividido em dois níveis: dados e
instruções (que "dizem" o que fazer com os dados). A partir do Intel 486, começou a se
colocar a L1 no próprio chip [processador]. Geralmente tem entre 16KB e 512KB. O AMD
Sempron 2600+ possui 64KB de cache L1. Neste aspecto a Intel fica a perder em relação
à AMD, visto possuir menor memória cache nível 1 do que a sua concorrrente direta.
Assim já existem processadores AMD com instruções a 128K de memória cache nível 1,
como por exemplo o AMD Turion 64 ML-40.
Cache L2
Possuindo o Cache L1 um tamanho reduzido e não apresentando uma solução ideal, foi
desenvolvido o cache L2, que contém muito mais memória que o cache L1. Ela é mais
um caminho para que a informação requisitada não tenha que ser procurada na lenta
memória principal. Alguns processadores colocam essa cache fora do processador, por
questões econômicas, pois uma cache grande implica num custo grande, mas há
exceções, como no Pentium II, por exemplo, cujas caches L1 e L2 estão no mesmo
cartucho que está o processador. É neste aspecto essencial que a Intel ganha todo o
prestígio e rendimento dos seus processadores. A memória cache L2 é, sobre tudo, um
dos elementos essenciais para um bom rendimento do processador mesmo que tenha
um clock baixo. Um exemplo prático é o caso do Intel Xeon (para servidores) que tem
apenas 1.4 GHz de clock interno e ganha de longe do atual Intel Extreme, pelo fato de
possuir uma memória cache de 12Mb. Quanto mais alto é o clock do processador, mais
este aquece e mais instável se torna. Os processadores Intel Celeron tem tão fraco
desempenho por possuir menor memória cache L2. Um Pentium M 730 de 1.6 GHz de
clock interno, 533 MHz FSB e 2 MB de cache L2, tem rendimento semelhante a um Intel
Pentium 4 2.4 GHz, aquece muito menos e torna-se muito mais estável e bem mais
rentável do que o Intel Celeron M 440 de 1.86 GHz de clock interno, 533 MHz FSB e 1
MB de cache L2.
Cache L3
Terceiro nível de cache de memória. Inicialmente utilizado pelo AMD K6-III (por
apresentar o cache L2 integrado ao seu núcleo) utilizava o cache externo presente na
placa-mãe como uma memória de cache adicional. Ainda é um tipo de cache raro devido
a complexidade dos processadores atuais, com suas áreas chegando a milhões de
transístores por micrómetros ou picómetros de área. Ela será muito útil, é possível a
necessidade futura de níveis ainda mais elevados de cache, como L4 e assim por diante.
Tamanho da cache
• A relação acerto/falha
• Tempo de acesso a memória principal
• O custo médio, por bit, da memória principal, da cache L1 e L2
• O tempo de acesso da cache L1 ou L2
• A natureza do programa a ser executado no momento
Técnicas de escrita de dados da cache
-Tecnicas de "Write Hit":
Write-Back Cache
Usando esta técnica a CPU escreve dados diretamente na cache, cabendo ao sistema a
escrita posterior da informação na memória principal. Como resultado o CPU fica livre
mais rapidamente para executar outras operações. Em contrapartida, a latência do
controlador pode induzir problemas de consistência de dados na memória principal, em
sistemas multiprocessados com memória compartilhada. Esses problemas são tratados
por protocolos de consistência da cache.
Exemplo: A escrita de um endereço e feita inicialmente numa linha da cache, e somente
na cache. Quando mais tarde algum novo endereço necessitar desta linha da cache,
estando esta já ocupada, então o endereço inicial e guardado na memoria e o novo
endereço ocupa-lhe o lugar na respectiva linha da cache.
Para reduzir a frequência de escrita de blocos de endereços na memoria aquando da
substituição é usado um "dirty bit", este é um bit de estado, ou seja, quando o
endereço é instanciado inicialmente numa linha da cache, estando essa linha vazia, o
valor inicial e implicitamente '0', quando o bloco do endereço e modificado(quando
ocorre uma substituição) o valor inicial passa a '1' e diz-se que o bloco do endereço esta
"dirty".
Vantagens: -A escrita ocorre à velocidade da cache; -Escritas múltiplas de um endereço
requerem apenas uma escrita na memoria; -Consome menos largura de banda.
Desvantagens: -Difícil de implementar; -Nem sempre existe consistência entre os
dados existentes na cache e na memoria; -Leituras de blocos de endereços na cache
podem resultar em escritas de blocos de endereços "dirty" na memoria.
Write-Through Cache
Quando o sistema escreve para uma zona de memória, que está sustida na cache,
escreve a informação, tanto na linha específica da cache como na zona de memória ao
mesmo tempo. Este tipo de caching providencia pior desempenho do que Write-Back
Cache, mas é mais simples de implementar e tem a vantagem da consistência interna,
porque a cache nunca está dessíncrona com a memória como acontece com a técnica
Write-Back Cache.
Vantagens: -Fácil de implementar; -Um "cache-miss" nunca resulta em escritas na
memoria; -A memoria tem sempre a informação mais recente.
Desvantagens: -A escrita é lenta; -Cada escrita necessita de um acesso à memoria; Consequentemente usa mais largura de banda da memoria.
-Tecnicas de "Write Miss":
Write Allocate
O bloco de endereço e carregado na ocorrência de um "write miss", seguindo-se uma
acção de "write hit". O "Write Allocate" é usado com frequencia em caches de "Writeback".
No Write Allocate
O bloco de endereço e directamente modificado na memoria, não e carregado na cache.
O "No Write Allocate" é usado frequentemente em caches de "Write Through".
Memória flash
Origem: Wikipédia, a enciclopédia livre.
Exemplo de uma memória
flash utilizada em um flash
drive USB (pen drive).
Exemplo de uma memória flash utilizada em um flash drive USB (pen drive).
Memória flash é uma memória de computador do tipo EEPROM (Electrically-Erasable
Programmable Read-Only Memory), desenvolvida na década de 1980 pela Toshiba, cujos
chips são semelhantes ao da Memória RAM, permitindo que múltiplos endereços sejam
apagados ou escritos numa só operação. Em termos leigos, trata-se de um chip reescrevível que, ao contrário de uma memória RAM convencional, preserva o seu
[1][2]
conteúdo sem a necessidade de fonte de alimentação.
Esta memória é comumente
usada em cartões de memória, flash drives USB (pen drives), MP3 Players, dispositivos
como os iPods com suporte a vídeo, PDAs, armazenamento interno de câmeras digitais e
celulares.
Memória flash é do tipo não volátil o que significa que não precisa de energia para
manter as informações armazenadas no chip. Além disso, a memória flash oferece um
tempo de acesso (embora não tão rápido como a memória volátil DRAM utilizadas para a
memória principal em PCs ) e melhor resistência do que discos rigídos. Estas
características explicam a popularidade de memória flash em dispositivos portáteis.
Outra característica da memória flash é que quando embalado em um "cartão de
memória" são extremamente duráveis, sendo capaz de resistir a uma pressão intensa,
[3]
variações extremas de temperatura, e até mesmo imersão em água.
Uma limitação é que a memória flash tem um número finito de modificações (escrita/
exclusão).Porém este efeito é parcialmente compensado por alguns chip firmware ou
drivers de arquivos de sistema de forma dinâmica e escreve contando o remapeamento
[3]
dos blocos, a fim de difundir as operações escritas entre os setores.
Índice
• 1 Vantagens
• 2 Flash NAND e NOR
◦ 2.1 Flash NOR
◦ 2.2 Flash NAND
▪ 2.2.1 Tamanhos típicos dos blocos:
◦ 2.3 Principais diferenças entre NOR e NAND
•
•
•
•
•
•
3
4
5
6
7
8
Sistema de Arquivos Flash
Padronização
Taxas de Transferência
Substituto para discos rígidos
Referências
Ver também
Vantagens
Cartão de memória que utiliza a tecnologia flash
As maiores vantagens desse tipo de memória é sua ocupação mínima de espaço, seu
baixo consumo de energia, sua alta resistência, sua durabilidade e segurança, contando
com recursos como ECC (Error Correcting Code), que permite detectar erros na
transmissão de dados. A tecnologia faz uso de semicondutores (solid state), sendo
[2][1]
assim, não tem peças, evitando problemas de causa mecânica.
Também vem começando a ser chamado de disco sólido pelo grande futuro que tem pela
frente, já que além de ser muito mais resistente que os discos rígidos atuais, apresenta
menor consumo de energia elétrica, maiores taxas de transferência, latências e peso
muito mais baixos. Chega a utilizar apenas 5% dos recursos normalmente empregados
na alimentação de discos rígidos.
Com tantas vantagens, a tendência futura é que os fabricantes de computadores tendem
a substituir os disco rígidos por unidades flash. O que poderá ser expandida para os
desktop nos próximos 5 anos, pois a sua fabricação ainda é de alto custo para as
[1]
empresas.
Flash NAND e NOR
Existem dois tipos de memórias flash, a NAND e a NOR.
Dois chips de memória flash em comparação com uma moeda
Flash NOR
A memória flash NOR (Not OR) permite acessar os dados da memória de maneira
aleatória, mas com alta velocidade. Foi a primeira a se popularizar, chegando ao
mercado em 1988, seus chips possuem uma interface de endereços semelhante à da
memória RAM, sendo utilizado para armazenar o BIOS das placas-mãe e também
firmwares de vários dispositivos, que antes eram armazenados em memória ROM ou
EPROM. Alguns dos problemas nesse tipo de memória devem-se ao seu alto custo, e ao
seu alto tempo de gravação nas células. Mas embora esses problemas existam, ela é
largamente utilizada até hoje em celulares, palmtops e firmware. Chegaram a ser
empregues na fabricação das memórias PCMCIA e CompactFlash, mas com a introdução
[4][2]
do tipo NAND, desapareceram deste ramo.
Flash NAND
A memória flash NAND (Not AND) trabalha em alta velocidade, faz acesso seqüencial às
células de memória e trata-as em conjunto, isto é, em blocos de células, em vez de
[2]
acessá-las de maneira individual.
Essa arquitetura foi introduzida pela Toshiba em
1989. Cada bloco consiste em um determinado número de páginas. As páginas são
tipicamente 512, 2048 ou 4096 bytes em tamanho. A página é associada a alguns bytes
(tipicamente 12-16 bytes). Atualmetente são os tipos de memória mais usados em
[4]
dispositivos portáteis.
Tamanhos típicos dos blocos:
• 32 páginas de 512 bytes para cada tamanho de um bloco de 16 kiB
• 64 páginas de 2048 bytes para cada tamanho de um bloco de 128 kiB
• 64 páginas de 4096 bytes para cada tamanho de um bloco de 256 kiB
• 128 páginas de 4096 bytes para cada tamanho de um bloco de 512 kiB
Embora a programação seja realizada em uma página base,a exclusão dos dados só
pode ser executada em um bloco base. Outra limitação do flash NAND é que um bloco de
dados só pode ser escrito seqüencialmente. Número de Operações (NOPs) é o número
de vezes que os setores podem ser programados. A maior parte dos dispositivos NAND
saem da fábrica com alguns blocos defeituosos, que normalmente são identificados e
classificados de acordo com uma determinada marcação de bloco defeituoso. Ao permitir
que alguns blocos defeituosos saiam os fabricantes alcançam mais rendimentos do que
seria possível, caso todos os blocos fossem bons. Isto reduz significativamente os custos
da Memória flash NAND e diminui ligeiramente a capacidade de armazenamento das
[3]
partes.
Principais diferenças entre NOR e NAND
• As conexões das células individuais de memória são diferentes.
• A densidade de armazenamento chips é atualmente mais elevado em memórias
NAND.
• O custo da NOR é muito mais elevado.
• A NOR perminte acessos aleatórios, enquanto a NAND permite apenas acesso
sequencial à memória.
[5]
• A leitura é muito mais rápida na NOR.
Sistema de Arquivos Flash
O conceito básico dos sistemas de arquivos flash é o seguinte: quando os dados
armazenados vão ser atualizados, o sistema de arquivos faz uma cópia deles para um
novo bloco de memória, remapeia os ponteiros de arquivo e depois apaga o antigo bloco
quando tiver tempo. Na prática, esse sistema de arquivos é utilizado em dispositivos
com memória flash embutida que não possuem controladores. Os cartões de memória e
drives USB flash são incorporados de controladores e devem desempenhar correção de
erros, então o uso de um ou outro sistema de arquivos flash pode não acrescentar
nenhum benefício, então os dispositivos flash removíveis utilizam o sistema de arquivos
FAT universal, permitindo assim a compatibilidade com câmeras, computadores, PDAs e
[3]
outros dispositivos portáteis com slots para cartões de memória.
Padronização
Um grupo chamado Open Nand Flash Interface Working Group(ONFI) desenvolveu uma
interface padronizada para os chips NAND flash, tornando possível a interoperabilidade
entre dispositivos NAND de diferentes fornecedores. A versão 1.0 da especificação ONFI
foi liberada em Dezembro de 2006, com as seguintes especificações:
• interface física normalizada(pinout) para NAND flash em TSOP-48, LGA-52 e
BGA-63.
• um comando padrão estabelecido para ler, escrever e apagar dados nos chips
NAND.
• mecanismo de auto-identificação, comparável ao Serial Presence
detection(características dos SDRAM)
O grupo tem apoio dos principais fabricantes de memória NAND - tais como a Intel,
Micron Technology e Sony - e dos principais fabricantes de dispositivos que integram
chips NAND. Alguns fornecedores, incluindo Intel, Dell e Microsoft, formaram um grupo
para proporcionar um padrão de software e hardware programando interfaces para
subsistemas de memória não-volátil, incluindo a flash cache, dispositivo ligado ao PCI
[3]
Express.
Taxas de Transferência
Geralmente é anunciada somente a velocidade máxima de leitura, pois os cartões de
memória NAND são mais rápidos lendo do que escrevendo dados. O tempo de acesso
influencia no desempenho, mas não tem tanta importância comparando com o disco
rígido. Às vezes denotado em MB/s(megabytes por segundo), ou em número de “X”
como 60x, 100x ou 150x. O “X” se refere à velocidade com que uma única unidade de
CD entregaria os dados, 1x é o mesmo que 150 kilobytes por segundo. Por exemplo, um
cartão de memória 100x vai a 150 KiB x 100 = 15000 KiB por segundo = 14,65 MiB por
segundo (A velocidade exata depende da definição de Megabyte que o comerciante opta
[3]
por utilizar).
Substituto para discos rígidos
Uma extensão óbvia da memória flash seria um substituto para os discos rígidos, já que
ela não possui as limitações mecânicas e latência dos mesmos. A idéia de um drive de
estado sólido, ou SSD, torna-se atraente se considerarmos velocidade, ruído, consumo
de energia e confiabilidade. Porém, ainda existem algumas desvantagens que devem ser
consideradas. Por exemplo, o custo por gigabyte de memória flash ainda é maior do que
dos discos rígidos. Outra preocupação é o fato de existir um número finito de ciclos de
leitura e escrita, o que tornaria inviável de sustentar um sistema operacional. Algumas
técnicas estão sendo utilizadas na tentativa de combinar as vantagens das duas
tecnologias, usando a flash como uma cache de alta velocidade para arquivos do disco
que são muito referenciados mas pouco modificados, tais como aplicativos e arquivos
[3]
executáveis do sistema operacional.
Recentemente, a Intel desenvolveu um cartão de memória flash que pode ser usado
como HD em laptops usados em regiões rurais e países em desenvolvimento. Essa
tecnologia não serve apenas para tornar mais leves e portáteis os computadores, mas
sim mais resistentes à poeira. Discos rígidos tradicionais geralmente travam quando há
excesso de partículas sólidas no ar. Os computadores com memória flash não
[6]
apresentariam essa limitação.
GDDR
Origem: Wikipédia, a enciclopédia livre.
GDDR (Double Data Rate Graphics) é uma memória desenvolvida especificamente para
utilização em placas gráficas.
== Utilização == JdR Jáder Edições!
Memórias RAM também são usadas em placas de vídeo, para formar o circuito de
memória de vídeo. Até muito recentemente, a memória de vídeo usava exatamente a
mesma tecnologia da memória RAM que é instalada na placa-mãe.
Placas de vídeo de alto desempenho, no entanto, estavam precisando de memórias mais
rápidas do que as usadas convencionalmente no PC.
Com isso optou-se por usar memórias com as tecnologias DDR2 e DDR3.
Só que as memórias DDR2 e DDR3 usadas em placas de vídeo têm características
diferentes das memórias DDR2 e DDR3 usadas no PC – especialmente a tensão de
alimentação.
Por este motivo é que elas são chamadas GDDR2 e GDDR3 (o “G” vem de “Gráfica”).
As memórias DDR operam a 2,5V enquanto as memórias DDR2 operam a 1,8V, levando
a um menor consumo elétrico e uma menor geração de calor.
As memórias GDDR2 continuam operando a 2,5 V. Como rodam a clocks mais altos do
que as memórias DDR, elas geram mais calor do que estas. É por este motivo que as
memórias GDDR2 foram pouco usadas como memória de vídeo – somente as placas
GeForce FX 5700 Ultra e GeForce FX 5800 Ultra usaram esse tipo de memória.
Inclusive pouco tempo depois do lançamento da GeForce FX 5700 Ultra vários
fabricantes lançaram modelos desta placa usando memórias GDDR3, possivelmente para
amenizar os efeitos de calor e consumo provocados pelo uso das memórias GDDR2.
Já as memórias GDDR3 podem operar a 2,0 V (no caso das memórias da Samsung) ou a
1,8 V (no caso das memórias dos outros fabricantes), resolvendo o problema do
aquecimento. É por este motivo que este tipo de memória é usado pelas placas de vídeo
de alto desempenho.
Memórias DDR3 ainda não foram lançadas para o PC, mas provavelmente serão
alimentadas com 1,5 V, diferenciando-se, assim, das memórias GDDR3.
Fisicamente falando, as memórias GDDR2 e GDDR3 usam o encapsulamento BGA (Ball
Grid Array), como você pode conferir nas figuras, o mesmo usado pelas memórias DDR2
usadas no PC.
É impossível detectar visualmente se um chip de memória é GDDR2 ou GDDR3. A saída
é ir a um site de busca ou ao site do fabricante da memória e procurar pelo número que
está impresso na memória.
Índice
• 1 Tipos de Memória GDDR
◦ 1.1 GDDR1
◦ 1.2 GDDR2
◦ 1.3 GDDR3
◦ 1.4 GDDR4
◦ 1.5 GDDR5
• 2 Ligações externas
Tipos de Memória GDDR
GDDR1
Nesta primeira geração está a tensão VDD / VDDQ com 2.5/2.5 V. Com taxas de pulso
de disparo de 183 a 500 Megahertz e as latências LIDAS de 3, 4 e 5 ciclos de pulso de
disparo, resultando numa taxa máxima de fluxo de informação de 16 GB/s com o
barramento 128-Bit. A GDDR1 trabalha como (PC) - a memória do GDR com um Prefetch
dobro.
GDDR2
GDDR2 representou uma etapa intermediária impopular com o avanço de GDDR, que
parte de GDDR1. As características eram a tensão VDD/VDDQ de 2.5/1.8 V, taxas de
pulso de disparo de 400 a 500 megahertz e latências LIDAS de 5, 6 e 7 ciclos de pulso
de disparo. Assim resultando numa taxa máxima de informação de 32 GB/s com o
barramento 256-Bit. JdR
GDDR3
GDDR3 é fornecido com uma tensão VDD/VDDQ por 1.8/1.8 V. Com taxas de pulso de
disparo de 500 a 800 megahertz e de latências LIDAS de 5 a 9 ciclos de pulso de
disparo, com taxa máxima de 51.2 GB/s é possível com o barramento 256-Bit. GDDR3
trabalha como (PC) - DDR2-Speicher com um Prefetch quádruplo, ele transferirá assim 4
informações a cada dois ciclos de processamento.
GDDR3 aconteceu com ATI esboçado e veio para a primeira vez com isso nVidia GeForce
FX 5700 Ultra e mais tarde com o GeForce 6800 Ultra ao emprego. Com ATI a memória
tornou-se para a primeira vez com aquela Radeon Blocos X800. Promova os produtos
well-known, com que o uso GDDR3 encontra, são Sony Playstation 3 (TA 256 para o
mapa do diagrama) e Microsoft Xbox 360 (a TA 512 é usada ao mesmo tempo pelo CCU
e pelo GPU).
As memórias GDDR3 geralmente estão presentes em placas de vídeo tais como GeForce
9. Se denomina assim por ser posterior aos modelos DDR2 e DDR, por poder acessar os
dados armazenados em si em velocidades muito maiores que os modelos anteriores por
possuir uma voltagem menor e algumas revisões perante os outros.
GDDR4
A pioneira na produção das memórias GDDR4 é a Samsung em 5 de Julho 2006. Teste a
amostra de Hynix esteja disponível; presumably as freqüências de pulso de disparo até
1.45 gigahertz são possíveis. Assim um flow-rate máximo da informação deve ser
conseguido por até 92.8 GB/s com o emperramento 256-Bit. GDDR4 trabalha como (PC)
- o DDR3-Speicher com um Prefetch eightfold. O primeiro mapa do diagrama, em que
GDDR4 com uma freqüência de pulso de disparo era eigesetzt por 1GHz, é o X1950 XTX
de ATI.
GDDR5
A memória GDDR5 (Graphics Double Data Rate, versão 5) é um tipo de memória para a
placa gráfica. Ela será o sucessor do GDDR4 e está atualmente disponível para o público
em geral em algumas placas gráficas ATI da empresa (HD4800 série).
BIOS
Origem: Wikipédia, a enciclopédia livre.
Chip de BIOS do tipo DIP (Dual In Parallel), encontrado em placas-mãe antigas
Chip de BIOS do tipo PLCC (Plastic Leaded Chip Carrier), encontrado em placas-mãe
modernas
BIOS, em computação Basic Input/Output System (Sistema Básico de Entrada/Saída). O
termo é incorretamente conhecido como Basic Integrated Operating System (Sistema
Operacional Básico Integrado) ou Built In Operating System (Sistema Operacional
Interno). O BIOS é o firmware (programa) executado por um computador IBM PC
quando ligado, é ele que detecta e apresenta para os softwares os hardwares que o
computador possui.
Índice
•
•
•
•
•
•
•
1
2
3
4
5
6
7
Origem do termo
Onde se localiza
Funcionamento
Inicializando o Computador
Recursos
Actualização ou Upgrade
Ver também
Origem do termo
O termo apareceu pela primeira vez no sistema operacional CP/M, descrevendo a parte
do sistema carregada durante a inicialização, que lidava diretamente com o hardware
(máquinas CP/M normalmente tinham apenas um simples boot loader na ROM). A
maioria das versões do DOS tem um arquivo chamado "IBMBIO.COM" ou "IO.SYS" que
são análogos ao disco CP/M BIOS.
Onde se localiza
O BIOS é armazenado num chip ROM (Read-Only Memory) que pode ser do tipo MaskROM e PROM nas placas-mãe produzidas até o início da década de 1990, e Flash ROM
(memória flash) nas placas mais recentes. Na memória ROM da placa-mãe existem mais
dois programas chamados Setup (usado para configurar alguns parâmetros do BIOS), e
POST (Power On Selt Test) (uma seqüência de testes ao hardware do computador para
verificar se o sistema se encontra em estado operacional).
Funcionamento
Entre outras funções o papel mais importante do BIOS é o carregamento do sistema
operacional. Quando o computador é ligado e o microprocessador tenta executar sua
primeira instrução, ele tem que obtê-la de algum lugar. Não é possível obter essa
instrução do sistema operacional, pois esse se localiza no disco rígido, e o
microprocessador não pode se comunicar com ele sem que algumas instruções o digam
como fazê-lo. É o BIOS o responsável por fornecer essas instruções.
Quando o computador é ligado, o BIOS opera na seguinte seqüência:
1. Verifica as informações armazenadas em uma minúscula memória RAM, que se
localiza em um chip fabricado com tecnologia CMOS. A memória CMOS armazena
informações relativas a configuração de hardware, que podem ser alteradas de acordo as
mudanças do sistema. Essas informações são usadas pelo BIOS modificar ou
complementar sua programação padrão, conforme necessário.
2. POST (Power-On Self-Test ou Autoteste de Partida), que são os diagnósticos e testes
realizados nos componentes físicos (Disco rígido, processador, etc). Os problemas são
comunicados ao usuário por uma combinação de sons (bipes) numa determinada
seqüência e se possível, exibidos na tela. O manual do fabricante permite a identificação
do problema descrevendo a mensagem que cada seqüência de sons representa.
3. Ativação de outros BIOS possivelmente presentes em dispositivos instalados no
computador (ex. discos SCSI e placas de vídeo).
4. Descompactação para a memória principal. Os dados, armazenados numa forma
compactada, são transferidos para a memória, e só aí descompactados. Isso é feito para
evitar a perda de tempo na transferência dos dados.
5. Leitura dos dispositivos de armazenamento, cujos detalhes e ordem de inicialização
são armazenados na CMOS. Se há um sistema operacional instalado no dispositivo, em
seu primeiro sector (o Master Boot Record) estão as informações necessárias para o
BIOS encontrá-la (este sector não deve exceder 512 bytes).
Existem pequenos trechos de softwares chamados de Manipuladores de Interrupção que
atuam como tradutores entre os componentes de hardware e o sistema operacional. Um
exemplo dessa tradução é quando é pressionada uma tecla no teclado, o evento
associado ao sinal é enviado para o manipulador de interrupção do teclado que é enviado
a CPU que trata e envia esse evento para o sistema operacional. Os drivers de
dispositivos são outros trechos de software que identificam e atuam como interface entre
os componentes básicos de hardware como o teclado, mouse, disco rígido.
Inicializando o Computador
Ao ligar o computador, o primeiro software que você vê agindo é o do BIOS. Durante a
seqüência de inicialização (boot), o BIOS faz uma grande quantidade de operações para
deixar o computador pronto para o uso. Depois de verificar a configuração na CMOS e
carregar os manipuladores de interrupção, o BIOS determina se a placa de vídeo está
operacional.
Em seguida, o BIOS verifica se trata de uma inicialização a frio (cold boot) ou de uma
reinicializarão (reboot). Ela verifica as portas PS/2 ou portas USB em busca de um
teclado e um mouse. Ela procura por um barramento PCI (Peripheral Component
Interconnect) e, caso encontre algum, verifica todos os cartões PCI. Se o BIOS encontrar
algum erro durante o POST, haverá uma notificação ao usuário em forma de bips e
mensagens.
Após isso aparecem detalhes sobre o sistema:
• processador
• unidades (drivers) de disco flexível e disco rígido
• memória
• versão e data do BIOS
• monitor de vídeo
Recursos
Na época do MS-DOS o BIOS atendia praticamente a todas as chamadas de entrada e
saída E/S ou I/O (Input/Output) da máquina, atualmente a conexão é feita através da
instalação de drivers e é por meio desses drivers que os sistemas operacionais tem
contato direto com os hardwares.
Na maioria dos BIOS é possível especificar em qual ordem os dispositivos de
armazenamento devem ser carregados. Desta forma é possível, por exemplo, carregar
uma distribuição do sistema operacional Linux que funciona diretamente do CD antes do
sistema operacional instalado no HD (especificando que o CD deve ser verificado antes
do HD).
Alguns BIOS também permitem a escolha entre diversos sistemas operacionais
instalados, mas isto geralmente é feito com um software de terceiros (boot loader).
Actualização ou Upgrade
Na maioria das placas-mãe modernas o BIOS pode ser atualizado, e os fabricantes
disponibilizam arquivos para essa finalidade. A atualização pode resolver problemas de
funcionamento de periféricos, ou mesmo erros da versão anterior do BIOS. A atualização
altera três programas que estão dentro da memória ROM (BIOS, POST, Setup) e é uma
operação de risco e requer muito cuidado para não haver danos na placa-mãe.
Há vários problemas que podem acontecer nas atualizações, alguns deles são: arquivos
corrompidos, falta de informações para a solicitação do software correto, ou ainda a falta
de energia elétrica. Se ocorrer algum problema o sistema poderá não iniciar deixando a
placa-mãe muitas vezes inoperante.
A atualização ou o upgrade do chip somente deve ser feito quando for realmente
necessário.
Os principais fabricantes deste firmware são: American Megatrends (AMI), General
Software, Insyde Software, e Phoenix Technologies.
Disco rígido
Origem: Wikipédia, a enciclopédia livre.
Disco rígido moderno aberto
Disco rígido ou disco duro, no Brasil popularmente também HD ou HDD (do inglês
hard disk/hard disk drive; o termo "winchester" há muito já caiu em desuso), é a
parte do computador onde são armazenadas as informações, ou seja, é a "memória
permanente" propriamente dita (não confundir com "memória RAM"). É caracterizado
como memória física, não-volátil, que é aquela na qual as informações não são perdidas
quando o computador é desligado.
O disco rígido é um sistema lacrado contendo discos de metal recobertos por material
magnético onde os dados são gravados através de cabeças, e revestido externamente
por uma proteção metálica que é presa ao gabinete do computador por parafusos. É nele
que normalmente gravamos dados (informações) e é a partir dele que lançamos e
executamos nossos programas mais usados.
Este sistema é necessário porque o conteúdo da memória RAM é apagado quando o
computador é desligado. Desta forma, temos um meio de executar novamente
programas e carregar arquivos contendo os dados da próxima vez em que o computador
for ligado. O disco rígido é também chamado de memória de massa ou ainda de
memória secundária. Nos sistemas operativos mais recentes, o disco rígido é também
utilizado para expandir a memória RAM, através da gestão de memória virtual.
Existem vários tipos de discos rígidos diferentes: IDE/ATA, Serial_ATA, SCSI, Fibre
channel, SAS.
Índice
•
•
•
•
•
•
•
•
•
1
2
3
4
5
6
7
8
9
Como os dados são gravados e lidos
Formatação do disco
Exemplos de sistema de arquivos
Setor de boot
História do disco rígido
Capacidade do disco rígido
Características físicas dos discos rígidos
Ver também
Ligações externas
Como os dados são gravados e lidos
Os discos magnéticos de um disco rígido são recobertos por uma camada magnética
extremamente fina. Na verdade, quanto mais fina for a camada de gravação, maior será
sua sensibilidade, e conseqüentemente maior será a densidade de gravação permitida
por ela. Poderemos então armazenar mais dados num disco do mesmo tamanho, criando
HDs de maior capacidade.
Os primeiros discos rígidos, assim como os discos usados no início da década de 80,
utilizavam a mesma tecnologia de mídia magnética utilizada em disquetes, chamada
coated media, que além de permitir uma baixa densidade de gravação, não é muito
durável. Os discos atuais já utilizam mídia laminada (plated media); uma mídia mais
densa, de qualidade muito superior, que permite a enorme capacidade de
armazenamento dos discos modernos.
A cabeça de leitura e gravação de um disco rígido funciona como um eletroímã
semelhante aos que estudamos nas aulas de ciências do primário, sendo composta de
uma bobina de fios que envolvem um núcleo de ferro. A diferença é que num disco
rígido, este eletroímã é extremamente pequeno e preciso, a ponto de ser capaz de
gravar trilhas medindo menos de um centésimo de milímetro.
Quando estão sendo gravados dados no disco, a cabeça utiliza seu campo magnético
para organizar as moléculas de óxido de ferro da superfície de gravação, fazendo com
que os pólos positivos das moléculas fiquem alinhados com o pólo negativo da cabeça e,
conseqüentemente, com que os pólos negativos das moléculas fiquem alinhados com o
pólo positivo da cabeça. Usamos neste caso a velha lei “os opostos se atraem”.
Como a cabeça de leitura e gravação do HD é um eletroímã, sua polaridade pode ser
alternada constantemente. Com o disco girando continuamente, variando a polaridade
da cabeça de gravação, variamos também a direção dos pólos positivos e negativos das
moléculas da superfície magnética. De acordo com a direção dos pólos, temos um bit 1
ou 0 (sistema binário).
Para gravar as seqüências de bits 1 e 0 que formam os dados, a polaridade da cabeça
magnética é mudada alguns milhões de vezes por segundo, sempre seguindo ciclos bem
determinados. Cada bit é formado no disco por uma seqüência de várias moléculas.
Quanto maior for a densidade do disco, menos moléculas serão usadas para armazenar
cada bit e teremos um sinal magnético mais fraco. Precisamos então de uma cabeça
magnética mais precisa.
Quando é preciso ler os dados gravados, a cabeça de leitura capta o campo magnético
gerado pelas moléculas alinhadas. A variação entre os sinais magnéticos positivos e
negativos gera uma pequena corrente elétrica que caminha através dos fios da bobina.
Quando o sinal chega na placa lógica do HD, ele é interpretado como uma seqüência de
bits 1 e 0.
Vendo desta maneira, o processo de armazenamento de dados em discos magnéticos
parece ser simples, e realmente era nos primeiros discos rígidos (como o 305 RAMAC da
IBM), que eram construídos de maneira praticamente artesanal. Apesar de nos discos
modernos terem sido incorporados vários aperfeiçoamentos, o processo básico continua
sendo o mesmo.
Formatação do disco
Disco rígido instalado em um computador padrão.
Para que o sistema operacional seja capaz de gravar e ler dados no disco rígido, é
preciso que antes sejam criadas estruturas que permitam gravar os dados de maneira
organizada, para que eles possam ser encontrados mais tarde. Este processo é chamado
de formatação.
Existem dois tipos de formatação, chamados de formatação física e formatação lógica. A
formatação física é feita na fábrica ao final do processo de fabricação,que consiste em
dividir o disco virgem em trilhas, setores , cilindros e isola os badblocks (danos no HD).
Estas marcações funcionam como as faixas de uma estrada, permitindo à cabeça de
leitura saber em que parte do disco está, e onde ela deve gravar dados. A formatação
física é feita apenas uma vez, e não pode ser desfeita ou refeita através de software.
Porém, para que este disco possa ser reconhecido e utilizado pelo sistema operacional, é
necessária uma nova formatação, chamada de formatação lógica. Ao contrário da
formatação física, a formatação lógica não altera a estrutura física do disco rígido, e
pode ser desfeita e refeita quantas vezes for preciso, através do comando FORMAT do
DOS por exemplo. O processo de formatação é quase automático, basta executar o
programa formatador que é fornecido junto com o sistema operacional.
Quando um disco é formatado, ele simplesmente é organizado à maneira do sistema
operacional, preparado para receber dados. A esta organização damos o nome de
“sistema de arquivos”. Um sistema de arquivos é um conjunto de estruturas lógicas e de
rotinas que permitem ao sistema operacional controlar o acesso ao disco rígido.
Diferentes sistemas operacionais usam diferentes sistemas de arquivos.
O computador, no decorrer de sua utilização tem seu desempenho geral afetado, em
decorrência da instalação e remoção de diversos softwares, inclusive alguns que não
removem todos os arquivos e informações do seu computador, ocasionando lentidão na
sua execução.
O software básico (sistema operacional) pode apresentar falhas de funcionamento
(travamentos), instabilidade no uso, espera no carregamento de programas e softwares
diversos, ou casos extremos de corrompimento do sistema operacional (falhas na
execução do próprio) em decorrência de uso ilegal ou ataques de vírus de computador.
Uma formatação lógica apaga todos os dados do disco rígido, inclusive o sistema
operacional. Deve-se fazer isso com conhecimento técnico, para salvar/guardar dados e
informações (os backups de arquivos).
O processo de formatação é longo, e as informações contidas no disco rígido serão
totalmente apagadas (embora não definitivamente, ainda é possível recuperar alguns
dados com softwares especiais.) Ações preventivas de manutenção de computador
podem evitar que seja necessário formatar o computador.
Exemplos de sistema de arquivos
Os sistemas de arquivos mais conhecidos são os utilizados pelo Microsoft Windows: NTFS
e FAT32 (e FAT ou FAT16). O FAT32, às vezes referenciado apenas como FAT
(erradamente, FAT é usado para FAT16), é uma evolução do ainda mais antigo FAT16
introduzida a partir do MS-DOS 4.0, no Windows 95 ORS/2 foi introduzido o FAT32 (uma
versão “debugada” do Windows 95, com algumas melhorias, vendida pela Microsoft
apenas em conjunto com computadores novos). A partir do Windows NT foi introduzido
um novo sistema de arquivos, o NTFS, que é mais avançado do que o FAT (a nível de
segurança, sacrificando algum desempenho), sendo a mais notável diferença o recurso
de permissões de arquivo (sistemas multi-usuário), inexistente nos sistemas FAT e
essencial no ambiente empresarial (e ainda acrescento do metadata).
Em resumo, versões antigas, mono-usuário, como Windows 95, 98 e ME, trabalham com
FAT32 (mais antigamente, FAT16). Já versões novas, multi-usuário, como Windows XP e
Windows 2000 trabalham primordialmente com o NTFS, embora o sistema FAT seja
suportado e você possa criar uma partição FAT nessas versões.
No mundo Linux há uma grande variedade de sistemas de arquivos, sendo alguns dos
mais comuns o Ext2, Ext3 e o ReiserFS. O FAT e o NTFS também são suportados tanto
para leitura quanto para escrita.
No Mundo BSD, o sistema de arquivos é denominado FFS (Fast File System), derivado do
antigo UFS (Unix File System),
[carece de fontes?]
Atualmente
, encontramos um novo tipo de sistema de arquivo chamado
NFS (Network File System), ao qual possibilita que "HDs Virtuais" sejam utilizadas
remotamente, ou seja, um servidor disponibiliza espaço através de suas HDs físicas para
que outras pessoas utilizem-nas remotamente como se a mesma estivesse disponível
localmente . Um grande exemplo desse sistema encontraremos no Google ou no
4shared, com espaços disponíveis de até 5 GB (contas free).
Setor de boot
Quando o micro é ligado, o POST (Power-on Self Test), um pequeno programa gravado
em um chip de memória ROM na placa-mãe, que tem a função de “dar a partida no
micro”, tentará inicializar o sistema operacional. Independentemente de qual sistema de
arquivos você esteja usando, o primeiro setor do disco rígido será reservado para
armazenar informações sobre a localização do sistema operacional, que permitem ao
BIOS “achá-lo” e iniciar seu carregamento.
No setor de boot é registrado aonde o sistema operacional está instalado, com qual
sistema de arquivos o disco foi formatado e quais arquivos devem ser lidos para
inicializar o micro. Um setor é a menor divisão física do disco, e possui 99% das vezes
512 Bytes(nos CD-ROMs e derivados é de 2048 Bytes). Um cluster (também chamado
de agrupamento) é a menor parte reconhecida pelo sistema operacional, e pode ser
formado por vários setores. Um arquivo com um número de bytes maior que o tamanho
do cluster, ao ser gravado no disco, é distribuído em vários clusters. Porém um cluster
não pode pertencer a mais de um arquivo.
Um único setor de 512 Bytes pode parecer pouco, mas é suficiente para armazenar o
registro de boot devido ao seu pequeno tamanho. O setor de boot também é conhecido
como “trilha MBR”, “trilha 0”, etc.
Como dito, no disco rígido existe um setor chamado Trilha 0, geralmente (só em
99.999% das vezes) está gravado o (MBR) (Master Boot Record), que significa
“Registro de Inicialização Mestre”, um estilo de formatação, onde é encontrada
informações tipo: como está dividido o disco(no sentido lógico), a ID de cada tabela de
partição do disco, qual que dará o boot etc... O MBR é lido pelo BIOS, que interpreta a
informação e em seguida ocorre o chamado “bootstrap”, “Levantar-se pelo cadaço”, lê as
informações de como funciona o sistema de arquivos e efetua o carregamento do
Sistema Operacional.
O MBR e a ID da tabela de partição ocupam apenas um setor de uma trilha, o restante
dos setores desta trilha não são ocupados, permanecendo vazios, servindo como área de
proteção do MBR. É nesta mesma área que alguns vírus (Vírus de Boot) se alojam.
Disquetes, Zip-disks e CD-ROMs não possuem MBR, no entanto possuem tabela de
partição, no caso do CD-ROMs e seu descendentes(DVD-ROM, HDDVD-ROM, BD-ROM...)
possuem tabela própria, podendo ser CDFS(Compact Disc File System) ou UDF
(Universal Disc Format) ou, para maior compatibilidade, os dois; já os cartões de
Memória Flash e Pen-Drives possuem tabela de partição e podem ter até mesmo MBR,
dependendo de como formatados.
SETOR DE BOOT E MBR NÃO SÃO A MESMA COISA
O MBR situa-se no primeiro setor da primeira trilha do primeiro prato do HD (setor um,
trilha zero, face zero, prato zero).
O MBR é constituído pelo Bootstrap e pela Tabela de Partição. O Bootstrap é o
responsável por analisar a Tabela de Partição em busca da partição ativa. Em seguida
ele carrega na memória o Setor de Boot da partição. Esta é a função do Bootstrap.
A Tabela de Partição contém informações sobre as partições existentes no disco.
Informações como o tamanho da partição; em qual trilha/setor/cilindro ela começa e
termina; o sistema de arquivos da partição; se é a partição ativa... ao todo são dez
campos. Quatro campos para cada partição possível (por isso só se pode ter 4 partições
primárias, e por isso também que foi-se criada a partição estendida...), e dez campos
para identificar cada partição existente.
Quando acaba o POST, a instrução INT 19 do BIOS lê o MBR e o carrega na memória, e
é executado o Bootstrap. O Bootstrap vasculha a Tabela de Partição em busca da
partição ativa, e em seguida carrega na memória o Setor de Boot dela.
A função do Setor de Boot é a de carregar na memória os arquivos de inicialização do
SO.
O Setor de Boot fica situado no primeiro setor da partição ativa.
História do disco rígido
Um antigo disco rígido IBM
Sem dúvida, o disco rígido foi um dos componentes que mais evoluíram na história da
computação. O primeiro disco rígido foi construído pela IBM em 1957, e era formado por
nada menos que 50 discos de 24 polegadas de diâmetro, com uma capacidade total de 5
megabytes, incrível para a época. Este primeiro disco rígido foi chamado de 305 RAMAC
(Random Access Method of Accounting and Control). Em 1973 a IBM lançou o modelo
3340 "Winchester", com dois pratos de 30 megabytes e tempo de acesso de 30
milissegundos. Assim criou-se o termo 30/30 Winchester (uma referência à espingarda
Winchester 30/30), termo muito usado antigamente para designar HDs de qualquer
espécie. Ainda no início da década de 1980, os discos rígidos eram muito caros e
modelos de 10 megabytes custavam quase 2.000 dólares americanos, enquanto hoje
compramos modelos de 160 gigabytes por menos de 100 dólares. Ainda no começo dos
anos 80, a mesma IBM fez uso de uma versão pack de discos de 80 mb, usado nos
sistemas IBM Virtual Machine.
Capacidade do disco rígido
A capacidade de um disco rígido atualmente disponível no mercado para uso doméstico/
comercial varia de 10 a 1500 GB, assim como aqueles disponíveis para empresas, de até
1.5 TB. O HD evoluiu muito. O mais antigo possuía 5 MB (aproximadamente 4 disquetes
de 3 1/2 HD), sendo aumentada para 30 MB, em seguida para 500 MB (20 anos atrás), e
10 anos mais tarde, HDs de 1 a 3 GB. Em seguida lançou-se um HD de 10 GB e
posteriormente um de 15 GB. Posteriormente, foi lançado no mercado um de 20 GB, até
os atuais HDs de 60GB a 1TB. As empresas usam maiores ainda: variam de 40 GB até
1.5 TB, mas a Seagate informou que em 2010 irá lançar um HD de 200 TB (sendo 50 TB
[carece de fontes?]
por polegada quadrada, contra 70 GB dos atuais HDs)
. No entanto, as
indústrias consideram 1 GB = 1000 * 1000 * 1000 bytes, pois no Sistema Internacional
3
de Unidades(SI), que trabalha com potências de dez, o prefixo giga quer dizer * 1000
9
ou * 10 , enquanto os sistemas operacionais consideram 1 GB = 1024 * 1024 * 1024
bytes, já que os computadores trabalham com potências de dois e 1024 é a potência de
dois mais próxima de mil. Isto causa uma certa disparidade entre o tamanho informado
na compra do HD e o tamanho considerado pelo Sistema Operacional, conforme
mostrado na tabela abaixo. Além disso, outro fator que pode deixar a capacidade do
disco menor do que o anunciado é a formatação de baixo nível (formatação física) com
que o disco sai de fábrica.
Informado na CompraConsiderado pelo Sistema
10 GB
9,31 GB
15 GB
13,97 GB
20 GB
18,63 GB
30 GB
27,94 GB
40 GB
37,25 GB
80 GB
74,53 GB
120 GB
111,76 GB
160 GB
149,01 GB
200 GB
186,26 GB
250 GB
232,83 GB
300 GB
279,40 GB
500 GB
465,66 GB
750 GB
698,49 GB
1 TB
931,32 GB
1.5 TB
1.396,98 GB
Todos os valores acimas são aproximações
Toda a vez que um HD é formatado, uma pequena quantidade de espaço é marcada
como utilizada.
Características físicas dos discos rígidos
Tem como características não serem voláteis, ou seja, trata-se de uma memória que ao
ser desligada suas informações não são perdidas. Seus discos lacrados possuem discos
de metal magnetizado onde os dados são gravados.
Sistema operativo
Origem: Wikipédia, a enciclopédia livre.
Ubuntu
(português europeu)
(português brasileiro)
Um sistema operativo
ou sistema operacional
é
um programa ou um conjunto de programas cuja função é servir de interface entre um
computador e o usuário.
Segundo alguns autores (Silberschatz et al, 2005; Stallings, 2004; Tanenbaum, 1999),
existem dois modos distintos de conceituar um sistema operacional:
• pela perspectiva do usuário ou programador (visão top-down): é uma abstração
do hardware, fazendo o papel de intermediário entre o aplicativo (programa) e
os componentes físicos do computador (hardware); ou
• numa visão bottom-up, de baixo para cima: é um gerenciador de recursos, i.e.,
controla quais aplicações (processos) podem ser executadas, quando, que
recursos (memória, disco, periféricos) podem ser utilizados.
A sigla usual para designar esta classe de programas é SO (em português) ou OS (do
inglês Operating System).
Índice
• 1 História
• 2 Visão geral
• 3 Funcionamento
◦ 3.1 Gerenciamento de processos
◦ 3.2 Gerenciamento de memória
◦ 3.3 Sistema de arquivos
• 4 Classificações
• 5 Referências
• 6 Ver também
História
Na primeira geração de computadores (aproximadamente 1945-1955), que eram
basicamente construídos com válvulas e painéis, os sistemas operacionais "não
existiam". Os programadores, que também eram os operadores, controlavam o
computador por meio de chaves, fios e luzes de aviso.
Na geração seguinte (aproximadamente 1955-1965), foram criados os sistemas em lote
(batch systems), que permitiram melhor uso dos recursos computacionais. A base do
sistema operacional era um programa monitor, usado para enfileirar tarefas (jobs). O
usuário foi afastado do computador; cada programa era escrito em cartões perfurados,
que por sua vez eram carregados, juntamente com o respectivo compilador
(normalmente Fortran ou Cobol), por um operador, que por sua vez usava uma
linguagem de controle chamada JCL (job control language).
Esta página ou secção foi marcada para revisão, devido a inconsistências e
dados de confiabilidade duvidosa. Se tem algum conhecimento sobre o tema,
por favor verifique e melhore a consistência e o rigor deste artigo. Considere utilizar
{{revisão-sobre}} para associar este artigo com um WikiProjeto.
No início da computação os primeiros sistemas operacionais eram únicos, pois cada
mainframe vendido necessitava de um sistema operacional específico. Esse problema era
resultado de arquiteturas diferentes e da linguagem de máquina utilizada. Após essa
fase, iniciou-se a pesquisa de sistemas operacionais que automatizassem a troca de
tarefas (jobs), pois os sistemas eram monousuários e tinham cartões perfurados como
entrada (eliminando, assim, o trabalho de pessoas que eram contratadas apenas para
trocar os cartões perfurados).
Um dos primeiros sistemas operacionais de propósito geral foi o CTSS, desenvolvido no
MIT. Após o CTSS, o MIT, os laboratórios Bell da AT&T e a General Eletric desenvolveram
o Multics, cujo objetivo era suportar centenas de usuários. Apesar do fracasso comercial,
o Multics serviu como base para o estudo e desenvolvimento de sistemas operacionais.
Um dos desenvolvedores do Multics, que trabalhava para a Bell, Ken Thompson,
começou a reescrever o Multics num conceito menos ambicioso, criando o Unics (em
1969), que mais tarde passou a chamar-se Unix. Os sistemas operacionais eram
geralmente programandos em assembly, até mesmo o Unix em seu início. Então, Dennis
Ritchie (também da Bell) criou a linguagem C a partir da linguagem B, que havia sido
criada por Thompson. Finalmente, Thompson e Ritchie reescreveram o Unix em C. O
Unix criou um ecossistema de versões, onde destacam-se: System V e derivados (HPUX, AIX); família BSD (FreeBSD, NetBSD, OpenBSD, etc.), Linux e até o Mac OS X (que
deriva do Mach e FreeBSD).
Na década de 1970, quando começaram a aparecer os computadores pessoais, houve a
necessidade de um sistema operacional de utilização mais fácil. Em 1980, William (Bill)
Gates e seu colega de faculdade, Paul Allen, fundadores da Microsoft, compram o
sistema QDOS ("Quick and Dirty Operating System") de Tim Paterson por $50.000,
batizam-no de DOS (Disk Operating System) e vendem licenças à IBM. O DOS vendeu
muitas cópias, como o sistema operacional padrão para os computadores pessoais
desenvolvidos pela IBM. IBM e Microsoft fariam, ainda, uma parceria para o
desenvolvimento de um sistema operacional multitarefa chamado OS/2. Após o fim da
breve parceria a IBM seguiu sozinha no desenvolvimento do OS/2.
No começo da década de 1990, um estudante de computação finlandês postou um
comentário numa lista de discussão da Usenet dizendo que estava desenvolvendo um
kernel de sistema operacional e perguntou se alguém gostaria de auxiliá-lo na tarefa.
Este estudante chamava-se Linus Torvalds e o primeiro passo em direção ao tão
conhecido Linux foi dado naquele momento.
Visão geral
Um sistema operativo pode ser visto como um programa de grande complexidade que é
responsável por todo o funcionamento de uma máquina desde o software a todo
hardware instalado na máquina. Todos os processos de um computador estão por de
trás de uma programação complexa que comanda todas a funções que um utilizador
impõe à máquina. Existem vários sistemas operativos; entre eles, os mais utilizados no
dia a dia, normalmente utilizados em computadores domésticos, são o Windows, Linux,
OS/2 e Mac OS X.
Um computador com o sistema operativo instalado poderá não dar acesso a todo o seu
conteúdo dependendo do utilizador. Com um sistema operativo, podemos estabelecer
permissões a vários utilizadores que trabalham com este. Existem dois tipos de contas
que podem ser criadas num sistema operativo, as contas de Administrador e as contas
limitadas. A conta Administrador é uma conta que oferece todo o acesso à máquina,
desde a gestão de pastas, ficheiros e software de trabalho ou entretenimento ao controlo
de todo o seu Hardware instalado. A conta Limitada é uma conta que não tem
permissões para aceder a algumas pastas ou instalar software que seja instalado na raiz
do sistema ou então que tenha ligação com algum Hardware que altere o seu
funcionamento normal ou personalizado pelo Administrador. Para que este tipo de conta
possa ter acesso a outros conteúdos do disco ou de software, o administrador poderá
personalizar a conta oferecendo permissões a algumas funções do sistema como
também poderá retirar acessos a certas áreas do sistema.
O sistema operativo funciona com a iniciação de processos que este irá precisar para
funcionar correctamente. Esses processos poderão ser ficheiros que necessitam de ser
frequentemente actualizados, ou ficheiros que processam dados úteis para o sistema.
Poderemos ter acesso a vários processos do sistema operativo a partir do gestor de
tarefas, onde se encontram todos os processos que estão em funcionamento desde o
arranque do sistema operativo até a sua utilização actual. Pode-se também visualizar a
utilização da memória por cada processo, no caso de o sistema operativo começar a
mostrar erros ou falhas de acesso a programas tornando-se lento, pode-se verificar no
gestor de tarefas qual dos processos estará bloqueado ou com elevado número de
processamento que está a afectar o funcionamento normal da memória.
Funcionamento
Um sistema operacional possui as seguintes funções:
1. gerenciamento de processos;
2. gerenciamento de memória;
3. sistema de arquivos;
4. entrada e saída de dados.
Gerenciamento de processos
O sistema operacional multitarefa é preparado para dar ao usuário a ilusão que o
número de processos em execução simultânea no computador é maior que o número de
processadores instalados. Cada processo recebe uma fatia do tempo e a alternância
entre vários processos é tão rápida que o usuário pensa que sua execução é simultânea.
São utilizados algoritmos para determinar qual processo será executado em determinado
momento e por quanto tempo.
Os processos podem comunicar-se, isto é conhecido como IPC (Inter-Process
Communication). Os mecanismos geralmente utilizados são:
• sinais,
• pipes,
• named pipes,
• memória compartilhada,
• soquetes (sockets),
• semáforos,
• trocas de mensagens.
O sistema operacional, normalmente, deve possibilitar o multiprocessamento (SMP ou
NUMA). Neste caso, processos diferentes e threads podem ser executados em diferentes
processadores. Para essa tarefa, ele deve ser reentrante e interrompível, o que
significa que pode ser interrompido no meio da execução de uma tarefa.
Gerenciamento de memória
O sistema operacional tem acesso completo à memória do sistema e deve permitir que
os processos dos usuários tenham acesso seguro à memória quando o requisitam.
Vários sistemas operacionais usam memória virtual, que possui 3 funções básicas:
1. assegurar que cada processo tenha seu próprio espaço de endereçamento,
começando em zero, para evitar ou resolver o problema de relocação
(Tanenbaum, 1999);
2. prover proteção da memória para impedir que um processo utilize um endereço
de memória que não lhe pertença;
3. possibilitar que uma aplicação utilize mais memória do que a fisicamente
existente.
Sistema de arquivos
A memória principal do computador é volátil, e seu tamanho é limitado pelo custo do
hardware. Assim, os usuários necessitam de algum método para armazenar e recuperar
informações de modo permanente.
Um arquivo é um conjunto de bytes, normalmente armazenado em um dispositivo
periférico não volátil (p.ex., disco), que pode ser lido e gravado por um ou mais
processos.
O sistema de arquivos é a estrutura que permite o gerenciamento de arquivos -criação, destruição, leitura, gravação, controle de acesso, etc.
Classificações
Em relação ao seu projeto (arquitetura), segundo Tanenbaum (1999):
• Kernel monolítico ou monobloco: o kernel consiste em um único processo
executando numa memória protegida (espaço do kernel) executando as
principais funções. Ex.: OS/2, Windows, Linux, FreeBSD.
• Microkernel ou modelo cliente-servidor: o kernel consiste de funções mínimas
(comunicação e gerenciamento de processos), e outras funções, como sistemas
de arquivos e gerenciamento de memória, são executadas no espaço do usuário
como serviços; as aplicações (programas) são os clientes. Ex.: GNU Hurd, Mach.
• Sistema em camadas: funções do kernel irão executar em camadas distintas, de
acordo com seu nível de privilégio. Ex.: Multics.
• Monitor de máquinas virtuais: fornece uma abstração do hardware para vários
sistemas operacionais. Ex.: VM/370, VMware, Xen.
Quanto à capacidade de processamento, pode-se usar a seguinte classificação:
• Monotarefa: pode-se executar apenas um processo de cada vez Ex.: DOS.
• Multitarefa: além do próprio SO, vários processos de utilizador (tarefas) estão
carregados em memória, sendo que um pode estar ocupando o processador e
outros ficam enfileirados, aguardando a sua vez. O compartilhamento de tempo
no processador é distribuído de modo que o usuário tenha a impressão que
vários processos estão sendo executados simultaneamente. Ex: OS/2, Windows,
Linux, FreeBSD e o Mac OS X.
• Multiprocessamento: o SO distribui as tarefas entre dois ou mais processadores.
• Multiprogramação: o SO divide o tempo de processamento entre vários
processos mantendo o processador sempre ocupado.
Wikipedia:GNU Free Documentation License
Origem: Wikipédia, a enciclopédia livre.

Documentos relacionados