stringtranslate.com

ДОС API

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

Другие эмуляторы

Смотрите также

Рекомендации

  1. ^ Рэй Дункан (1988). Продвинутое программирование в MS-DOS: Руководство Microsoft для программистов на ассемблере и C. Майкрософт Пресс. ISBN 0914845772.

дальнейшее чтение

Внешние ссылки