morfizm (morfizm) wrote,
morfizm
morfizm

Category:

Случайные однобитовые ошибки (random bit flips)

Считается, что вероятность порчи данных при нормальной работе железа, настолько низка, что домашний пользователь не должен когда либо заметить это. Ошибки, при которых случайно меняется один бит, должны сопровождаться отказом (fail) соответствующих APIs в результате parity checks, так, что операция будет повторена или отменится, или комп зависнет, ... но данные будут сохранены.

Так ли это в действительности?

Я давно подозревал, что это не так, и сегодня получил тому доказательство:

V:\V\Cartoons>fc /b "V:\Video\+Animations\Бременские музыканты.avi" "V:\V\Cartoons\Бременские музыканты.avi"
Comparing files V:\VIDEO\+ANIMATIONS\Бременские музыканты.avi and V:\V\CARTOONS\БРЕМЕНСКИЕ МУЗЫКАНТЫ.AVI
04D068F5: E6 EE

6 это 0110 в двоичной системе, а E это 1110.
Т.е. мы видим результат изменения одного бита.

Файлы вроде оба открываются, но мне лениво оба внимательно пересматривать, чтобы определить, какой из них верный. Кроме того, я могу ведь и не заметить. Но в каких-то других форматах файла, такая ошибка может быть фатальной.

Как от этого защититься?
Хранить весь stuff в архивах с избыточностью и время от времени сверять с распакованной версией?
Есть ли какой-то софт, который это уже делает?
Tags: 1, software
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 16 comments