Векторы прерываний BIOS
INT 13h — дисковый ввод-вывод.INT 14h — обслуговування СОМ-портов. INT 1ah — системное время и 16-битни вызовы сервисов PCI. INT 76h — IRQ14 — контроллер жёстких дисков. INT 75Ь — IRQ13 — выключение сопроцессора. INT 0Eh — IRQ6 — контроллер гибких дисков. INT 08h — таймер 8253/8254.INT 09h — клавиатура. INT 15h — АТ-функции (системний сервис). INT 71h — IRQ9 (перенаправлено на INT 0Ah). INT 12h… Читать ещё >
Векторы прерываний BIOS (реферат, курсовая, диплом, контрольная)
При инициализации таблицы прерываний BIOS отвечает за корректное заполнение части векторов, которые имеют отношение к аппаратным средствам компьютера и сервисов BIOS. На часть из них могут быть просто установлены заглушки — вектор ссылается на код обработчика, который содержит единственную инструкцию возвращения из прерывания, — IRET. BIOS будет инициализировать векторы внутренних прерываний процессора (исключений), которые могут возникнуть в реальном режиме работы (об исключении защищенного режима в основном заботится соответствующая операционная система). К внутренним прерываниям относятся следующие (INT 70h — INT 77h — только для AT):
заглушки — вектор ссылается на код обработчика, который содержит единственную инструкцию возвращения из прерывания, — IRET. BIOS будет инициализировать векторы внутренних прерываний процессора (исключений), которые могут возникнуть в реальном режиме работы (об исключении защищенного режима в основном заботится соответствующая операционная система). К внутренним прерываниям относятся следующие (INT 70h — INT 77h — только для AT):
- — INT 00h — деление на 0
- — INT 01h — внутренний режим.
- — INT 03h — точка остановки.
- — INT 04h — переполнение.
- — INT 06h — недопустимая команда 286+.
- — INT 07h — вызов отсутствующего NPU.
Аппаратные прерывания включают следующие (INT 70h-77h — только для AT): — INT 02h — немасковое прерывание.
- — INT 08h — таймер 8253/8254.INT 09h — клавиатура.
- — INT 0Ah-0Dh — IRQ2-IRQ5.
- — INT 0Eh — IRQ6 — контроллер гибких дисков.
- — INT OFh — IRQ7.
- — INT 70h — CMOS-таймер.
- — INT 71h — IRQ9 (перенаправлено на INT 0Ah).
- — INT 72h-74h — IRQ10-IRQ12.
- — INT 75Ь — IRQ13 — выключение сопроцессора.
- — INT 76h — IRQ14 — контроллер жёстких дисков.
- — INT 77h — IRQ15.
- — Векторы прерываний, которые обеспечивают вызовы функций BIOS (сервисов), включают следующие:
- — - INT 05h — печать экрана.
- — - INT 10h — видеосервис.
- — - INT 11h — список оборудования.
- — - INT 12h — размер непрерывной памяти
- — - INT 13h — дисковый ввод-вывод.INT 14h — обслуговування СОМ-портов.
- — INT 15h — АТ-функции (системний сервис).
- — INT 16h — клавиатурный ввод-вывод.
- — INT 17h — обслуживание lpt-портов
- — INT 18h — ROM-Basic.
- — INT 19h — начальная загрузка (Bootstrap).
- — INT 1ah — системное время и 16-битни вызовы сервисов PCI.
- — INT 1bh — обработчик ctrl+break.
- — INT 1ch — предназначенная для пользователя процедура, которая вызывается обработчиком INT 08h (User Timer Interrupt).
- — INT 33h — поддержка мыши.
- — INT 67h — ems-функции.
Несколько векторов используются в качестве указателей на системные таблицы. К векторам-указателям относятся следующие:
- — INT 1dh — видеопараметры.
- — INT 1eh — параметры дискет.
- — INT 1fh — знакогенератор CGA.
- — INT 41h — параметры HDD 0.
- — INT 46h — параметры HDD 1.
- — INT 43h — знакогенератор EGA.
- — INT 4ah — будильник пользователя.
Как видно из приведенных списков, большинство векторов BIOS налагаются на область векторов 00−1fh, зарезервированную фирмой Intel под внутренние прерывания и исключения процессоров. Хотя во времена 8086 из них использовалось совсем малое количество, зарезервированной была объявлена вся указанная область. Однако творцы IBM PC «влезли» в эту область, что усложнило жизни системных программистов, которые работают с более щедрыми на исключение современными процессорами.