DOS API — это API , созданный в 86-DOS и используемый в MS-DOS / PC DOS и других DOS -совместимых операционных системах. Большинство вызовов DOS API вызываются с использованием программного прерывания 21h ( INT 21h). Вызовом INT 21h с номером подфункции в регистре процессора AH и другими параметрами в других регистрах можно вызвать различные службы DOS. К ним относятся обработка ввода с клавиатуры, вывод видео, доступ к файлам на диске, выполнение программ, распределение памяти и различные другие действия. В конце 1980-х годов расширители DOS вместе с интерфейсом защищенного режима DOS (DPMI) позволяли программам работать в 16-битном или 32-битном защищенном режиме и при этом иметь доступ к API DOS.
История DOS API
Исходный API DOS в 86-DOS и MS-DOS 1.0 был разработан с учетом функциональной совместимости с CP/M . Доступ к файлам осуществлялся с использованием блоков управления файлами (FCB). API DOS был значительно расширен в MS-DOS 2.0 за счет нескольких концепций Unix , включая доступ к файлам с использованием дескрипторов файлов , иерархические каталоги и управление вводом-выводом устройств. [1] В DOS 3.1 была добавлена поддержка сетевого перенаправления . В MS-DOS 3.31 функции INT 25h/26h были расширены для поддержки жестких дисков объемом более 32 МБ. В MS-DOS 5 добавлена поддержка использования верхних блоков памяти (UMB). После MS-DOS 5 API DOS не менялся для последующих автономных выпусков DOS.
DOS API и Windows
В Windows 9x DOS загружала систему защищенного режима и графическую оболочку. Доступ к DOS обычно осуществлялся с виртуальной машины DOS (VDM), но можно было также загрузить MS-DOS 7.0 в реальном режиме без загрузки Windows. API DOS был расширен за счет расширенной поддержки интернационализации и поддержки длинных имен файлов , хотя поддержка длинных имен файлов была доступна только в VDM. В Windows 95 OSR2 DOS был обновлен до версии 7.1, в которой была добавлена поддержка FAT32 , а в DOS API были добавлены функции для ее поддержки. Windows 98 и Windows ME также реализуют API MS-DOS 7.1, хотя Windows ME сообщает о себе как MS-DOS 8.0.
Windows NT и основанные на ней системы (например, Windows XP и Windows Vista ) не основаны на MS-DOS, но используют виртуальную машину NTVDM для обработки API DOS. NTVDM работает, запуская программу DOS в виртуальном режиме 8086 (эмуляция реального режима в защищенном режиме , доступная на процессорах 80386 и выше). NTVDM поддерживает API DOS 5.0. DOSEMU для Linux использует аналогичный подход.
Векторы прерываний, используемые DOS
Ниже приведен список векторов прерываний, используемых программами для вызова функций DOS API.
Службы DOS INT 21h
Ниже приведен список функций, предоставляемых через основной вектор программного прерывания DOS API.
Операционные системы со встроенной поддержкой
Операционные системы с уровнем эмуляции DOS
Другие эмуляторы
Смотрите также
Рекомендации
- ^ Рэй Дункан (1988). Продвинутое программирование в MS-DOS: Руководство Microsoft для программистов на ассемблере и C. Майкрософт Пресс. ISBN 0914845772.
дальнейшее чтение
- Аллен, Пол ; Гейтс, Билл ; Король, Адриан; Ларсон, Крис; Летвин, Гордон ; О'Рир, Боб ; Патерсон, Тим ; Питерс, Крис; Филлипс, Брюс; Рейнольдс, Аарон ; Стиллмейкер, Бетти; Збиковски, Марк (1986). «Технические консультанты». MS-DOS (версии 1.0–3.2) Техническая справочная энциклопедия . Борнштейн, Ховард; Бредехофт, Лоуренс; Дункан, Рэй; Моррис, Кэрол; Роуз, Дэвид; Соча, Джон ; Томлин, Джим; Виан, Кэтлин; Вулвертон, Ван. Белей, Джим; Преппернау, Барри; Бисон, Пэм; Льюис, Андреа; Ригмир, Дэвид (ред.). Справочная библиотека Microsoft. Том. 1 (Оригинал отозванной ред.). Редмонд, Вашингтон, США: Microsoft Press . ISBN 0-914845-69-1. LCCN 86-8640. ОСЛК 635600205.(xvii+1053 страницы; 29 см) (Примечание. Это оригинальное издание содержит блок-схемы внутренней работы системы. Оно было отозвано Microsoft перед массовым распространением в 1986 году, поскольку содержало множество фактических ошибок, а также некоторую секретную информацию, которую следует не издавались. Печатных экземпляров сохранилось мало. В 1988 г. оно было заменено полностью переработанным изданием.[1])
- Збиковски, Марк ; Аллен, Пол ; Балмер, Стив ; Борман, Рубен; Борман, Роб; Батлер, Джон; Кэрролл, Чак; Чемберлен, Марк; Челл, Дэвид; Коули, Майк; Кортни, Майк; Драйфус, Майк; Дункан, Рэйчел; Экхардт, Курт; Эванс, Эрик; Фермер, Рик; Гейтс, Билл ; Гири, Майкл; Гриффин, Боб; Хогарт, Дуг; Джонсон, Джеймс В.; Кермаани, Каамель; Король, Адриан; Кох, Рид; Ландовски, Джеймс; Ларсон, Крис; Леннон, Томас; Липки, Дэн; Макдональд, Марк ; МакКинни, Брюс; Мартин, Паскаль; Мазерс, Эстель; Мэтьюз, Боб; Мелин, Дэвид; Мергентайм, Чарльз; Невин, Рэнди; Ньюэлл, Дэн; Ньюэлл, Тани; Норрис, Дэвид; О'Лири, Майк; О'Рир, Боб ; Олссон, Майк; Остерман, Ларри; Остлинг, Ридж; Пай, Сунил; Патерсон, Тим ; Перес, Гэри; Питерс, Крис; Петцольд, Чарльз ; Поллок, Джон; Рейнольдс, Аарон ; Рубин, Дэррил; Райан, Ральф; Шульмейстерс, Карл; Шах, Раджен; Шоу, Барри; Коротко, Энтони; Сливка, Бен; Смирл, Джон; Стиллмейкер, Бетти; Стоддард, Джон; Тиллман, Деннис; Уиттен, Грег; Йонт, Натали; Зек, Стив (1988). «Технические консультанты». Энциклопедия MS-DOS: версии с 1.0 по 3.2 . Дункан, Рэй; Боствик, Стив; Бургойн, Кейт; Байерс, Роберт А.; Хоган, Том; Кайл, Джим; Летвин, Гордон ; Петцольд, Чарльз ; Рабиновиц, Чип; Томлин, Джим; Уилтон, Ричард; Вулвертон, Ван; Вонг, Уильям; Вудкок, Джоанн (Полностью переработанная ред.). Редмонд, Вашингтон, США: Microsoft Press . ISBN 1-55615-049-0. LCCN 87-21452. ОСЛК 16581341.(xix+1570 страниц; 26 см) (Примечание. Это издание было опубликовано в 1988 году после обширной переработки отозванного первого издания 1986 года другим коллективом авторов. [2])
- Нортон, Питер; Уилтон, Ричард (1987). Новое руководство программиста Питера Нортона по IBM PC и PS/2 . Майкрософт Пресс. ISBN 1-55615-131-4.
- Рэй Дункан (1988). Продвинутое программирование в MS-DOS: Руководство Microsoft для программистов на ассемблере и C. Майкрософт Пресс. ISBN 0914845772.
- Хоган, Том (1991). Справочник программиста по ПК . Майкрософт Пресс. ISBN 155615321X.
- Справочник программиста MS-DOS — Официальный технический справочник по MS-DOS . Майкрософт Пресс. 1993. ISBN 1556155468.
- Техническое обновление IBM PC DOS 7
- Серия справочников разработчика OpenDOS — Руководство программиста OpenDOS — Руководство по системе и программисту. Caldera, Inc., август 1997 г. Номер детали Caldera 200-DOPG-003. Архивировано из оригинала 07.10.2017 . Проверено 28 июня 2012 г.(Напечатано в Великобритании.)
Внешние ссылки