Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
25_Структура_оперативной_п...doc
Скачиваний:
15
Добавлен:
21.09.2019
Размер:
100.86 Кб
Скачать

Верхняя память

Обычно в UMA остаются “дыры”. Одна из 64-Кбайт “дыр” может задействоваться под окно отображаемой памяти. Но даже при этом условии в UMA можно было бы разместить почти 100Кбайт так нужной памяти. Оставшиеся “дыры” можно заполнить расширенной памятью, если обеспечить отображение их адресов на ее физические адреса, превышающие 1М. Это с успехом можно сделать на компьютере с МП 80386 и выше, поскольку такие процессоры способны реализовать преобразование одних адресов (логических) в другие адреса (физические). Описанная техника аналогична эмуляции отображаемой с использованием расширенной памяти, но имеет два существенных отличия:

  1. невозможно использовать память, превышающую размеры “дыр” (т.е. не поддерживается механизм переключения страниц);

  2. в заполненные памятью “дыры” можно загружать не только данные, но также драйверы и резидентные программы, что высвобождает стандартную память для других программ.

Память, заполняющая “дыры” в UMA, называется верхней (upper memory), или UMB-памятью (Upper Memory Blocks). Очевидно, верхняя память состоит из нескольких фрагментов, называемых регионами. Она выделяется блоками. Блок не может быть больше региона, в котором он формируется. В любом регионе может быть создано несколько блоков.

Высокая память

Общее количество ячеек памяти, к которым может обращаться DOS нетрудно найти из формулы для вычисления физического адреса, известной из курса архитектуры ЭВМ:

ФА=<сегмент>*16+<смещение>, т.е. получаем (216-1)+216-1=220+216-17=1М+64К-17.

Т.о. мы имеем диапазон адресов от 1М до 1М+64К-17, лежащий за пределами 1М. Расширенную память, попадающую в эту область принято называть высокой памятью (НМА – Hight Memory Area). Высокая память обеспечивает хранение как данных, так и выполняемых программ, поскольку адресуется непосредственно, без переключения режимов процессора. Однако спецификация XMS допускает использование данной памяти только одной единственной программой. Чаще такой программой является сама DOS, и тогда часть ее резидентного кода перемещается в высокую память, что частично освобождает стандартную память для выполняемых программ.

Таблица – способы загрузки ОС и программ пользователей в OC MSDOS

Название

Диапазон адресов

Что загружается

Как загружается

Основная (стандартная)

0…640 Кб

ОС, программы пользователя

стандартным образом

Верхняя (UMA)

640 Кб

…1 Мб

а) используется как адресное пространство для устройств;

б) драйверы и резидентные программы при использовании EMM386.EXE в режиме UMB

 DOS=UMB

DEVICEHIGH =…

LOADHIGH= …

Высокая (HMA)

1024 Кб   …1088 Кб

часть ОС при использовании HIMEM.SYS

DOS=HIGH

Дополнительная

выше

1088 Кб

при использовании HIMEM.SYS:

а) данные для программ;

б) виртуальный диск;

в) кэш

а) по спецификации XMS (при использовании HIMEM.SYS);

б) по спецификации EMS (при использовании HIMEM.SYS и EMM386.EXE)