Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Dos7book

.pdf
Скачиваний:
97
Добавлен:
09.02.2015
Размер:
5 Мб
Скачать
☆

Приложение А.05: Структуры данных для драйверов

Примечание 6: установление в единицу бита 11 означает, что драйвер способен обслуживать накопители на сменных носителях, в частности, передавая сигналы блокировки и разблокировки сменных дисков.

Примечание 7: установление в единицу бита 14 означает, что драйвер способен принимать управляющие параметры, посланные через прерывания

INT 21\AX=4403h или INT 21\AX=4405h (8.02-41).

A.05-3 Избранные запросы к драйверам устройств

Взаимодействие между DOS и драйвером любого устройства осуществляется посылкой в регистрах ES:BX адреса блока данных запроса при вызове программы стратегии драйвера командой CALL FAR. Драйвер принимает код операции в блоке данных запроса и инициирует ее исполнение. Потом DOS вызывает программу прерывания драйвера, которая заполняет тот же блок полученными данными. DOS принимает результат, если байт статуса в возвращенном блоке данных подтверждает успешное завершение запрошенной операции (A.05-4).

Такие же формы блоков данных запроса принимает обработчик прерывания INT 2F\AX=0802h (8.03-03), который неявно обращается к тем драйверам дисководов, которые входят в состав ядра DOS. Этими драйверами обслуживаются дисководы, для которых имеются соответствующие таблицы DDT (A.03-2). Только к этим логическим дискам можно обращаться посредством INT 2F\AX=0802h.

1-я колонка приведенной ниже таблицы показывает размер блока данных запроса в байтах, 2-я колонка – код запрашиваемой операции, 4-я колонка – тип драйверов, к которым данная операция может быть адресована. В 5-й колонке показано, может ли данная операция быть запрошена через прерывание INT 2F\AX=0802h. Знаками "звездочка" отмечены ссылки на примечания.

Длина

Код

Операция

Тип

802

Формат

драйверов

данных

 

 

 

 

19h

00h

Инициализация

все

Нет

A.05-5

0Fh

01h

Проверка носителя

дисковые

Да

*2

14h

03h

Посылка строки IOCTL

*1

Нет

A.05-7

1Eh

04h

Считывание данных

все

Да

A.05-6

0Eh

05h

Копирование байта

канальные

Нет

*3

0Dh

06h

Запрос статуса ввода

канальные

Нет

A.05-4

0Dh

07h

Сброс входного буфера

канальные

Нет

A.05-4

1Eh

08h

Запись (посылка) данных

все

Да

A.05-6

1Eh

09h

Запись с верификацией

дисковые

Да

A.05-6

0Dh

0Ah

Запрос статуса вывода

канальные

Нет

A.05-4

0Dh

0Bh

Сброс выходного буфера

канальные

Нет

A.05-4

14h

0Ch

Прием строки IOCTL

*1

Нет

A.05-7

 

 

– 619 –

 

 

 

Приложение А.05: Структуры данных для драйверов

Продолжение таблицы А.05-3

 

 

 

 

0Dh

0Dh

Открывание устройства

все

Нет

A.05-4

 

0Dh

0Eh

Закрывание устройства

все

Нет

A.05-4

 

0Dh

0Fh

Сменный ли диск?

дисковые

Да

A.05-4

 

14h

10h

Посылка до занятости

канальные

Нет

A.05-7

 

0Dh

17h

Номер логического диска

дисковые

Да

A.05-4

Примечание 1: с запросами на посылку и возврат строк IOCTL можно обращаться только к тем драйверам (как дисковым, так и канальным), у которых в слове атрибутов (A.05-2) установлен в единицу бит 14.

Примечание 2: в блоке данных запроса на проверку носителя драйвер принимает идентификатор носителя в байте со смещением 0Dh и возвращает байт статуса в ячейке со смещением 0Eh. Байт статуса значит:

FFh – носитель не был сменен 01h – носитель был сменен

00h – состояние носителя не определено.

Примечание 3: в блоке данных запроса на копирование байта (неразрушающее считывание) возвращается один байт данных в ячейке со смещением 0Dh, при условии, что в возвращаемом байте статуса со смещением 04h (A.05-4) бит BUSY ("занято") не установлен.

A.05-4 Формат заголовка блока данных запроса

