DOS-extender для компилятора Borland C++ 3.1
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: решебник по геометрии класс, дипломная работа методика
| Добавил(а) на сайт: Savinkov.
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата
1.1 Уровни программной поддержки защищенного режима.
Инженерная мысль не стоит на месте, особенно в такой области, как программирование. Задача программной поддержки защищённого режима и поддержки работы с расширенной памятью получила не одно, а сразу несколько решений. Этими решениями стали так называемые уровни программной поддержки защищённого режима и поддержки работы с расширенной памятью:
. интерфейс BIOS;
. интерфейс драйвера HIMEM.SYS;
. интерфейс EMS/VCPI;
. интерфейс DPMI;
. расширители DOS (DOS-экстендеры).
1.1.1 Интерфейс BIOS.
Интерфейсом самого низкого уровня является интерфейс BIOS, предоставляемый программам в виде нескольких функций прерывания BIOS
INT 15h. Интерфейс BIOS позволяет программе перевести процессор из
реального режима в защищённый, переслать блок памяти из стандартной памяти
в расширенную или из расширенной в стандартную. Этим все его возможности и
ограничиваются. Интерфейс BIOS используется для старта мультизадачных
операционных систем защищённого режима (таких, как OS/2) или в старых
программах, работающих с расширенной памятью в защищённом режиме (например,
СУБД ORACLE версии 5.1).
1.1.2 интерфейс драйвера HIMEM.SYS.
С помощью функций, предоставляемых этим драйвером, программа может
выполнять различные действия с блоками расширенной памяти, а также
управлять адресной линией A20. Основное различие между способом работы с
расширенной памятью драйвера HIMEM.SYS и интерфейсом прерывания BIOS
INT 15h заключается в том, что первый выполняет выделение программе и
внутренний учёт блоков расширенной памяти, а второй рассматривает всю
расширенную память как один непрерывный участок. Однако драйвер HIMEM.SYS
не открывает для программ доступ к защищённому режиму. Он полностью
работает в реальном режиме, а для обращения к расширенной памяти использует
либо недокументированную машинную команду LOADALL (если используется
процессор 80286), либо возможности процессора 80386, который позволяет
адресовать расширенную память в реальном режиме (при соответствующей
инициализации системных регистров и таблиц).
1.1.3 интерфейс EMS/VCPI.
Используя трансляцию страниц, некоторые драйверы памяти (например,
EMM386 или QEMM) могут эмулировать присутствие дополнительной памяти, используя расширенную память. При этом стандартный набор функций управления
дополнительной памятью, реализованный в рамках прерывания INT 67h, дополнен
еще несколькими функциями для работы в защищённом режиме процессора. Эти
новые функции реализуют интерфейс виртуальной управляющей программы VCPI
(Virtual Control Programm Interface). Они позволяют устанавливать
защищённый и виртуальный режимы работы процессора, работать с расширенной
памятью на уровне страниц и устанавливать специальные отладочные регистры
процессора i80386. Интерфейс VCPI облегчает использование механизма
трансляции страниц, освобождая программиста от необходимости работать с
системными регистрами процессора.
1.1.4 интерфейс DPMI.
Интерфейс DPMI (DOS Protected Mode Interface - интерфейс защищённого
режима для DOS) реализуется модулем, называющимся сервером DPMI. Этот
интерфейс доступен для тех программ, которые работают на виртуальной машине
WINDOWS или OS/2 версии 2.0 (позже мы обсудим некоторые детали, связанные с
использованием интерфейса DPMI в WINDOWS). Интерфейс DPMI предоставляет
полный набор функций для создания однозадачных программ, работающих в
защищённом режиме. В этом интерфейсе имеются функции для переключения из
реального режима в защищённый и обратно, для работы с локальной таблицей
дескрипторов LDT, для работы с расширенной и стандартной памятью на уровне
страниц, для работы с прерываниями (в том числе для вызова прерываний
реального режима из защищённого режима), для работы с отладочными
регистрами процессора i80386. Это наиболее развитый интерфейс из всех
рассмотренных ранее.
1.1.5 расширители DOS (DOS-экстендеры).
Последний, самый высокий уровень программной поддержки защищённого
режима - расширители DOS или DOS-экстендеры (DOS-extender). Они
поставляются, как правило, вместе со средствами разработки программ
(трансляторами) в виде библиотек и компонуются вместе с создаваемой
программой в единый загрузочный модуль. DOS-экстендеры значительно
облегчают использование защищённого режима и расширенной памяти в
программах, предназначенных для запуска из среды MS-DOS. Программы, составленные с использованием DOS-экстендеров, внешне очень похожи на
обычные программы MS-DOS, однако они получают управление, когда процессор
уже находится в защищённом режиме. К формируемому с помощью DOS-экстендера
загрузочному модулю добавляются процедуры, необходимые для инициализации
защищённого режима. Эти процедуры первыми получают управление и выполняют
начальную инициализацию таблиц GDT, LDT, IDT, содержат обработчики
прерываний и исключений, систему управления виртуальной памятью и т.д.
1.2 Текущее положение дел в мире DOS-extender-ов.
Еще несколько лет назад целые фирмы зарабатывали себе на существование созданием различных модификаций DOS extender-ов. Например довольно известный externder фирмы Phar Lap. После перехода большинства пользователей в среду Win32 необходимость в DOS extender-ах резко сократилась и большинство таких фирм, не сумев сориентироваться в изменившихся условиях, прекратили свое существование.
Многие фирмы, разрабатывавшие компиляторы для DOS, включали в поставку
своих сред программирования DOS-extender-ы собственной разработки. Таким
примером может служить фирма Borland (ныне подразделение фирмы Corel) с ее
Borland Pascal, Borland C++ и расширителем DOS RTM.
В данный момент доступно несколько DOS-extender-ов по свободной лицензии, которые могут использоваться кем угодно для любых целей. И это понятно, денег на них сейчас не заработаешь.
Примеры таких программ:
- ZRDX by Sergey Belyakov (http://www.zrdx.da.ru)
Маленький и функциональный DOS-extender для Watcom C++ и 32-х битных исполняемых файлов формата OS/2 LE. Используется в коммерческих программах, таких как антивирус AVP для DOS32.
- WDOSX by Michael Tippach (http://www.wuschel.demon.co.uk)
Рекомендуем скачать другие рефераты по теме: диплом купить, скачать конспект урока.
Категории:
Предыдущая страница реферата | 1 2 3 4 5 6 7 8 9 10 11 | Следующая страница реферата