Читайте также:
|
|
BIOS - базовая система ввода вывода. MS-DOS - обеспечивает высокий уровень работы.
Прерывание подразделяется на прерывание с DOS и BIOS. Int 10h BIOS обеспечивает необходимость процедуры для ввода - вывода.
В состав ОС входит много процедур и для них не хватает, допустим, Х номеров прерываний. В связи с этим процедуры объединяются в группы. Процедуры одной группы называются функциями соответствующего прерывания, чтобы различать их, перед выполнением команды int в аh записывается номер пустой функции. Mov аh, <номер функции> Int <номер прерывания>.
Прерывание DOS предназначено для предоставления программисту различных услуг со стороны ОС.
Аh - 02Н - вывод символов на экран, аh09 - вывод строки, аh -01 - вывод символов с ожиданием, аh – 06 ввод-вывод аh-0АН ввод строки.
Функции управление памятью:
(malloc) аh =48Н in: bх=size out: ах (код ошибки) сf (ошибка) bх (максимальный размер свободной памяти) ах=5seg.
(memtrem) аh=49h освобождает ранее занятый память блоком in: bs=seg адрес блока, который освобождается out: сх, сf
аh=4Аh - изменение разряда блока памяти (calloc) in: es=seg bx=size - размер в параграфах.
Out: ах, сf, bx.
При запуски программ DOS программа имеет уникальный идентификатор РSР (префикс программ сегмента, блок памяти который задается при выполнении программы).
АН=4В запуск программ. In: аl= DS:DX буфер ВS:ВХ- РPB - блок параметров выполняется. OUT: ах,сf.
После выполнения 4В все пары регистров (SS, SP, DP).
Прерывание DOS и BIOS. Прерывание могут содержать конечные функции. BIOS содержится в ПЗУ
взаимно производить начальную проверку обеспечивает базовые функции ввод выводов простейшие
после чего производится загрузка с жесткого или гибкого диска на этом диске находится ОС с которой она загружается. Устройство дополнительный набор функций, прерываний, указателей.
BIOS прерывания от 0 до 1F. Прерывания функций обработки, есть его вектор, который указывает на блок некоторых данных в памяти.
Функции подразделяются на уровни (высокий, средний, низкий), прерывания DOS высокий уровень, прерывания БИОС - средний и низкий уровень.
ДОС 21 h - набор функций ДОС, 13h БИОС.
Прерывание представляет собой операцию, которая приостанавливает выполнение программ для специальных системных действий. Прерывания обычно используются для операций ввода-вывода на различные устройства и непредвиденных программных ошибок (например, переполнение при делении). Система BIOS (Basic Input/Output System) находится в RОМ (ПЗУ) и управляет всеми прерываниями в системе.
В компьютерах IВМ РС RОМ находится по адресу FFFF0H. При включении компьютера процессор устанавливает состояние сброса, выполняет контроль четности, устанавливает в регистре СS значение FFFFН, а в регистре IP - нуль. Первая выполняемая команда поэтому находится по адресу FFFF:0 или FFFF0. что является точкой входа в BIOS. BIOS проверяет различные порты компьютер
для определения и инициализации подключенных устройств. Затем BIOS создает в начале памяти (п<
адресу 0) таблицу прерываний, которая содержит адреса обработчиков прерываний, и выполняет дв<
операции 1МТ 11Н (запрос списка присоединенного оборудования) и 1МТ 12Н (запрос размер!
физической памяти).
Следующим шагом ВЮ5 определяет имеется ли на диске или дискете операционная система DOS. Ест
ОС обнаружена, то ВЮ5 выполняет прерывание 1гЛ" 19Н для доступа к первому сектору диска
содержащему блок начальной загрузки. Этот блок представляет собой программу, которая считывав
системный файл 10.5У5 в память. После этого память имеет следующее распределение:
(по порядку) Таблица векторов прерываний, Данные ВЮ5, 10.5У5. Резидентная часть СОММАЫО.СОК
.Доступная память для прикладных программ, Транзитная часть СОММАЫО.СОМ, Конец РАМ (ОЗУ), РОК
BIOS
Внешние устройства передают сигнал внимания через контакт 1МТР в процессор. Процессор реагирует ж
этот запрос, если флаг прерывания IP установлен в 1. Для каждого типа прерывания в таблице векторо!
прерываний начинающейся по адресу 0000 хранится вектор прерывания - 4х байтовый адрес
сегмент:смещение. В таблице имеется 256 векторов (1024). Каждый вектор указывает на подпрограмм)
обработки указанного типа прерывания и содержит сегмент и смещение, которые при прерывани»
заносятся в регистры CS и IP.
При возникновении прерывания процессор заносит в стек содержимое флагового регистра, регистров CS»
IP. Далее из таблицы прерываний берется адрес соответствующей программы обработки, сегмент >
смещение ее заносятся в CS и IP соответсвенно. Возврат из этой подпрограммы осуществляется команде»
IPЕТ (Intегшр(Не(ит), которая восстанавливает флаги и регистры CS и IP из стека и передав!
управление на команду, следующую за выполненной до прерывания.
Дата добавления: 2014-12-19; просмотров: 96 | Поможем написать вашу работу | Нарушение авторских прав |