Описываемый формат заголовка используется при вызовах драйверов командой CALL FAR (A.05-3), а также при обращениях к ним через прерывание INT 2F\AX=0802h (8.03-03). В обоих случаях регистры ES:BX должны содержать указатель на блок данных запроса, в котором заголовок представлен байтами 00h – 0Ch. Для многих операций (06h, 07h, 0Ah, 0Bh, 0Dh, 0Eh, 0Fh, 17h) блок данных запроса не содержит ничего кроме заголовка. Структура заголовка, одинаковая для всех операций, показана в приведенной ниже таблице.

Смещение

Длина

Содержание

 

 

00h

1

Длина блока данных (колонка 1 таблицы A.05-3)

01h

1

Адресуемый логический диск (примечание 1)

02h

1

Код операции (колонка 2 в таблице A.05-3)

03h

1

Код ошибки (примечания 3 и 4)

04h

1

Статус:

01h

– операция выполнена

 

 

 

02h

– устройство занято

 

 

 

80h

– произошла ошибка.

Примечание 1: здесь логический диск определяется своим номером в списке дисков, обслуживаемых тем драйвером, к которому происходит обращение. При обращениях через прерывание INT 2F\AX=0802h

– 620 –

Приложение А.05: Структуры данных для драйверов

(8.03-03) номера совпадают с номерами логических дисков: 00h = A:, 02h = C: и т.д., но только в пределах начальной группы дисков, для которых имеются соответствующие таблицы DDT (A.03-2).

Примечание 2: если операция 0Fh (Сменный ли диск?) возвращает статус 02h ("занято"), то адресуемый диск – несменный жесткий диск.

Примечание 3: код ошибки выдается только если статус имеет значение 80h, то есть подтверждает факт ошибки. Тогда расшифровывать код ошибки следует по записям для прерывания INT 2F в таблице A.06-1.

Примечание 4: операция 17h ("определить логический диск") возвращает абсолютный номер логического диска в ячейке со смещением 03h. Тип диска и его наличие в дисководе не проверяются. Если запрашиваемый номер диска выходит за рамки списка дисков, обслуживаемых данным драйвером, то возвращается значение 00h.

A.05-5 Блок данных для запроса операции инициализации

Только однажды, сразу после загрузки драйвера, DOS вызывает его командой CALL FAR (7.03-08) с запросом на инициализацию. При вызове в регистрах ES:BX указывается адрес блока данных, а его заголовке (A.05-4) – код 00h операции инициализации. Получив такой запрос, драйвер проверяет наличие и фактическое состояние всех тех аппаратных средств, которые он должен обслуживать. При этом и исходные данные, и возвращаемые результаты выходят за рамки заголовка блока данных (A.05-4). Формат выходящей за пределы заголовка части блока данных (со смещениями 0Dh – 18h) показан в приведенной ниже таблице.

Смещение

Длина

Содержание

0Dh

1

При возврате: число логических дисков,

 

 

обслуживаемых данным драйвером.

0Eh

4

При вызове: адрес 1-го байта за границей участка,

 

 

который может быть выделен драйверу.

 

 

При возврате: адрес 1-го свободного байта после

 

 

участка, занятого резидентным модулем.

12h

4

При вызове: указатель на командную строку с

 

 

параметрами вызова драйвера.

 

 

При возврате только для дисковых драйверов:

 

 

указатель на блок данных BPB (A.03-4).

16h

1

При вызове: первый свободный номер диска,

 

 

предоставляемый драйверу (A: = 00h).

17h

2

При возврате: флаг сообщения (примечание 2)

Примечание 1: канальные драйверы перед возвратом данных должны обнулять четырехбайтовое слово, начинающееся со смещения 12h.

– 621 –

Приложение А.05: Структуры данных для драйверов

Примечание 2: когда возвращаемый драйвером флаг сообщения об ошибке имеет значение 0000h, то никакое сообщение не выдается, а когда этот флаг имеет значение 0001h, то DOS выводит на экран сообщение: "There is an error in your CONFIG.SYS file in line..." ( = В Вашем файле CONFIG.SYS имеется ошибка в строке...).

A.05-6 Блок запроса на пересылку данных

