1. Introdução

 2. Histórico

 3. Formatação

 4. Funcionamento

 5. Sistema de Dados

 6. Tecnologias

 7. RAID

 8. Fabricantes

 9. Extras

 10. Conclusão

 11. Bibliografia

INTRODUÇÃO

DEFINIÇÃO


Disco rígido, disco duro, (popularmente também winchester) ou HD (do inglês Hard Disk) são os nomes dados ao dispositivo 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 nossos dados e executamos nossos sistemas e programas.

Este sistema é necessário porque o conteúdo da memória RAM é apagado quando o computador é desligado ou reiniciado. Desta forma, temos um meio de executar novamente programas e arquivos anteriormente utilizados. O disco rígido é também chamado de memória de massa ou ainda de memória secundária. Nos sistemas operacionais 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 rigidos diferentes: IDE/ATA, Serial-ATA, SCSI e Fibre channel.

EVOLUÇÃO


Em setembro de 1956 a IBM lançou o 305 RAMAC, o primeiro computador com Hard Disk (HDD).
Pesava perto de 1 tonelada
.

O primeiro PC IBM, apresentado em 1981, não previa nenhum tipo de disco fixo. O código do BIOS não reconhecia nenhum suporte deste tipo, e as primeiras versões de DOS limitavam as memorizações em massa, limitando o número de diretivas e dos arquivos que podiam ser criados. Isso não nos deveria surpreender, se pensarmos que o primeiro PC, a 4,77 MHz, era fornecido com 16K de RAM, expansíveis a 64 K. Além do leitor floppy, para o sistema operacional era possível a expansão do leitor a fitas e da ROM de base.

O uso de um disco fixo em um PC requer:

* IRQ Hardware (para o pedido de interrupção)

* Endereço I/O para o controller

* Um canal DMA (agora opcional)

* Código de baixo nível

* Interface física do bus (integrada ou expansível)

* Suporte do sistema operacionais

* Energia de esfriamento suficiente.

Depois que DOS 2 introduziu a possibilidade de criação de subdiretorios, e o suporte para dispositivos de memorização em massa, as empresas começaram a produzir e a vender discos fixos para PC. Estes eram compostos por um gabinete externo que continha o disco, uma controladora e um delicado sistema de alimentação do disco (do momento que 63,5 watts fornecidos pelo alimentador do PC não eram suficientes). Tais dispositivos eram exportados para outras arquiteturas e eram conectados por um cabo e um adaptador de 8 bits, que era inserido em um slot disponível. Este subsistema era configurado para usar um IRQ, um canal DMA, e um range de portas I/O, e o driver era colocado a disposição de um dispositivo carregado em memória logo depois do boot (executando o boot de um floppy).

Em 1983 a IBM produziu o IBM XT (eXTended), com 10MB de disco fixo integrado. IBM trabalhou com uma empresa (Xebec), para integrar os componentes do disco, normalmente localizados em um gabiente externo, ao interno do computador. Introduzem também uma placa para interfacear o bus, criando aquilo que é comunamente chamado o “controladora do disco fixo”.

O código para o gerenciamento do disco é fornecido por um chip ROM no controller, que expande as sub-rotinas presentes no BIOS, e a corrente fornecida pelo alimentador foi levada a 135 watts, para produzir a potencia necessária ao disco fixo interno.

A IBM XT usava:

* IRQ 5

* Endereços I/O de range 320-32f

* Canal DMA 3

* Código programa em ROM C8000

* DOS 2.0 ou melhor

Diversas empresas começaram a produzir e vender esses tipos de periféricos, com diversos melhoramentos, entre os quais: maior capacidade física, melhores performances, e um controlador floppy integrado na mesma placa (para preservar os slots disponíveis). Este subsistema podia também ser colocado em um PC original, se a alimentação de energia elétrica interna fosse adequada.

Em 1984 apareceu o IBM AT (Advanced Technology), que levou a uma completa revisão ao sistema de discos fixos. O código para o boot foi incluído diretamente no BIOS da placa mãe, eliminando a necessidade de um chip a mais no novo controlador a 16 bits, e também melhora notavelmente os tempos de acesso ao disco. Nesse sistema foi introduzido também um IRQ mais elevado, eliminando assim a necessidade de usar o DMA para os discos, e mudou o range de endereços I/O.

A IBM usava:

* IRQ 14

* Endereços I/O de range 1f0-1f8

* Canal DMA – nenhum

* Código programa em BIOS da placa mãe

* DOS 2.0 ou melhor

Os detalhes de configuração hardware para o AT, incluindo os parâmetros do disco fixo, eram memorizados em um chip CMOS de baixa potência conexo a uma pequena bateria, eliminando numerosos switchs e jumpers de configurações presentes na placa mãe dos modelos velhos. A bateria permitia mater as informações até quando o computador estava desligado e gerencia-las através de um menu de configurações.

