Escritos
B. Piropo
Anteriores:
< Trilha Zero >
Volte de onde veio
20/11/1995

< EIDE e Fast ATA II: Nos Tempos do MFM e RLL >


Antes do XT incorporar seu disco rígido, tudo o que havia eram disquetes flexíveis. Isso no que toca aos micros pessoais, bem entendido: as máquinas de grande porte já usavam discos rígidos desde os idos de 1957, quando a IBM lançou uma unidade para o RAMAC 350. Uma senhora trapizonga com cinqüenta discos de vinte e quatro polegadas de diâmetro cada para armazenar um total de cinco megabytes (é isso mesmo: os números e unidades estão por extenso para deixar claro que não se trata de erro de impressão). E essa maravilha da tecnologia nem era vendida: só era cedida em regime de aluguel, custando a bagatela de 35 mil dólares por ano, ou seja, quase seiscentos dólares por megabyte por mês (em resumo: com que se pagava naquele tempo pelo aluguel mensal do espaço em disco para armazenar um megabyte compra-se hoje um disco de mais de um gigabyte - e isso sem levar em conta a inflação americana, menor que a nossa mas que em quase quarenta anos faz uma diferença pra lá de expressiva).

Mas como dizíamos, quando foi lançado, o disco rígido do XT pouco diferia de um disco flexível. Muito maior capacidade, é verdade, meio magnético recobrindo placas metálicas em vez de plástico flexível e tudo isso protegido em caixa metálica hermeticamente selada - mas do ponto de vista de funcionamento, fundamentalmente igual a um disco flexível. Mas como funcionava esse trambolho?

Imagine um disco semelhante a um velho LP de vinil, com a diferença que os sulcos, ao invés de se desenvolverem em espiral contínua desde a borda até quase o centro, fossem circunferências concêntricas. Cada uma dessas circunferências é uma trilha (das quais a mais importante é a externa, a Trilha Zero - não somente pela razão que lhe ocorre por ser evidente, mas também porque ela contém o setor de boot e a FAT).

Como os discos magnéticos, os discos de vinil tinham duas faces - porém, para ouvir o que estava gravado na face oposta da que estivesse "tocando" havia que remover o disco do prato e virá-lo, já que no toca-discos só havia uma agulha. Mas no drive de discos flexíveis (e rígidos) há uma cabeça magnética para cada face, e todas podem ser lidas sem precisar "virar o disco". Além disso, nos discos de vinil com seu sulco espiralado, a agulha desce sobre o sulco e nele permanece a medida que se desloca para o centro, ao passo que nos discos magnéticos com suas trilhas concêntricas a cabeça de leitura-gravação precisa "saltar" os espaços vazios entre trilhas. Como isso pode ser feito?

É fácil: imagine um motor elétrico cujo eixo, em vez de girar continuamente como todo motor que se preza, move-se aos "pulos" sempre iguais e um de cada vez. Isso se chama "motor de passo" (cada "pulo" é um passo) e pode ser construído com grande precisão, de modo que quando recebe o comando para se mover um certo número de passos, parará sempre na mesma posição. Pronto: ponha um motor destes dentro do drive com seu eixo acoplado às cabeças magnéticas e faça com que cada passo leve as cabeças para cima de uma trilha, que seu problema está resolvido. Mas não completamente: por maior que seja a precisão com que se construa os motores de passo, com o desgaste as cabeças tendem a parar ligeiramente fora da posição original. E "ligeiramente", por menos que seja isso, é muito quando se trata de eletrônica. Mais tudo tem jeito e adiante você verá como esse problema foi resolvido.

Resta a maneira de ler e gravar dados. Naquele tempo, também igual para discos rígidos e flexíveis: um chip denominado "endec" (de "encoder/decoder", ou codificador-decodificador) recebe dados do micro sob a forma de um fluxo de bits e os codifica sob a forma de variações de corrente elétrica, enviando-os para serem gravados no disco pela cabeça de leitura-gravação, que converte as variações de corrente elétrica em variações de fluxo magnético. Depois, recebe de volta uma corrente elétrica resultante das variações de fluxo magnético "lido" no disco pela mesma cabeça de leitura-gravação e decodifica suas variações, transformando-as em bits, que envia para o micro. Tudo muito simples: cada inversão de fluxo magnético que a cabeça detecta no disco corresponde a um bit valendo um. Se não houve inversão, o bit vale zero. Esse sistema singelo, quase rudimentar, chama-se MFM (de "Modified Frequency Modulation", já que se baseia na modulação da freqüência do fluxo magnético). Leu isso e acha que conhece algo parecido? Pois conhece mesmo: o endec é absolutamente análogo a um modem. A diferença é que o modem converte bits em variações de freqüência elétrica para serem transmitidos por uma linha telefônica para outro modem, enquanto o endec os converte em variações de freqüência magnética para serem gravados diretamente no disco.

Nos discos MFM, o endec era um circuito integrado situado na placa controladora do disco rígido, espetada em um dos slots da placa mãe e ligada ao drive por dois cabos chatos. Um desses cabos servia apenas para transportar os dados entre a cabeça magnética que os lia na superfície do disco e o endec situado na placa controladora. Esse cabo media alguns decímetros - aparentemente pouco, mas em eletrônica uma enorme distância. E essa distância, como veremos mais tarde, faz uma grande diferença quando se trata de transportar sinais tão fracos quanto os lidos no disco pela cabeça magnética.

Na busca pelo aumento da capacidade dos discos rígidos, logo se descobriu que gravar dados bit a bit era um desperdício de espaço. Deveria haver um meio de comprimir os dados, fazendo-os ocupar menos espaço. E inventaram um jeito, criando um novo esquema de codificação de dados. Denominaram-no de RLL (de "Run Length Limited") e ganharam 50% do espaço em disco: no mesmo HD MFM onde se gravava 20Mb poder-se-ia gravar 30Mb usando o RLL. Foi a primeira grande diferença entre discos rígidos e flexíveis, já que estes até hoje usam algo semelhante ao MFM. Note que só mudou o esquema de codificação de dados: a interface continuou a mesma (calma que já explico). A única diferença estava no endec, o chip que codifica e decodifica dados, que por meio de um algoritmo de compressão podia simular uma densidade magnética maior, como se mais bits coubessem no mesmo espaço. Se você continua fazendo analogia com os modems e achou que a diferença entre MFM e RLL é a mesma que entre um modem comum e um que usa um esquema de compressão de dados, continua acertando.

Logo ali em cima eu falei de "interface" e disse que depois explicava. E disso porque interface de discos rígidos será justamente o assunto da semana que vem. Até lá.

B. Piropo