Описываемая форма блока данных запроса используется при прямом вызове драйверов (A.05-3) командой CALL FAR (7.03-08), а также при вызове посредством прерывания INT 2F\AX=0802h (8.03-03) с целью пересылки данных. При вызове в регистрах ES:BX указывается адрес блока данных запроса, а его заголовке (A.05-4)

– код запрашиваемой операции: 04h, 08h или 09h. Когда запрошена операция считывания (код 04h), принимаемые данные записываются в предварительно выделенную буферную область в памяти компьютера. Операции записи (коды 08h и 09h) напротив, посылают данные из буферной области на диск или в канал вывода. Для всех упомянутых операций блоки данных запроса включают заголовок (A.05-4) и остальную часть с параметрами доступа к данным. Размещение параметров за пределами заголовка показано в приведенной ниже таблице.

Смещение

Длина

Содержание

0Dh

1

Идентификатор носителя (только для дисков)

0Eh

4

Адрес буферной области для данных

12h

2

Длина пакета данных (примечание 1)

14h

2

Номер начального сектора (примечание 2)

16h

4

Указатель на идентификатор тома (примечание 3)

1Ah

4

Номер начального сектора (примечание 2)

Примечание 1: при обращении к драйверам каналов длина считываемого или записываемого пакета данных выражается в байтах, а при обращении к дисковым драйверам – в количестве секторов.

Примечание 2: в других DOS может использоваться иной формат с четырехбайтовым номером начального сектора в ячейке 14h;

отличительным признаком такого формата является длина блока данных 18h, указываемая в первом байте заголовка (A.05-4). MS-DOS7 использует 4-байтовый номер начального сектора только если драйвер поддерживает 32-битную адресацию, о чем свидетельствует установленный в единицу бит 1 в слове атрибутов драйвера (A.05-2). В таких случаях начальный номер сектора указывается в ячейке со смещением 1Ah, а в ячейку со смещением 14h записывается слово FFFFh.

– 622 –

Приложение А.05: Структуры данных для драйверов

Примечание 3: адрес идентификатора тома возвращается в случае возникновения ошибки 0Fh (неправомерная смена носителя записи).

A.05-7 Блок данных запроса для строковых операций

Описываемая форма блока данных запроса используется при вызове драйверов (A.05-3) командой CALL FAR (7.03-08) с целью посылки или приема строки байтов. При вызове в регистрах ES:BX указывается адрес блока данных запроса, а его заголовке (A.05-4) – код запрашиваемой операции: 03h, 0Ch или 10h. Операция 10h посылает данные в канал. Операции посылки и приема строк управляющих параметров (03h, 0Ch) могут быть адресованы только тем драйверам, которые способны пользоваться механизмом программного управления (IOCTL), о чем свидетельствует установление в единицу бита 14 в слове атрибутов (A.05-2). Запрос с кодом операции 03h "предлагает" драйверу "принять к сведению" новые значения управляющих параметров, посланные посредством функций INT 21\AX=4403h и INT 21\AX=4405h (8.02-41). Запрос с кодом операции 0Ch выдается операционной системой с тем, чтобы драйвер выдал действующие значения параметров,

запрашиваемые функциями INT 21\AX=4402h и INT 21\AX=4404h (8.02-41).

Блоки данных запроса упомянутых операций имеют одинаковую структуру, включающую заголовок (A.05-4) и остальную часть. Размещение данных за пределами заголовка показано в приведенной ниже таблице.

Смещение

Длина

Содержание

0Dh

1

Идентификатор носителя (только для дисков)

0Eh

4

Адрес буферной области для данных

12h

2

При вызове: число байтов в строке

 

 

При возврате: число пересланных байтов

A.06 Коды ошибок

A.06-1 Сводная таблица кодов завершения

Почти все обработчики прерываний возвращают код завершения (код ошибки). Прерывания MS-DOS обычно возвращают его в регистре AL. Операции системы BIOS могут возвращать его в регистре AH. Интерпретации кодов завершения от разных обработчиков нередко не совпадают. В приведенной ниже таблице сведены вместе почти все значения кодов завершения, которые могут встретиться при работе в MS-DOS7. Правильную интерпретацию несложно выбрать по номеру того прерывания, которое возвратило данный код завершения, или по названию резидентного модуля драйвера.

– 623 –

Приложение А.06:

