Логическая организация памяти

Особенности логической организации памяти

В первых компьютерах PC/XT операционная система DOS могла обращаться к памяти объемом 1 Мбайт, которая делилась на две части (см. § 3.2):

  • • 640 Кбайт с адресами OOOOOh – 9FFFFh отводились для загружаемых программ. Эту область памяти назвали стандартной памятью (Conventional Memory);
  • • верхние 384 Кбайт, которые назвали верхней памятью (Upper Memory), предназначались для системных нужд, т.е. для использования такими компонентами компьютера, как системная плата и платы адаптеров, установленных в разъемах расширения, а также для системной ROM BIOS.

Память свыше 1 Мбайт относится к расширенной памяти. Неудачное размещение зарезервированной для системных нужд памяти в области от 640 Кбайт до 1 Мбайт (вместо 0 – 384 Кбайт) привело к появлению барьера в 640 Кбайт. Несмотря на то что со времени появления первого персонального компьютера прошло много времени, в новейших системах с процессорами Pentium барьер в 640 Кбайт сохранился, хотя на такие операционные системы, как Windows 9/XP/NT, он не оказывает существенного влияния. Отступить от конфигурации памяти первых персональных компьютеров не позволяет:

  • • большое количество разработанных для них 16-разрядных прикладных программ;
  • • необходимость достижения совместимости системы и периферийного оборудования.

В табл. 7.3 приведено распределение (логическая карта) адресов памяти для ее основных областей.

Способы доступа к расширенной памяти DOS-программам реального режима определяют спецификации EMS и XMS, при этом

• спецификация EMS (Expanded Memory Specification) позволяет с помощью специальных аппаратных или программных

Таблица 7.3

Адрес

Название и назначение области памяти

Объем

Стандартная память (Conventional Memory – CM)

000000 000ххх

Для хранения таблицы векторов прерывания (Table Interrupt Vectors), для переменных BIOS, область DOS (DOS Area), предназначенная для загрузки операционной системы

До 2 Кбайт

000ххх 09FFFF

Стандартная память, предоставляемая пользователю для прикладных программ

до 638 Кбайт

Верхняя память (Upper Memory' Area – UMA)

0A0000 0BFFFF

Область видеопамяти для использования в графическом режиме, в монохромном текстовом режиме, в цветном текстовом режиме

128 Кбайт

0C0000 0DFFFF

Область памяти для BIOS видеоадаптеров, плат адаптеров и памяти специального назначения (или свободная память)

128К байт

0E0000 0FFFFF

Дополнительная область памяти для системной BIOS, а также для встроенного языка

128 Кбайт

Расширенная память (extended Memory' Specification – XMS)

100000 I0FFFF

Область верхних адресов (High Memory Area – НМА) – при загруженном драйвере HIM ЕМ.SYS

64 Кбайт

>100000

Размер расширенной памяти определяется объемом основной памяти компьютера

средств любую область расширенной памяти отобразить на 16-килобайтные страницы, расположенные в верхней памяти UMA (до 1 Мбайт). Спецификацию используют в целях экономии стандартной памяти для создания виртуальных дисков, хранения очередей заданий для печати, данных и программного кода некоторых резидентных программ;

  • • спецификация XMS (extended Memory Specification) позволяет программам реального режима хранить данные в расширенной памяти, которая им непосредственно недоступна, копируя в нее и из нее данные доступных областей первого мегабайта памяти. Главным арбитром и диспетчером, координирующим распределение расширенной памяти программам, является драйвер HIMЕМ.SYS. Сначала он забирает всю расширенную память в свое распоряжение, а затем выделяет ее программам, соблюдающим протокол XMS. Программа может получить в распоряжение одну или несколько областей расширенной памяти, включая область верхней памяти НМА (100000h...l0FFFEFh). Протокол XMS запрещает программе доступ к той области памяти, которая используется другой программой. Таким образом, спецификации EMS и XMS отличаются по принципу действия:
  • • в EMS для доступа к расширенной памяти выполняется отображение (страничная переадресация) памяти;
  • • в XMS осуществляется копирование блоков данных.

Следует отметить, что современным операционным системам Windows, работающим в защищенном режиме, не требуется XMS-память. Системе Windows 95 XMS-память необходима в том случае, когда она переключается в реальный режим для получения доступа к системным ресурсам.

 
< Пред   СОДЕРЖАНИЕ     След >