EMS

В верхней памяти имеются изрядные «дыры», которые представляют собой свободную память, самостоятельно не идентифицируемую системой. Пустуют, как правило, область расширения системного ROM BIOS или часть области под дополнительные модули ROM. Использовать эту память позволяет метод EMS (Expanded Memory Specification), появившийся прежде всего потому, что программы, использующие большое количество памяти, не могут разместиться в оперативной памяти до 640 Кбайт.

Для того чтобы преодолеть этот барьер, фирмы Lotus, Intel и Microsoft (отсюда название LIM) создали стандарт, который основывается на так называемом переключении банков (Bank Switchings), или блоков (страниц), памяти. В области UMB между видеобуфером и системным ROM BIOS выделяется незанятое «окно» (page frame) размером 64 Кбайт, разделенное на 4 логические страницы по 16 Кбайт. С помощью специального драйвера, например ЕММ386.ЕХЕ, строятся «отображения» до четырех произвольных физических страниц из дополнительной (Expanded) памяти, расположенной на специальной карте расширения, в логические. Поэтому эту память часто называют отображаемой памятью. При необходимости обращения к данным, расположенным в дополнительной памяти, с помощью драйвера выбирается соответствующее ранее построенное «отображение» физических страниц в логические. Когда процессор обращается к области памяти, входящей в «окно» (адрес памяти которого ниже 1 Мбайт), аппаратно происходит обращение к соответствующим страницам дополнительной памяти на плате расширения. Таким образом, посредством адресации, реализуемой драйвером EMS, можно обращаться к 8 Мбайт (стандарт LIM 3.2) или к 32 Мбайт (стандарт LIM 4.0) дополнительной памяти, которая конструктивно расположена на отдельной карте расширения. На PC с процессорами 80386 и выше такая отдельная карта не нужна. EMS здесь может эмулироваться с помощью соответствующих драйверов.

Для того чтобы использовать EMS-память, необходимо выполнение двух условий:

  • прикладные программы должны уметь обращаться к драйверу EMS-памяти;
  • необходим специальный менеджер памяти (Expanded Memory Manager), сокращенно EMM, который организует страницы и управляет ими. Ранее, для старых материнских плат, соответствующий драйвер поставлялся на отдельной дискете. В настоящее время этот драйвер входит в стандартные поставки DOS и Windows, в этом случае он соответствует последнему стандарту LIM и представляет собой файл ЕММ386.ЕХЕ. Этот драйвер позволяет программно эмулировать дополнительную (Expanded) память в расширенной (Extended) памяти.

Ваш отзыв

Повторите код: