Como as ferramentas de diagnóstico do disco rígido sabem se um setor é ruim?

13

Quando encontro um disco rígido que pode estar falhando, digitalizo-o usando o ViVARD , que me informa com segurança se a unidade precisa ser substituída.

Como esses tipos de ferramentas funcionam? Como eles podem distinguir um setor ruim de um bom setor?

David
fonte
4
Um software como esse lê todos os setores da unidade. Se estiver ilegível, poderá tentar alguns truques para lê-lo, se dados suficientes em um setor forem ilegíveis e irrecuperáveis, eles serão marcados como incorretos.
Moab
2
O firmware não diz a eles. Como um HDD funciona a partir desse ponto mudou drasticamente em 25 anos e até nos últimos 5 anos.
Qsdfdsaq 02/10/2015

Respostas:

9

Os discos rígidos modernos implementam um sistema no firmware chamado SMART . Este sistema coleta estatísticas sobre o desempenho da unidade e evita automaticamente a perda de dados, afastando os dados de setores defeituosos.

As ferramentas de diagnóstico consultam o software SMART do disco rígido para criar um relatório de verificação de integridade.

Setores defeituosos são detectados ao acessar o disco rígido e são evitados e realocados pelo sistema SMART.

Stavr00
fonte
1
moderno, mas isso era perfeitamente possível e comum mesmo sem eles.
eis
7

Eu não conheço o ViVARD, então esta é uma resposta geral.

INTELIGENTE

O SMART faz parte das unidades mais modernas. Ele registra quando o disco rígido vê um setor defeituoso, quando o tempo de busca ou rotação é mais do que o normal. Estes são todos os indicadores de que o disco rígido está falhando.

A maneira como o disco rígido salva um setor defeituoso é devido a códigos de correção de erros (geralmente esse é o Reed-Solomon) que podem ser recuperados se alguns bits estiverem errados. Se muitos bits estiverem errados, o disco rígido tentará recuperar, lendo o setor repetidamente. Quando finalmente o acerta, ele o salva em um dos setores sobressalentes.

Setor de leitura

O disco rígido realoca os setores com erros de leitura para um conjunto de setores sobressalentes reservados para isso. O sistema operacional normalmente não vê isso, mas vê toda a unidade como sem erros. Somente quando não houver mais setores para realocar (ou o setor não puder ser recuperado) é que o SO verá os setores danificados.

Mas é possível ignorar a correção de erros (acredito que seja diferente para cada modelo - talvez o ViVARD faça isso?). Dessa forma, você pode ler os dados reais na unidade. Ao ler isso, você poderá ver quais setores apresentam erros - mesmo que o sistema operacional não veja erros.

Ole Tange
fonte
0

Use o SMART Os fabricantes de discos rígidos devem ter um download do software em seu site. Quando você usa o SMART - execute uma verificação completa.

roberthayek
fonte
-1

Se eu escrevesse um programa de diagnóstico, meu programa passaria pelo drive setor por setor, com o seguinte procedimento:

  1. Mova os dados atualmente no setor para um novo local (atualmente vazio) para preservação (e atualize as tabelas de arquivos que usaram esse setor).
  2. Escreva novos dados conhecidos para o setor.
  3. Leia os dados escritos do setor.
  4. A comparação foi escrita pouco a pouco com o que foi lido.
  5. (Supondo que a etapa 4 tenha sido aprovada) Mova os dados originais de volta para o local original (para evitar a fragmentação de arquivos).

Claro, essa é apenas a versão ingênua. Eu suspeito que existem algoritmos usados ​​hoje para tornar esse processo geral mais eficiente. Além disso, existem diferentes padrões que as ferramentas usam para os "novos dados conhecidos" e diferentes níveis de repetição.

Joel Coehoorn
fonte