Смекни!
smekni.com

Операционная система MS DOS (стр. 3 из 3)

Одна из основных функций операционной системы - это обеспечение группы работоспособных драйверов, доступных системным и прикладным программам. Если работающей программе необходим контакт с переферийным устройством, то она сообщает операционной системе, какое из устройств ей необходимо, и MS-DOS предоставляет ей соответствующий драйвер.

Устройства посимвольной и поблочной передачи данных

Устройства посимвольной передачи данных осуществляют пересылку информации по одному символу за прием. К этим устройствам относятся порты последовательных и параллельных адаптеров и дисплеи. В MS-DOS каждому из этих устройств соответствует конкретное название (имя). Драйвер MS-DOS может управлять только одним устройством посимвольной передачи. Устройства поблочной передачи данных осуществляют пересылку информации по блокам. Каждый блок, как правило, составляет 512 байт. К этим устройствам относятся дисководы для гибких дискет, дисководы для жесткого диска и другие устройства для накопителей информации. Устройства поблочной передачи не обладают конкретным названием. Драйвер MS-DOS может обслуживать несколько устройств поблочной

Прерывания

Прерывание - это сигнал, поступающий из программ математического обеспечения, или генерируемый электронным оборудованием. Сигнал на прерывание предупреждает процессор (СРU) о необходимости выполнения некоторых функций. Например, при нажатии любой клавиши генерируется сигнал на прерывание от клавиатуры (т.е. от электронного оборудования), предупреждающий процессор о введении данных с клавиатуры.

Каждому типу прерывания соответствует определенный порядковый номер (прерывание от клавиатуры, к примеру, обозначено номером 9). По этому номеру процессор различает, какой обработчик необходимо вызвать для обработки сигнала на прерывание. По соглашению номера прерываний представлены в шестнадцатеричном формате.

Прерывания под номерами 20Н-2FH зарезервированы для системного пользования. Это означает, что прикладные программы, рассчитанные на взаимодействие с системным мат.обеспечением, могут обращаться к этим прерываниям только в особых случаях, которые определены операционной системой. Чаще всего программно используется прерывание 21Н - диспетчер функций.

Диспетчер функций

Прерывание 21Н носит название "диспетчер функций". Диспетчер функций отвечает за выполнение большей части работы MS-DOS. В его обязанности входит обеспечение доступа к системным функциям. Каждая функция выполняет некоторое конкретное задание, например, открывает файл, выводит символьную строку на экран дисплея, распределяет блок памяти или выдает номер работающей версии MS-DOS. Функции также дифференцированы по номерам. Чтобы программно обратиться к системной функции, необходимо выполнить следующее: (1) записать номер соответствующей функции в регистр АН; (2) записать параметры, необходимые для работы функции, в соответствующие регистры; (3) вызвать прерывание 21Н. При обращении к прерыванию 21Н, управление передается MS-DOS. Операционная система по значению регистра АН определяет, какая функция должна выполняться. Затем из остальных (вполне определенных для каждой функции) регистров считываются значения параметров, после чего требуемая функция выполняется. MS-DOS помещает возвращаемые функцией параметры в соответствующие регистры и возвращает управление в вызывающую программу. Программа просматривает регистры и производит анализ результата выполнения функции.

Зарезервированные функции

Некоторые функции помечены, как "зарезервированные для системного пользования". Эти функции используются операционной системой, однако фирмы IBM и Miсrosoft отказываются рассматривать их в официальной литературе. Благодаря стараниям программистов стало известно назначение некоторых из них. Пользователи, использующие эти функции, часто называют их "официально недокументированными", а не "зарезервированными".

Код ошибки

Многие функции MS-DOS версий устанавливают текущий флаг процессора и возвращают код ошибки в регистре AX, если в процессе обращения к функции произошла ошибка.Из специальных таблиц можно узнать причину ошибки.