Оперативная память

         

Использование функций драйвера



Использование функций драйвера

Для корректной работы с расширенной памятью задачи должны выполнять определенную последовательность действий, а именно:
  1. 1. Проверить наличие менеджера, поддерживающего функции EMS.
  2. 2. Получить код сегмента, на который отображается расширенная память.
  3. 3. Определить наличие требуемого пространства расширенной памяти.
  4. 4. Отобразить часть пространства ОЗУ на физические страницы.
  5. 5. В пределах сегмента работать с расширенной памятью как с обычной.
  6. 6. При достижении границ сегмента повторять пункты 4 и 5.
  7. 7. Перед завершением задачи вернуть память менеджеру.

Выполнение первого пункта списка является скорее данью традиции, чем необходимостью, поскольку ПК на базе Intel 386 и всех последующих моделей обязательно имеют оборудование для доступа к расширенной памяти. Для проверки можно, например, с помощью функции 40h определить статус, а с помощью функции 4бп — номер версии драйвера и убедиться, что он не меньше чем 4.0. Остальные пункты списка обязательно должны выполняться, причем в той последовательности, в которой они перечислены.



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