Система ввода/вывода и системные файлы Первоначальная загрузка Дисковые структуры Общий объем дискового пространства Сохранение данных

Загрузка операционной системы

В табл. 20.9 приведены коды ошибок, которые могут быть возвращены при выполнении функций BIOS, вызываемых через прерывание INT 13h. Вы можете столкнуться с этими кодами при выполнении форматирования накопителя на низком уровне, редактировании диска или при работе других программ, которые обращаются к накопителю непосредственно через BIOS.

Таблица 90.9. Коды ошибок функций BIOS, вызываемых через прерывание INT 13h

Код

Описание

00h

Нет ошибки

01h

Неверная команда

02h

Не найдена метка адреса

03h

Защита от записи

04h

Запрошенный сектор не найден

05h

Сброс не выполнен

06h

Ошибка при смене носителя

07h

Инициализация не выполнена

09h

Выход за границу 64 К при ПДП

OAh

Обнаружен флаг плохого сектора

OBh

Обнаружен флаг плохой дорожки

10h

При чтении не совпадает код ЕСС

11h

Данные скорректированы в соответствии с

ЕСС

20h

Контроллер неисправен

40h

Не выполнена операция поиска

80h

Накопитель не отвечает

AAh

Накопитель не готов

BBh

Неизвестная ошибка

CCh

Ошибка при записи

OEh

Ошибка в регистре

FFh

Неисправна схема считывания

Если вы разрабатываете собственный контроллер диска, то вам нужно придумать и свой IBM-совместимый набор программ управления, вызываемых через прерывание INT 13h, и записать его в ПЗУ BIOS. Это ПЗУ нужно установить на плату контроллера для того, чтобы оно включалось в систему в процессе ее первоначальной загрузки. Прикладные программы, обращающиеся к накопителям через прерывание INT 13h, должны при осуществлении считывания и записи оперировать с реальными координатами — цилиндрами, головками и номерами секторов — соответствующих участков диска. Поэтому любая программа, работающая на этом уровне, должна строиться с учетом характерных особенностей тех накопителей и контроллеров, для которых она предназначена. Напомним еще раз, что функции, вызываемые через прерывание INT 13h, способны выполнять лишь такие простые операции, как считывание параметров диска, форматирование дорожек, считывание и запись данных в секторы, парковку головок, сброс накопителя и т.п.

Одной из главных задач ОС является обеспечение обмена данными между приложениями и периферийными устройствами компьютера. Собственно ради выполнения этой задачи и были разработаны первые системные программы, послужившие прототипами операционных систем. В современной ОС функции обмена данными с периферийными устройствами выполняет подсистема ввода-вывода.

Персональный компьютер