Rambler's Top100



2.3.1. Частичное решение — обнаружение ошибок

Компьютер просто сохраняет больше информации, чем ему требуется получить. Он также сохраняет дополнительные биты, которые помогают определить, можно ли доверять считанной информации. Простейший способ обнаружения ошибок, который применяется в системном ЗУПВ компьютера, заключается во введении бита паритета. В дисковых накопителях применяется несколько более сложный и мощный способ, называемый циклическим избыточным контролем. Паритет. В системном ЗУПВ почти всех персональных компьютеров каждый байт (8 бит) данных сопровождается девятым битом, называемым битом паритета. При записи байта в ЗУПВ компьютер вычисляет его паритет, подсчитывая число единиц в байте. Если число единиц четное, соответствующий бит паритета устанавливается в 1, а в противном случае он сбрасываемся в 0 Во всех девяти битах всегда должно быть нечетное число единичных битов,-а иное означает возникновение ошибки. Отсюда появился и термин "нечетный паритет" (или нечетность). Если любой бит считан или сохранен неправильно, паритет оказывается нарушенным и компьютер узнает об ошибке. Конечно, компьютер не может определить ошибочный бит. Если искажено четное число битов, паритет не обнаружит ошибку. К счастью, большинство ошибок в ЗУПВ приходится на однобитные и даже они возникают редко. Компьютер не может исправить ошибочные биты, поэтому он просто извещает об ошибке пользователя и останавливается. О таких ошибках свидетельствуют сообщения PARITY CHECK ONE и PARITY CHECK TWO. Некоторые клоны в такой ситуации предоставляют больше информации. Они могут вывести примерно такое сообщение. I/O memory error at XXXX (Ошибка ввода-вывода памяти в ХХХХ) Буквы X заменяются 16-ричными цифрами. Показанное 16-ричнос число представляет собой адрес, по которому компьютер производил считывание при появлении ошибки паритета После вывода сообщения клон, как и IBM PC, по-видимому, остановится Циклический избыточный контроль. Когда MS DOS записывает информацию на гибкий диск, она использует аналогичный способ защиты. Во-первых, она группирует информацию в секторы по 512 байт. После этого в конце данных она добавляет еще два байта. MS DOS вычисляет 16-битовое число, комбинируя все 512 байт сектора специальным образом, который называется циклическим избыточным контролем (Cyclical Redundancy Check — CRC). Как и паритет, CRC является средством проверки искаженных данных. Он может выявить все однобитные и часть многобитных ошибок, но искаженные биты определить не может. Сообщение Error reading drive A (Ошибка считывания в накопителе А) обычно означает, что компьютер считал сектор с неправильным значением CRC.



 


ГЛАВНАЯ

Copyright 2003 © FormatCenter
All Rights Reserved