Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ASKS_lektsii_chast_1_1.doc
Скачиваний:
11
Добавлен:
16.11.2019
Размер:
2.04 Mб
Скачать

Порядок проверки условий обслуживания прерываний

1.Ловушка ___________ (#DB) по выполненной инструкции (пошаговый режим через флаг TF или точка останова по данным через регистры отладки).

2.Отказ ___________ (#DB) по очередной инструкции (точка останова по инструкции через регистр отладки).

3.Немаскируемое аппаратное прерывание.

4.Маскируемое аппаратное прерывание (при IF=1).

5.Отказ _________________ (#NP или #GP) при выборке очередной инструкции.

6.Отказ ____________ (#PF) при выборке очередной инструкции.

7.Отказ ____________________ очередной инструкции (#UD или #GP).

8.Для операции ______ исключение #NM (если TS=1 и МР=1).

9.Для инструкции _____ исключение #NM (если ЕМ=1 или TS=1).

10.Для операции WAIT или инструкции FPU исключение #MF от FPU.

11.Отказ _________________ (#NP, #SS, #GP) или отказ страницы (#PF) для операндов, используемых в инструкции.

Двойной отказ

Double Fault (#DF).

Возникает, если:

  • при обработке исключения, связанного с __________________ (#TS, #NP, #SS или #GP), процессор обнаруживает исключение, отличное от _________ ____________ (#PF);

  • при обработке исключения отказа страницы #PF обнаруживается исключение другого типа.

Аварийный останов

Shutdown.

Происходит, если во время обслуживания исключения отказа страницы произойдет _____ ______ ________ страницы.

Никакие новые инструкции не выполняются.

Из этого состояния процессор можно вывести только аппаратно:

  • сигналом _____, оставляя его в защищенном режиме;

  • сигналом ________, переводящим процессор в реальный режим.

При обработке исключений 8-14, 17 и 18 в защищенном режиме процессор сохраняет в стеке ________ ______ _________ (Error Code). Если оно отлично от нуля, то в его битах [15:3] содержится селектор дескриптора, с которым связана ошибка, или описание ___________ _________ (для исключения 14 #PF).

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

Номер

Функция

Мне-моника

Тип

00h

Переполнение при делении на 0

#DE

__

01h

Исключение отладки

#DB

_____

02h

Немаскируемое прерывание (NMI)

-

I

03h

Исключение отладки (INT 3)

#ВР

__

04h

Исключение по переполнению (INTO)

#OF

__

05h

Прерывание по контролю диапазона (BOUND)

#BR

__

06h

Недопустимый код операции

#UD

__

07h

Сопроцессор недоступен или переключалась задача

#NM

__

08h

Двойной отказ 1)

#DF

___ ______

09h

Нарушение границы сегмента сопроцессором (386/387)

__, EC

0Ah

Недопустимый сегмент состояния задачи 2)

#TS

__, EC

0Bh

Сегмент отсутствует 2)

#NP

__, EC

0Ch

Нарушение границы сегмента стека или сегмент стека отсутствует 3)

#SS

__, EC

0Dh

Общее нарушение защиты 4)

#GP

__, EC

0Eh

Отказ страницы 2)

#PF

___ ___

0Fh

Зарезервировано

-

-

10h

Исключение сопроцессора

#MF

__

11h

Контроль выравнивания (486+) 2)

#AC

___ ______

12h

Машинный контроль (Р5+) 2)

#MC

__, EC

13h

Исключение блока ХММ (Рentium III+)

#XF

__

14h-1fh

Зарезервировано

-

-

00h-FFh

Аппаратные (маскируемые) и программные прерывания INT n

-

__

Набор и обработка исключений реального и защищенного режимов различны. В реальном режиме:

1) вектор прерывания не попадает в таблицу;

2) не возникают; возможны в режиме V86;

3) нарушение границы сегмента стека;

4) нарушение границы сегмента данных или кода.

Таблица прерываний IBM PC

Часть из 32 зарезервированных Intel исключений перекрывается системными прерываниями BIOS и DOS.

Номер

Функция

05h

Печать копии экрана. Генерируется при нажатии клавиши PrtScr

08h

IRQ0 – от интервального таймера, возникает 18,2 раза в секунду

09h

IRQ1 – от клавиатуры

0Ah

IRQ2 – каскадирование контроллеров прерываний

0Bh

IRQ3 – от асинхронного порта COM2

0Сh

IRQ4 – от асинхронного порта СОМ1

0Dh

IRQ5 – от контроллера HDD (в ХТ) или зарезервировано (PC/АТ)

0Eh

IRQ6 – от контроллера FDD после завершения операции чтения/записи

0Fh

IRQ7 – от принтера (готовность к выполнению очередной операции)

10h

Обслуживание видеоадаптера

11h

Определение конфигурации устройств в системе

12h

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

13h

Обслуживание дисковой системы

14h

Последовательный ввод/вывод

15h

Расширенный сервис для компьютеров АТ

16h

Обслуживание клавиатуры

17h

Обслуживание принтера

1Ah

Обслуживание часов

1Bh

Обработчик прерываний Ctrl-Break

1Ch

Вызывается программно обработчиком прерываний таймера (18,2 раза в секунду)

70h

IRQ8 – от часов реального времени

71h

IRQ9 – от контроллера EGA

72h

IRQ10 – зарезервировано

73h

IRQ11 – зарезервировано

74h

IRQ12 – зарезервировано

75h

IRQ13 – от математического сопроцессора

76h

IRQ14 – от контроллера HDD

77h

IRQ15 – зарезервировано

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