Коды ошибок

Код

Источник

Расшифровка

00h

INT 24-2F

Попытка записи на защищенный от записи диск

 

Прочие

Нет ошибки, успешное завершение операции

01h

INT 13

Неверный параметр, или несуществующий диск

 

INT 15

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

 

INT 16

Буфер клавиатуры уже полон

 

INT 24-2F

Неизвестный драйверу номер диска

 

Прочие

Неверно указаны функция или код операции

02h

INT 13

Адресная метка не найдена

 

INT 15

Ошибка прерывания

 

INT 24-2F

Дисковод не готов к исполнению команды

 

Прочие

Файл не найден

03h

INT 13

Диск защищен от записи

 

INT 15

Ошибка в управлении линией 20-го разряда адреса

 

INT 24-2F

Неизвестная драйверу команда

 

Прочие

Ошибка в спецификации пути

04h

INT 13

Сектор не найден или ошибка считывания

 

INT 24-2F

Ошибка в данных (неверный код CRC)

 

Прочие

Слишком много файлов (нет места в JFT или в SFT)

05h

INT 13

Неудача попытки приведения в начальное состояние

 

INT 24-2F

Неверная длина блока данных запроса

 

Прочие

Нет прав доступа

06h

INT 13

Диск сменен или не вставлен в дисковод

 

INT 24-2F

Ошибка поиска

 

Прочие

Неверно указана номерная ссылка

07h

INT 13

Ошибка в таблице параметров жесткого диска

 

INT 24-2F

Неизвестный тип носителя записи

 

Прочие

Ошибка в блоке данных управления памятью

08h

INT 13

Выход за границу области DMA

 

INT 24-2F

Сектор не найден

 

Прочие

Имеющейся памяти недостаточно

09h

INT 13

Выход за 64 кбайт памяти или 80h секторов диска

 

INT 15

Неверный APM-идентификатор устройства

 

INT 24, 2F

В принтере нет бумаги

 

Прочие

Неверный адрес блока памяти

0Ah

INT 13

Обнаружен дефектный сектор

 

INT 24-2F

Попытка записи кончилась неудачно

 

Прочие

Неверная спецификация окружения

0Bh

INT 13

Заданная дорожка не читается или не существует

 

INT 15

Прибор не поставлен под управление APM

 

INT 24-2F

Попытка считывания не удалась

– 624 –

 

 

 

Приложение А.06:

Коды ошибок

Продолжение таблицы А.06-1

 

 

 

 

Прочие

 

 

Неверный формат

 

 

 

 

 

 

 

 

0Ch

INT 13

 

 

Неизвестный формат дорожки или носителя

 

 

 

INT 24-2F

 

 

Отказ общего характера

 

 

 

Прочие

 

 

Неверный код доступа

 

 

0Dh

INT 13

 

 

Неверное число секторов при форматировании

 

 

 

INT 24-26

 

 

Нарушение условий совместного доступа

 

 

 

Прочие

 

 

Неверные данные

 

 

 

0Eh

INT 13

 

 

Обнаружена адресная метка управляющих данных

 

 

 

INT 24-2F

 

 

Попытка доступа к закрытому диску

 

 

0Fh

INT 13

 

 

Уровень арбитража DMA за пределами допуска

 

 

 

INT 24-2F

 

 

Ошибочная смена диска

 

 

 

Прочие

 

 

Неверный номер дисковода

 

 

10h

INT 13

 

 

Неисправимые ошибки кодов CRC или ECC

 

 

 

INT 24

 

 

Блок данных FCB недоступен

 

 

 

Прочие

 

 

Попытка удалить текущий каталог

 

 

11h

INT 13

 

 

Ошибки в данных скорректированы кодом ECC

 

 

 

INT 24-26

 

 

Переполнение буфера регистрации доступа

 

 

 

Прочие

 

 

Не то же самое устройство

 

 

12h

INT 24

 

 

Несовпадение кодовых страниц

 

 

 

Прочие

 

 

Больше файлов нет, или индекс вышел за допуск

 

 

13h

INT 24-26

 

 

Нет ввода данных

 

 

 

 

Прочие

 

 

Диск защищен от записи

 

 

14h

INT 24, 26

 

 

Имеющегося дискового пространства недостаточно

 

 

 

