15.3.10

HDs: a transição para os setores de 4 kbytes

Tradicionalmente, os HDs usam setores de 512 bytes, uma característica que persiste desde os HDs da década de 80. Do ponto de vista dos sistemas operacionais e sistemas de arquivos, o uso de setores de 512 bytes garante um acesso a disco livre de problemas, já que os clusters usados pelo sistema de arquivos são sempre compostos por um conjunto de setores no HD. Ao usar clusters de 4 kbytes, por exemplo, cada cluster será sempre composto por 8 setores.

O grande problema é que cada setor precisa conter uma área separada de bits de ECC (necessários para verificar os dados lidos a partir dos discos e corrigir erros), além de uma pequena área de separação correspondente ao preâmbulo e bits de sincronismo (Sync/DAM) que permite que a controladora identifique o início e o final de cada setor.

Conforme a capacidade de armazenamento dos HDs foi aumentando, a área da superfície ocupada por cada setor foi se tornando cada vez menor e o sinal magnético mais fraco. Com isso, os fabricantes se viram obrigados a dedicar percentagens cada vez maiores da área útil dos discos a estas áreas redundantes dentro de cada setor.

A Western Digital, por exemplo, utiliza um total de 80 bytes adicionais por setor nos HDs de 1 TB, o que corresponde a uma perda de 13% na capacidade. Mantendo o uso de setores de 512 bytes seria necessário aumentar a área de ECC para 80 bytes nas próximas gerações, o que aumentaria a perda para 19%.

Embora não seja possível reduzir o número de bits de ECC por setor sem comprometer a confiabilidade dos discos, os fabricantes logo chegaram à conclusão de que seria possível reduzir consideravelmente o overhead ao adotar o uso de setores maiores. O grande motivo é que o sistema de ECC se torna progressivamente mais eficiente (menos bits de ECC por kbyte de dados) conforme aumenta o tamanho dos blocos. Com isso, ao usar setores maiores a proporção de bits de ECC por kbyte de dado se torna menor e a diferença pode ser usada para aumentar a capacidade de armazenamento dos HDs.

Existem pesquisas com relação ao aumento dos tamanho dos setores desde o final da década de 90, mas os fabricantes chegaram a um consenso apenas em 2006, concordando em torno do uso de setores de 4 kbytes, que é a menor área de alocação usada na maioria dos sistemas de arquivos atuais. Com a mudança, passamos a ter uma única área de redundância no final de cada setor de 4 kbytes, em vez de usar oito áreas separadas, uma para cada setor de 512 bytes.

No caso da Western Digital, por isso, isso representou uma redução de 66% (de 80 bytes por setor de 512 bytes para um total de 140 bytes por setor de 4 kbytes), o que representa um ganho real de 9% em relação aos setores de 512 bytes com 40 bytes de ECC e de 15% no caso dos setores de 512 bytes com 80 bytes de ECC, como você pode ver nesse slide da Western Digital:


A primeira a iniciar a transição foi a Western Digital, com a série de 1 TB da linha Caviar Green. O novo sistema foi batizado de "Advanced Format" e os primeiros HDs incluem um aviso sobre a necessidade de "alinhar" as partições ao usar o Windows XP:


Para manter a compatibilidade com o Windows XP e distribuições Linux antigas (ainda sem suporte aos setores de 4 KB) estes drives utilizam um sistema de emulação (batizado de read-modify write, ou RMW), que faz com que os drivers reportem o uso de setores de 512 bytes para o sistema, fazendo a tradução dos endereços via software.

O grande problema é que o Windows XP cria por default a primeira partição a partir do setor 63, um setor antes dos 64 setores que seriam necessários para que o espaço correspondesse a 8 setores de 4 kbytes. Essa simples diferença de um setor no início da partição faz com que todos os clusters da partição fiquem desalinhados em relação aos setores, com cada cluster ocupando 512 bytes do setor anterior e 3584 bytes do subsequente:


Embora o sistema continue funcionando normalmente, o desalinhamento reduz consideravelmente o desempenho do HD (obrigando a controladora a ler os dois setores e reorganizar os dados antes de entregá-los ao sistema), daí a necessidade de usar o WDAlign para alinhar a partição. Como pode imaginar, ele trabalha movendo fisicamente todos os dados, o que torna a operação demorada.

Embora o Windows Vista e o Windows 7 não estejam sujeitos ao problema (eles são capazes de alinhar as partições criadas durante a instalação automaticamente), você pode se deparar com o problema caso restaure a imagem de uma partição criada anteriormente.

Embora tenha citado a Western digital como exemplo, é apenas questão de tempo até que todos os demais fabricantes iniciem a transição. Em um primeiro momento todos os drives utilizarão o sistema de emulação e por isso continuarão funcionando em conjunto com sistemas operacionais antigos (com exceção do problema de alinhamento), mas eventualmente os fabricantes irão puxar o plugue e passar a vender drives "puros", sem o sistema de emulação. Isso não deve acontecer antes de 2014 ou 2015, mas quando a hora chegar, teremos uma quebra de compatibilidade com o Windows XP e outros sistemas operacionais antigos.

Ctrl+C: GDH Press: Blog

Keep Simple!

Um comentário:

Ana Carolina disse...

só pelas figuras declaro ser impossível ler esse teu post :)