Руководство по языку B.Pascal 7

         

Выполнение программы защищенного режима DOS


Когда вы выполняете программу DOS защищенного режима, нужно обеспечить наличие в текущем каталоге или по маршруту DOS файлов DPMI16BI.OVL (сервер DPMI), RTM.EXE (администратор этапа выполне- ния) и всех DLL, с которыми работает ваша программа.

Примечание: Лицензионное соглашение позволяет вам распространять файлы DPMI16BI.OVL и RTM.EXE вместе с вашей программой.

В выполняемом файле .EXE защищенного режима DOS используется тот же формат файла, что и в Windows 3.x и OS/2 1.x. Этот формат файла является надмножеством обычного формата .EXE DOS и состоит из обычного образа файла .EXE, называемого фиктивным модулем, за которым следует расширенный заголовок и код, данные и ресурсы за- щищенного режима. Ниже показана последовательность событий при выполнении программы защищенного режима DOS.

1. DOS загружает фиктивный модуль реального режима и переда- ет ему управление.

2. Если средства DPMI отсутствуют, то фиктивный модуль заг- ружает DPMI-сервер из файла DPMI16BI.OVL. Некоторые новые администраторы памяти поддерживают средства DPMI (как, например, это делается в окне DOS улучшенного режима Windows 3.х). В таких конфигурациях фиктивный модуль не загружает DPMI-сервер, но использует уже имеющийся.

3. Далее, если администратор этапа выполнения еще не загру- жен в память, фиктивный модуль загружает его из файла RTM.EXE. Если прикладная программа защищенного режима вы- полняет другую программу защищенного режима, обе исполь- зуют одну копию администратора этапа выполнения.

4. Если средства DPMI и администратор этапа выполнения при- сутствуют, фиктивный модуль переключается из реального в защищенный режим и передает управление расширенному заг- рузчику .EXE в администратора этапа выполнения.

5. Загрузчик сначала загружает используемую прикладной прог- раммой DLL (если она имеется), затем загружает сегменты кода и данных прикладной программы. Наконец, загрузчик передает управление на точку входа прикладной программы.

При выполнении вашей прикладной программы защищенного режима DOS всегда возможно ситуация, когда уже присутствует DMPI-сервер, отличный от сервера Borland. Поскольку между серверами могут быть небольшие различия, особенно в плане обработки прерываний DOS, вы должны проверить программу и убедиться, что она работает со всеми возможными серверами, которые могут ей встретиться.

Когда прикладная программа защищенного режима DOS выполняет- ся в окне DOS улучшенного режима Windows, вы можете управлять объемом расширенной памяти, которую выделяет администратор этапа выполнения, задав в файле .PIF прикладной программы предельное значение памяти XMS.



Содержание раздела