Прочие

 

 

Обращение к неизвестному устройству

 

 

15h

 

 

 

Дисковод не готов к исполнению операции

 

 

16h

 

 

 

Неизвестная команда

 

 

17h

 

 

 

Ошибка, выявленная контрольным кодом CRC

 

 

18h

 

 

 

Неверная длина блока данных запроса

 

 

19h

 

 

 

Ошибка при поиске

 

 

 

1Ah

 

 

 

Неизвестный тип носителя, неизвестный формат

 

 

1Bh

 

 

 

Сектор не найден

 

 

 

1Ch

 

 

 

В принтере нет бумаги

 

 

1Dh

 

 

 

Неудача при попытке записи

 

 

1Eh

 

 

 

Неудача при попытке считывания

 

 

1Fh

 

 

 

Отказ общего характера

 

 

20h

INT 13

 

 

Отказ контроллера

 

 

 

 

Прочие

 

 

Нарушение условий совместного доступа

 

 

21h

 

 

 

Попытка доступа к закрытому для доступа диску

 

 

22h

 

 

 

Ошибочная смена диска (примечание 2 к A.06-1)

 

 

23h

 

 

 

Блок данных FCB (File Control Block) недоступен

 

 

24h

 

 

 

Переполнение буфера совместного доступа

 

 

25h

 

 

 

Несоответствие кодовых страниц

 

– 625 –

 

 

 

Приложение А.06:

Коды ошибок

Продолжение таблицы А.06-1

 

 

 

 

26h

 

 

 

Нет ввода для завершения файловой операции

 

 

 

 

 

 

 

27h

 

 

 

Имеющегося дискового пространства недостаточно

 

 

 

30h

INT 13

 

 

Датчика наличия носителя в дисководе нет

 

 

 

31h

INT 13

 

 

В дисководе отсутствует сменный диск

 

 

 

32h

INT 13

 

 

Дисковод не поддерживает носители такого формата

 

 

 

 

Прочие

 

 

Сетевой запрос не поддерживается

 

 

 

33h

 

 

 

Запрашиваемый компьютер не отвечает

 

 

 

34h

 

 

 

Указанное сетевое имя уже используется

 

 

 

35h

 

 

 

Указанное имя сетевого устройства не найдено

 

 

 

36h

 

 

 

Сеть занята

 

 

 

 

37h

 

 

 

Запрошенное сетевое устройство не существует

 

 

 

38h

 

 

 

Превышен предел сетевой команды BIOS

 

 

 

39h

 

 

 

Аппаратная ошибка сетевого адаптера

 

 

 

3Ah

 

 

 

Неправильный отклик со стороны сети

 

 

 

3Bh

 

 

 

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

 

 

 

3Ch

 

 

 

Несовместимый сетевой адаптер

 

 

 

3Dh

 

 

 

Достигнут предел длины очереди запросов на печать

 

 

 

3Eh

 

 

 

Длина очереди запросов не исчерпана

 

 

 

3Fh

 

 

 

Недостаточно места для распечатки файла

 

 

 

40h

INT 13

 

 

Ошибка при выполнении поиска

 

 

 

 

Прочие

 

 

Указанное сетевое имя удалено

 

 

 

41h

 

 

 

В доступе к сети отказано

 

 

 

42h

 

 

 

Тип сетевого устройства указан неверно

 

 

 

43h

 

 

 

Запрошенное сетевое имя не найдено

 

 

 

44h

 

 

 

Достигнут предел количества сетевых имен

 

 

 

45h

 

 

 

Достигнут предел сетевой сессии BIOS

 

 

 

46h

 

 

 

Временная пауза

 

 

 

 

47h

 

 

 

Посланный запрос к сети не принят

 

 

 

48h

 

 

 

Сетевое перенаправление операций отложено

 

 

 

50h

 

 

 

Такой файл существует

 

 

 

52h

 

 

 

Нет возможности создать каталог

 

 

 

53h

 

 

 

Неудачный исход (fail) при вызове INT 24h

 

 

 

54h

 

 

 

Слишком много перенаправлений

 

 

 

55h

 

 

 

Дублирующие перенаправления

 

 

 

56h

 

 

 

Неверный пароль

 

 

 

 

57h

 

 

 