O primeiro modelo de AT suportava 14 diferentes tipos de drive, reconhecendo os discos com capacidade entre 10 e 112MB. Cada drive que não respeitava esses parâmetros físicos deveria ter um chip ROM no controller, que expandia o BIOS, ou então era necessário carregar o código do drive no momento do boot.

As versões de DOS precedentes ao 4.0 (ou 3.31) não suportavam partições maiores de 32MB independentemente das dimensões do drive. Isso por causa que o endereçamento dos setores não podiam superar o valor de 16 bits (até a 65.536 setores). A criação de partições maiores pedia o uso de um software como Disk Manager da Ontrack. Esta solução , mesmo sendo uma das melhores punha muitos problemas de compatibilidade com outros instrumentos para o gerenciamento dos discos, pois criava uma partição não DOS.

O número dos tipos de drive reconhecidos do BIOS estendido além de 40, e muitos BIOS modernos fornecem um tipo com parâmetros definíveis pelo usuário . Muitos PC de hoje usam ainda esses CMOS originais para o controle e a configuração dos parâmetros dos discos fixos, ainda se foram muitas mudanças no modo de memorizar e atualizar as informações no disco. Isso criou alguns limites, entre os quais um problema com o uso de dois ou mais discos fixos, ou o limite do BIOS e do sistema operacional de não reconhecer mais de 1024 cilindros, 16 cabeçotes e 63 setores por traço.

Cada setor contem 512 byte, o drive com mais capacidade é de 504MB. )1024 X 16 X 63 = 1,032,192 setores X 512 = 528,482,304 byte)

Para compreender esse limite devemos entender o modo pelo qual o PC acede ao disco.

Em primeiro lugar são enviados comandos I/O ao controller, através de um range de endereços de portas reservadas. Esse processo é muito complicado e maçante, e o BIOS inclui uma sub-rotina (INT 13) para executar essa função. O sistema operacional DOS tem também outras funções que simplificam este processo. Entre essas tem a função INT25/26 que lê e escreve setores absolutos de um drive, ou a função de alto nível (INT 21) para abrir, fechar e escrever dados em um arquivo. Muitos programas confiam nessa função DOS para controlar o acesso ao disco, e é o DOS que se preocupa de chamar a sub-rotina INT 13 do BIOS, que executa os comandos I/O necessários.

Essas sub-rotinas estão em Assembly e são carregadas na memória do BIOS ou na RAM, durante a inicialização do sistema.

As rotinas em assembly memorizam e manipulam os valores dos registros da CPU. Os registros menores para PC baseados na arquitetura INTEL são de 16 bits. Cada programa ou rotina devem ser compatíveis também com as precedentes versões dessa arquitetura, então devem ser usados registros a 16 bits, seja que venha executado em um 8088 que em um Pentium.

A rotina INT 13 é a coluna dorsal da compatibilidade entre PC, e utiliza os registros a 16 bits no seguinte modo:

* DX – 8 bits pelo número de cabeçotes e 8 bits pelo número de drive

* CX – 10 bits pelo número do cilindro e 6 bits pelo número do setor

O número de 10 bits maior é 1024, disso, o limite no número dos cilindros (de 0 à 1023), com 6 bit Obtém-se no máximo 64 (de 0 à 63), permitindo 64 (de 0 à 63)setores por traços.

O registro DX permite um máximo de 255 cabeçotes, e não as 16 declaradas nas específicas originais. É isso que permite aos discos até 8GB de serem igualmente compatíveis com INT 13.

Se o registro DX prevê 8 bits para o número do drive, não deveriam ser 255 os discos controláveis, ao invés de somente 2? Quando o INT 13 manda os comandos ao controler do drive, deveria conhecer ao menos a geometria física do drive em questão. Durante a ascensão do sistema, os valores relativos ao tipo de disco são lidos da CMOS e memorizados em uma área de RAM chamada BIOS DATA AREA. Os apontadores nesta área são memorizados tabela dos interrupt (aos endereços 0:104h e 0:118h). A tabela reserva apontadores somente para dois drive, assim mesmo se a CMOS contivesse mais valores, a rotina standard não saberia como gerenciá-los.

Porque as rotinas INT 13 são tão limitadas? A resposta é simples: foram escritas nos tempos em que discos de 10 MB e 20 MB eram a norma, e 120 MB era quase inacreditável. Foram projetadas para se comunicar com um controlador com uma interface específica, o standard ST412/506 (controller WD1003), e as específicas para a passagem nos parâmetros prevêem 10 bits pelo número de cilindros, 4 por número de cabeçotes e somente 1 por número de drive.

Algumas dessas limitações foram passadas substituindo a INT 13 nos PC novos, com uma nova rotina que reconhece e gerencia devices diferentes. Esse é o motivo pelo qual virtualmente cada adaptador SCSI inclui um chip ROM , e precisa impostar no BIOS o tipo de drive no ZERO.

 
Principal Grupo de TeleInformática e Automação Departamento de Eletrônica Escola Politécnica Universidade Federal do Rio de Janeiro