API операционной системы MS-DOS
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-битном защищенном режиме и при этом иметь доступ к DOS API.
История API DOS
Первоначальный 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.
API DOS и Windows
В Windows 9x DOS загружала систему защищенного режима и графическую оболочку. Обычно доступ к DOS осуществлялся с виртуальной машины DOS (VDM), но также можно было напрямую загрузиться в реальный режим MS-DOS 7.0 без загрузки Windows. API DOS был расширен за счет улучшенной поддержки интернационализации и поддержки длинных имен файлов , хотя поддержка длинных имен файлов была доступна только в VDM. С Windows 95 OSR2 DOS был обновлен до 7.1, в которой была добавлена поддержка FAT32 , а в API DOS были добавлены функции для ее поддержки. Windows 98 и Windows ME также реализуют API MS-DOS 7.1, хотя Windows ME сообщает о себе как о MS-DOS 8.0.
Windows NT и основанные на ней системы (например, Windows XP и Windows Vista ) не основаны на MS-DOS, а используют виртуальную машину NTVDM для обработки DOS API. NTVDM работает, запуская программу DOS в виртуальном режиме 8086 (эмуляция реального режима в защищенном режиме, доступная на процессорах 80386 и выше). NTVDM поддерживает DOS 5.0 API. DOSEMU для Linux использует аналогичный подход.
Векторы прерываний, используемые DOS
Ниже приведен список векторов прерываний, используемых программами для вызова функций API DOS.
DOS INT круглосуточные услуги
Ниже приведен список функций, предоставляемых через первичный вектор программного прерывания API DOS.
Операционные системы с собственной поддержкой
Операционные системы с эмуляцией DOS
Другие эмуляторы
Смотрите также
Ссылки
- ^ Рэй Дункан (1988). Advanced MS-DOS Programming: The Microsoft Guide for Assembly Language and C Programmers . Microsoft Press. ISBN 0914845772.
Дальнейшее чтение
- Allen, Paul ; Gates, Bill ; King, Adrian ; Larson, Chris ; Letwin, Gordon ; O'Rear, Bob ; Paterson, Tim ; Peters, Chris ; Phillips, Bruce ; Reynolds, Aaron ; Stillmaker, Betty ; Zbikowski, Mark (1986). "Технические консультанты". Техническая справочная энциклопедия MS-DOS (версии 1.0-3.2) . Борнштейн, Ховард; Бредехофт, Лоуренс; Дункан, Рэй; Моррис, Кэрол; Роуз, Дэвид; Соха, Джон ; Томлин, Джим; Виан, Кэтлин; Вулвертон, Ван. Белей, Джим; Преппернау, Барри; Бисон, Пэм; Льюис, Андреа; Райгмир, Дэвид (ред.). Справочная библиотека Microsoft. Том 1 (Оригинал отозван). Редмонд, Вашингтон, США: Microsoft Press . ISBN 0-914845-69-1. LCCN 86-8640. OCLC 635600205.(xvii+1053 страницы; 29 см) (Примечание. Это оригинальное издание содержит блок-схемы внутренней работы системы. Оно было отозвано Microsoft перед массовым распространением в 1986 году, поскольку содержало много фактических ошибок, а также некоторую секретную информацию, которая не должна была быть опубликована. Сохранилось лишь несколько печатных копий. Оно было заменено полностью переработанным изданием в 1988 году. [1])
- Збиковски, Марк ; Аллен, Пол ; Баллмер, Стив ; Борман, Рубен; Борман, Роб; Батлер, Джон; Кэрролл, Чак; Чемберлен, Марк; Челл, Дэвид; Коули, Майк; Кортни, Майк; Драйфус, Майк; Дункан, Рэйчел; Экхардт, Курт; Эванс, Эрик; Фармер, Рик; Гейтс, Билл ; Гири, Майкл; Гриффин, Боб; Хогарт, Дуг; Джонсон, Джеймс У.; Кермани, Камел; Кинг, Адриан; Кох, Рид; Ландовски, Джеймс; Ларсон, Крис; Леннон, Томас; Липки, Дэн; Макдональд, Марк ; Маккинни, Брюс; Мартин, Паскаль; Мазерс, Эстель; Мэтьюз, Боб; Мелин, Дэвид; Мергентайм, Чарльз; Невин, Рэнди; Ньюэлл, Дэн; Ньюэлл, Тани; Норрис, Дэвид; О'Лири, Майк; O'Rear, Bob ; Olsson, Mike ; Osterman, Larry ; Ostling, Ridge ; Pai, Sunil ; Paterson, Tim ; Perez, Gary ; Peters, Chris ; Petzold, Charles ; Pollock, John ; Reynolds, Aaron ; Rubin, Darryl ; Ryan, Ralph ; Schulmeisters, Karl ; Shah, Rajen ; Shaw, Barry ; Short, Anthony ; Slivka, Ben ; Smirl, Jon ; Stillmaker, Betty ; Stoddard, John ; Tillman, Dennis ; Whitten, Greg ; Yount, Natalie ; Zeck, Steve (1988). "Технические консультанты". Энциклопедия MS-DOS: версии с 1.0 по 3.2 . Автор: Duncan, Ray ; Bostwick, Steve ; Burgoyne, Keith ; Byers, Robert A. ; Hogan, Thom ; Kyle, Jim ; Letwin, Gordon ; Петцольд, Чарльз ; Рабинович, Чип; Томлин, Джим; Уилтон, Ричард; Вулвертон, Ван; Вонг, Уильям; Вудкок, Джоанн (полностью переработанное издание). Редмонд, Вашингтон, США: Microsoft Press . ISBN 1-55615-049-0. LCCN 87-21452. OCLC 16581341.(xix+1570 страниц; 26 см) (Примечание. Это издание было опубликовано в 1988 году после обширной переработки отозванного первого издания 1986 года другим коллективом авторов. [2])
- Нортон, Питер ; Уилтон, Ричард (1987). Новое руководство программиста Питера Нортона по IBM PC и PS/2 . Microsoft Press. ISBN 1-55615-131-4.
- Рэй Дункан (1988). Расширенное программирование в MS-DOS: Руководство Microsoft для программистов на ассемблере и языке C. Microsoft Press. ISBN 0914845772.
- Хоган, Том (1991). The Programmer's PC Sourcebook . Microsoft Press. ISBN 155615321X.
- Справочник программиста MS-DOS - Официальный технический справочник по MS-DOS . Microsoft Press. 1993. ISBN 1556155468.
- Техническое обновление IBM PC DOS 7
- Справочная серия разработчиков OpenDOS — Руководство программиста OpenDOS — Руководство по системе и программисту. Caldera, Inc. Август 1997 г. Номер детали Caldera 200-DOPG-003. Архивировано из оригинала 07.10.2017 . Получено 28.06.2012 .(Напечатано в Великобритании.)
Внешние ссылки