Неверный параметр

 

 

 

 

58h

 

 

 

Неудачное завершение передачи данных в сеть

 

 

 

59h

 

 

 

Запрошенная функция не поддерживается сетью

 

 

 

5Ah

 

 

 

Требуемый компонент системы не установлен

 

 

 

60h

INT 15

 

 

Запрошенный режим APM недоступен

 

 

 

64h

Mscdex.exe

 

 

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

 

 

 

 

65h

Mscdex.exe

 

 

Не готов к исполнению операции

 

 

– 626 –

 

 

 

 

Приложение А.06:

Коды ошибок

Продолжение таблицы А.06-1

 

 

 

 

66h

 

Mscdex.exe

 

 

EMS-память недоступна

 

 

 

 

 

 

 

67h

 

Mscdex.exe

 

 

Формат диска отличен от High Sierra и ISO-9660

 

 

 

68h

 

Mscdex.exe

 

 

Заслонка оптического дисковода открыта

 

 

 

80h

 

INT 13

 

 

Дисковод не отвечает, время ожидания истекло

 

 

 

 

 

INT 67

 

 

Внутренняя ошибка

 

 

 

 

 

 

Прочие

 

 

Неверная команда, данная функция не реализована

 

 

 

81h

 

INT 67

 

 

Неправильное функционирование оборудования

 

 

 

 

 

Himem.sys

 

 

Установлено, что загружен драйвер Vdisk

 

 

 

82h

 

Himem.sys

 

 

Сбой управления линией A20 адресной шины

 

 

 

83h

 

INT 67

 

 

Неверная номерная ссылка

 

 

 

84h

 

INT 67

 

 

В запросе неверно указан код функции

 

 

 

85h

 

INT 67

 

 

Лимит номерных ссылок исчерпан

 

 

 

86h

 

INT 67

 

 

Ошибка при сохранении распределения страниц

 

 

 

 

 

Прочие

 

 

Запрошенная функция не поддерживается

 

 

 

87h

 

INT 67

 

 

Количество страниц памяти недостаточно

 

 

 

88h

 

INT 67

 

 

Свободных страниц памяти слишком мало

 

 

 

89h

 

INT 67

 

 

Запрошено нулевое количество страниц памяти

 

 

 

8Ah

 

INT 67

 

 

Запрошен неверный номер логической страницы

 

 

 

8Bh

 

INT 67

 

 

Запрошен неверный номер физической страницы

 

 

 

8Ch

 

INT 67

 

 

Нет места для записи распределения страниц

 

 

 

8Dh

 

INT 67

 

 

Ошибка при сохранении распределения страниц

 

 

 

8Eh

 

INT 67

 

 

Ошибка при восстановлении распределения страниц

 

 

 

 

 

Himem.sys

 

 

Общий отказ XMS-драйвера

 

 

 

8Fh

 

INT 67

 

 

Неизвестный номер подфункции

 

 

 

 

 

Himem.sys

 

 

Неисправимая ошибка XMS-драйвера

 

 

 

90h

 

INT 67

 

 

Неизвестный тип атрибута

 

 

 

 

 

Himem.sys

 

 

Область HMA недоступна или не существует

 

 

 

91h

 

INT 67

 

 

Запрошенное свойство не поддерживается

 

 

 

 

 

Himem.sys

 

 

Область HMA уже используется

 

 

 

92h

 

INT 67

 

 

Успешное завершение с перезаписью части данных

 

 

 

 

 

Himem.sys

 

 

Значение DX меньше предела /HMAMIN (5.04-01)

 

 

 

93h

 

INT 67

 

 

Длина пакета больше, чем выделенное место

 

 

 

 

 

Himem.sys

 

 

Область HMA не выделена

 

 

 

94h

 

INT 67

 

 

Обычная и расширенная памяти перекрываются

 

 

 

 

 

Himem.sys

 

 

Линия A20 шины адреса все еще активна

 

 

 

95h

 

INT 67

 

 

Смещения превышает размер логической страницы

 

 

 

96h

 

INT 67

 

 

Размер области выходит за пределы 1 Мегабайта

 

 

 

97h

 

INT 67

 

 

Области источника и назначения перекрываются

 

 

 

98h

 

INT 67

 

 

Неизвестный тип области источника или назначения

 

 

 

