Por que 200 (octal) está sendo subtraído dos bytes gravados/lidos do disco?

Por que 200 (octal) está sendo subtraído dos bytes gravados/lidos do disco?

Estou executando o Ubuntu 12.04 em uma placa-mãe P8P67 Deluxe Asus, com 3 discos SATA WD Caviar Green de 1 TB +.

Quando corro:

cp /media/X/ubuntu.iso /media/Y/ubuntu.iso
cmp -l /media/X/ubuntu.iso /media/Y/ubuntu.iso

onde X e Y são cada um dos três discos (incluindo X = Y), recebo corrupções como (várias execuções de cmp):

279222903 212  12
 80534135 270  70
689056375 356 156
704375415 221  21
 77208183 302 102
 18418295 305 105
524483191 315 115
120892023 322 122
638548599  25 225
638548599 225  25

Qual é a causa subjacente desse padrão?

Outras informações: fiz RMA da placa em 2011 por causa de "problemas de degradação do SATA" e obtive a placa atual como substituta. A taxa de corrupção atual é de cerca de 1 byte corrompido a cada 1,5 GB, embora às vezes chegue a 1 byte em 50 MB.

Responder1

Se você imprimir os endereços corrompidos em uma base binária, surgirá um padrão:

10a49a77
04ccda77
29122a77
29fbea77
049a1a77
01190a77
1f42fa77
0734aa77
260f7a77
260f7a77

Não apenas toda a corrupção está no mesmo bit em um byte, mas também está sempre em endereços no formato ...101001000100, ou seja, no mesmo local módulo 4096. Esse tipo de padrão é um sinal revelador de memória ruim (barramentos e cabos não não se limite a corromper um bit em 32768, e bugs de software dificilmente o fazem).

A RAM da placa-mãe é a culpada mais provável. Pode ser RAM em outro lugar, por exemplo, no controlador SATA. No entanto, a RAM da placa-mãe é a que mais ultrapassa os limites da engenharia confiável e, portanto, a mais propensa a falhas.

A RAM tende a falhar apenas para certos padrões de uso que o memtest86+ tenta emular, mas ocasionalmente não o faz. Use uma versão recente de preferência, mas mesmo assim às vezes dá luz verde à memória que falha no uso real. Eu recomendo fortemente tentar com diferentes dispositivos de RAM.

informação relacionada