- •1. Структура и принципы работы ms-dos
- •1.1. Основные компоненты операционной системы
- •Msdos.Sys
- •Command.Com
- •Config.Sys
- •Autoexec.Bat
- •Wina20.386
- •Драйверы
- •Внешние команды
- •Подготовка системной дискеты
- •Программа fdisk
- •Резидентные программы
- •1.2. Процесс загрузки операционной системы
- •1.3. Состав и общая схема работы ms-dos
- •Файловая система
- •Система управления памятью
- •Система управления программами
- •Система связи с драйверами устройств
- •Система обработки ошибок
- •Служба времени
- •Работа с консолью оператора
- •Другие системы ms-dos
- •1.4. Обзор прерываний bios
- •Определение конфигурации компьютера
- •Определение объема оперативной памяти
- •Работа с видеоконтроллером
- •Выбрать видеорежим (00h)
- •Установить размеры и форму курсора (01h)
- •Свернуть окно (06h, 07h)
- •Работа с клавиатурой
- •Обслуживание дисковой подсистемы
- •Перезагрузка операционной системы
- •Системный сервис для машин класса at
- •1.5. Обзор прерываний ms-dos
- •Получение системной информации
- •Символьный ввод и вывод
- •Работа с файловой системой
- •Управление программами
- •Управление памятью
- •Связь с драйверами устройств
- •Другие функции
- •1.6. Обработка ошибок
- •1.7. Вызов прерываний ms-dos
- •1.8. Программа errcode
- •1.9. Переменная errno
- •1.10. Программа errno
Перезагрузка операционной системы
Вызов прикладной программой прерывания INT 19h приведет к перезагрузке операционной системы.
Системный сервис для машин класса at
Прерывание INT 15h использовалось в компьютерах IBM PC и IBM PC Jr для управления кассетным накопителем на магнитной ленте (функции 0-3). Для машин класса AT и более высокого класса прерывание INT 15h имеет и другое назначение. С его помощью обслуживается расширенная клавиатура, выполняется программная задержка, задаваемая в микросекундах, обслуживается расширенная память.
Кроме того, одна из функций прерывания INT 15h переводит процессор в защищенный режим. Заметим, что вернуть процессор обратно в реальный режим можно только сигналом начального сброса. Это же относится и к арифметическому сопроцессору.
Сигнал начального сброса появляется не только тогда, когда пользователь нажимает кнопку сброса, расположенную на корпусе компьютера. Программа может выдать такой сигнал при помощи контроллера клавиатуры. Подробности вы можете узнать из 6 тома "Библиотеки системного программиста", который называется "Защищенный режим процессоров Intel 80286/80386/80486".
Функция C0h прерывания INT 15h выдает дополнительные сведения о конфигурации аппаратных средств компьютера.
На этом мы завершим описание функций, предоставляемых BIOS, и перейдем к обзору функций MS-DOS.
1.5. Обзор прерываний ms-dos
Операционная система MS-DOS предоставляет программе набор системных вызовов, реализованных с использованием механизма программных прерываний. Эти вызовы открывают прикладной программе доступ к системной информации, к системе консольного ввода/вывода, файловой системе, к системе управления программами и памятью, позволяют организовать обращение к драйверам периферийных устройств компьютера и т. д.
Все основные функции MS-DOS вызываются с помощью прерывания INT 21h, однако MS-DOS использует и другие прерывания:
Прерывание |
Описание |
INT 20h |
Завершение работы программы |
INT 25h |
Чтение диска с абсолютной адресацией секторов |
INT 26h |
Запись на диск с абсолютной адресацией секторов |
INT 27h |
Завершение работы программы с оставлением ее резидентной в памяти |
INT 28h |
Прерывание зарезервировано для MS-DOS, используется резидентными программами |
INT 2Eh |
Выполнение команды MS-DOS |
INT 2Fh |
Мультиплексное прерывание, используется для программы печати print и других резидентных программ; открывает доступ к внутренним функциям и структурам MS-DOS |
Функции прерывания INT 21h можно разделить на следующие группы:
получение системной информации;
символьный ввод/вывод;
работа с файловой системой;
управление программами;
управление памятью;
связь с драйверами устройств;
прочий системный сервис.
В данном обзоре мы кратко рассмотрим эти группы, делая акцент в основном на составе функций. Более подробная информация об использовании функций прерывания MS-DOS INT 21h (и других прерываний MS-DOS) будет приводиться в соответствующих разделах книги.
Номер функции задается при вызове прерывания INT 21h в регистре AH.