Definição de Correção de erros

Por Carlos E. Morimoto. Há .

Por melhor que seja sua qualidade, nenhuma mídia magnética é 100% confiável (como pode confirmar quem já teve o desprazer de trabalhar com disquetes ;). Pequenas falhas na superfície da mídia podem levar a erros de leitura, sobretudo quando ela possui uma densidade de gravação de mais de 100 gigabits por polegada quadrada e gira a 7.200 RPM ou mais, como nos HDs atuais.

Isso não significa que o seu HD vá pifar amanhã, mas que são comuns erros na leitura de um setor ou outro. Obviamente, como todos os nossos dados importantes são guardados no disco rígido, a possibilidade de erros na leitura de "um setor ou outro" não seria aceitável, principalmente no caso de máquinas destinadas a operações críticas. Imagine se, nesse "setor ou outro" do servidor de um grande banco, estivessem gravados os dados referentes à conta bancária de um cliente importante, por exemplo.

De modo a tornar os HDs uma forma de armazenamento confiável, os fabricantes utilizam sistemas de ECC para detectar e corrigir erros de leitura eventualmente encontrados. O ECC é o mesmo sistema utilizado em módulos de memória destinados a servidores e também em CD-ROMs, onde são usados nada menos do que 276 bytes de códigos de correção de erros para cada setor de 2048 bytes.

Em um HD, cada setor armazena, além dos 512 bytes de dados, mais algumas dezenas de bytes contendo os códigos ECC. A criação dos bytes de ECC, assim como sua utilização posterior é feita pela placa lógica, um processo automático que é feito de forma completamente transparente ao sistema operacional.

Quando um setor é lido pela cabeça de leitura, juntamente com os dados são lidos alguns dos códigos ECC, que visam apenas verificar se os dados que estão sendo lidos são os mesmos que foram gravados, uma técnica que lembra o sistema de paridade antigamente usado na memória RAM. Caso seja verificado um erro, são usados os demais códigos para tentar corrigir o problema. Na grande maioria dos casos, esta primeira tentativa é suficiente. Estes erros transitórios, que são corrigidos com a ajuda dos códigos ECC são chamados de "soft errors" e não causam nenhum efeito colateral além de um delay de alguns milissegundos na leitura.

Caso não seja possível corrigir o erro usando o ECC, a controladora faz uma nova tentativa de leitura do setor, pois é grande a possibilidade do erro ter sido causado por alguma interferência ou instabilidade momentânea. Caso o erro persista, ela fará várias tentativas sucessivas, reduzindo a velocidade de rotação dos discos e comparando o resultado de várias leituras, de forma a tentar recuperar os dados gravados no setor. Esse processo gera aquele ruído característico de HD sendo "mastigado" e quase sempre indica o aparecimento de um badblock.

Veja também
Qual o game mais caro da PS Store no Brasil?
Qual o game mais caro da PS Store no Brasil?
Games
Produtos piratas importados da China serão barrados pela Receita Federal
Produtos piratas importados da China serão barrados pela Receita Federal
Notícias
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Melissa: o vírus que enganou os viciados em pornô e infectou mais de 100 mil PCs em 1999
Artigos
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Apple retira WhatsApp, Threads, Telegram e Signal da App Store chinesa
Mobile
Banco Central confirma novo vazamento de chaves Pix
Banco Central confirma novo vazamento de chaves Pix
Notícias
Motorola lança Moto G04s por R$ 747,15 a vista
Motorola lança Moto G04s por R$ 747,15 a vista
Mobile
true