Аппаратное обеспечение IBM PC

       

H - байт состояния отключения


Байт состояния отключения 0Fh используется процессорами 80286, 80386 и 80486 для определения способа возврата из защищенного режима в реальный после аппаратного сброса.

Вы, вероятно, знаете, что эти процессоры могут работать либо в реальном режиме, который соответствует режиму работы процессора 8086, либо в защищенном. Защищенный режим работы используется такими операционными системами, как OS/2, UNIX, XENIX, а также операционными оболочками WINDOWS/386 и WINDOWS версии 3.0. В этом режиме процессор может непосредственно адресовать всю память, лежащую выше границы 1 мегабайт.

Подробное рассмотрение защищенного режима работы выходит за рамки данной книги. Расскажем кратко о переходе из реального режима в защищенный и обратно для иллюстрации использования ячейки КМОП-памяти с адресом 0Fh.

Для перевода процессора 80286 из реального режима в защищенный можно использовать специальную команду LMSW:

mov ax,1 lmsw ax

Разумеется, двух строк, приведенных выше, недостаточно для правильной работы процессора в защищенном режиме.

Для того, чтобы вернуть процессор 80286 из защищенного режима в реальный, необходимо выполнить аппаратный сброс (отключение) процессора. Это можно сделать следующим образом:

mov ax, 0FEh ; команда отключения out 64h, ax

Перед выдачей команды отключения программа должна записать в ячейку 0Fh КМОП-памяти причину отключения:

Значение Причина отключения

0 Программный сброс при нажатии комбинации клавиш CTRL-ALT-DEL или неожиданный сброс. Выполняется обычный перезапуск системы, но процедуры тестирования при включении питания не выполняются.

1 Сброс после определения объема памяти.

2 Сброс после тестирования памяти.

3 Сброс после обнаружения ошибки в памяти (контроль четности).

4 Сброс с запросом перезагрузки.

5 После сброса перезапускается контроллер прерываний, затем управление передается по адресу, который находится в области данных BIOS 0000:0467h.

6,7,8 Сброс после выполнения теста работы процессора в защищенном режиме.

9 Сброс после выполнения пересылки блока памяти из основной памяти в расширенную.

0Ah После сброса управление немедленно передается по адресу, взятому из области данных BIOS 0000:0467h.

Для перевода процессоров 80386 и 80486 из реального режима в защищенный и обратно можно использовать загрузку специального управляющего регистра CR0 обычной командой MOV. Однако будет работать и метод, основанный на применении команды LMSW и команды отключения.

Вы можете использовать сведения о команде отключения для организации программного перезапуска системы.



Содержание раздела