9Ah

 

INT 67

 

 

Указанная группа регистров не поддерживается

 

 

 

9Bh

 

INT 67

 

 

Все группы регистров уже распределены

 

 

 

9Ch

 

INT 67

 

 

Группа регистров DMA не поддерживается

 

 

– 627 –

 

 

 

 

Приложение А.06:

Коды ошибок

Продолжение таблицы А.06-1

 

 

 

 

9Dh

 

INT 67

 

 

Память под группы регистров не выделена

 

 

 

 

 

 

 

9Eh

 

INT 67

 

 

Предназначенные каналы DMA не поддерживаются

 

 

 

9Fh

 

INT 67

 

 

Запрошенный канал DMA не поддерживается

 

 

 

A0h

 

INT 67

 

 

Ссылка с запрошенным именем не существует

 

 

 

 

 

Himem.sys

 

 

Вся расширенная память уже распределена

 

 

 

A1h

 

INT 67

 

 

Номерная ссылка с таким именем уже существует

 

 

 

 

 

Himem.sys

 

 

Свободных ссылок больше нет

 

 

 

A2h

 

INT 67

 

 

"Заворот" адресов вокруг границы 1 Мбайт

 

 

 

 

 

Himem.sys

 

 

Неверная номерная ссылка

 

 

 

A3h

 

INT 67

 

 

Массив данных источника поврежден

 

 

 

 

 

Himem.sys

 

 

Неверная номерная ссылка на источник

 

 

 

A4h

 

INT 67

 

 

Операционная система отказала в доступе

 

 

 

 

 

Himem.sys

 

 

Значение смещения для источника указано неверно

 

 

 

A5h

 

Himem.sys

 

 

Неверная номерная ссылка на область назначения

 

 

 

A6h

 

Himem.sys

 

 

Смещение для области назначения указано неверно

 

 

 

A7h

 

Himem.sys

 

 

Недопустимое значение длины пакета данных

 

 

 

A8h

 

Himem.sys

 

 

Недопустимое перекрытие копируемых данных

 

 

 

A9h

 

Himem.sys

 

 

Выявлена ошибка при контроле четности

 

 

 

AAh

 

INT 13

 

 

Дисковод не готов к исполнению операции

 

 

 

 

 

Himem.sys

 

 

Блок памяти не закрыт

 

 

 

ABh

 

Himem.sys

 

 

Блок памяти уже закрыт

 

 

 

ACh

 

Himem.sys

 

 

Переполнение счетчика актов закрывания

 

 

 

ADh

 

Himem.sys

 

 

Неудачное завершение операции закрывания

 

 

 

B0h

 

Himem.sys

 

 

Доступны только блоки UMB меньшего размера

 

 

 

 

 

INT 13

 

 

Носитель записи в накопителе не заблокирован

 

 

 

B1h

 

Himem.sys

 

 

Свободных блоков UMB больше нет

 

 

 

 

 

INT 13

 

 

Носитель записи в накопителе заблокирован

 

 

 

B2h

 

Himem.sys

 

 

Указан неверный сегмент блока UMB

 

 

 

 

 

INT 13

 

 

Данный носитель записи – несменяемый

 

 

 

B3h

 

INT 13

 

 

Диск задействован, кэш-буфер записи не пуст

 

 

 

B4h

 

INT 13

 

 

Переполнение счетчика актов закрывания

 

 

 

B5h

 

INT 13

 

 

Команда на выдвижение лотка не исполнена

 

 

 

B6h

 

 

 

 

Носитель защищен от записи

 

 

 

BBh

 

INT 13

 

 

Неизвестная ошибка жесткого магнитного диска

 

 

 

CCh

 

INT 13

 

 

Ошибка при записи на жесткий магнитный диск

 

 

 

E0h

 

INT 13

 

 

Ошибка в регистре состояния дисковода

 

 

 

FFh

 

INT 13

 

 

Ошибка опознавания на жестком магнитном диске

 

 

 

 

 

INT 15

 

 

Ошибка активизации линии A20 шины адреса

 

 

 

 

 

Прочие

 

 

Подходящий файл не найден, или их больше нет, или

 

 

 

 

 

 

 

 

ошибка в блоке FCB (A.09-5).

 

 

– 628 –

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]