На главную
Подписка
Новости










Главная / MS-DOS / MS-DOS. РУКОВОДСТВО РАЗРАБОТЧИКА / Глава 3 / Расширяемая и расширенная память Сделать домашней страницей Добавить в избранное Написать писмо

НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Расширяемая и расширенная память

С появлением MS-DOS были разработаны более мощные центральные процессоры. Центральные процессоры 80286 и 80386, каждый из которых имеет расширяемые пределы адресуемой памяти,позволяют в одной системе размещать мегабайты памяти. Какая польза от того, что MS-DOS получит сколько-нибудь байтов из этой дополнительной памяти?



                    Адрес     Использование памяти
                    FFFFF .------------------------------------------
                          |      Системное ПЗУ      |     ^       ^
                    F0000 |-------------------------|     |       |
                          |  Используется системой  |     |       |
                    E0000 |-------------------------| 384 кбайт   |
                          |  Используется системой  |ПЗУ или др.  |
                    D0000 |-------------------------|     |       |
                          | Видеопамять (Video RAM) |     |       |
                    C0000 |-------------------------|     |       |
                          |       Графика EGA       |     V       |
                    A0000 |-------------------------|-------      |
                          |       Пользователь      |     ^       |
                    90000 |-------------------------|     |       |
                          |       Пользователь      |     |       |
                    80000 |-------------------------|     |    1 мбайт
                          |       Пользователь      |     |       |
                          |-------------------------|     |       |
                          |       Пользователь      |     |       |
                    60000 |-------------------------| 640 кбайт   |
                          |       Пользователь      |  Область    |
                    50000 |-------------------------|пользователя |
                          |       Пользователь      |     |       |
                    40000 |-------------------------|     |       |
                          |       Пользователь      |     |       |
                    30000 |-------------------------|     |       |
                          |       Пользователь      |     |       |
                    20000 |-------------------------|     |       |
                          |       Пользователь      |     |       |
                    10000 |-------------------------|     |       |
                          |  Используется системой  |     V       V
                    00000  ------------------------------------------
            Рис.3-1. Стандартный формат памяти IBM PC/XT/AT для MS-DOS

Непосредственно никакая, но в большинстве случаев эта дополнительная "расширенная память" (поскольку она простирается выше границы в 1 Мбайт) может часто быть использована как псевдодиск или в более общем плане, как другой тип дополнительной памяти MS-DOS, называемой "расширяемой памятью" (потому, что она "расширяет" основной предел MS-DOS в 640 Кбайт).


Для MS-DOS версии 3.3 и более ранних версий продукты расширяемой памяти доступны в трех разновидностях. Первая спецификация расширяемой памяти была разработана совместно фирмами "Лотус", "Интел" и "Майкрософт" и называлась LIM EMS версии 3.2 (Limit Expanded Memory Specification - предельная спецификация расширяемой памяти). Несколько позже фирмы "Аштон-Тэйт", "Квэдрим" и "АСТ" разработали улучшенный стандарт AQA EEMS (the Enhanced Expanded Memory Specification - улучшенную спецификацию расширяемой памяти). Фирмы "Лотус", "Интел" и "Майкрософт" соединили лучшие стороны AQA EEMS в LIM EMS версии 4.0. Все системы EMS состоят из памяти (на соединительной плате или плате расширения) и администратора улучшенной памяти EMM (the Enhanced Memory Manager) - устанавливаемого драйвера устройства. Для установки функций EMS резервируется прерывание MS-DOS с номером 67h. MS-DOS версии 4.0 и выше, как часть операционной системы, поддерживает стандарт LIM EMS версии 4.0. Реализация аппаратных средств от производителя к производителю меняется. Программное обеспечение EMS MS-DOS версии 4.0 состоит из устанавливаемого драйвера устройства, а, фактически, любого драйвера устройства EMS и совместимого соединения аппаратных средств, которые могут быть заменены применяемой операционной системой.


Расширяемая память является результатом появления в среде MS-DOS устойчивых традиций использования страничной памяти или памяти коммутации банков. При этом подходе большой раздел памяти, который лежит вне адресного пространства процессора, "отображается" малыми областями на многие маленькие разделы памяти, лежащие внутри адресного пространства процессора. В то время как процессор не может адресовать большой раздел памяти непосредственно, он может выбрать или дойти до любой конкретной части, подобно выбору страницы в книге.


В спецификации расширяемой памяти MS-DOS или EMS большая физическая память отображается в 16-килобайтные разделы памяти MS-DOS, называемые страницами. Соответствующее 16-килобайтное адресное пространство в памяти MS-DOS называется страничным фреймом. Количество поддерживаемых страничных фреймов и размещение их внутри системы MS-DOS изменяется в зависимости от типа платы используемой расширяемой памяти, и существующей конфигурации системы.


Глава 7 посвящена обзору памяти EMS, описывающей методы доступа, стандарт EMS и пр. В данном обсуждении мы хотя и признаем существование памяти EMS, но не уделяем ей большого внимания. Прежде всего нас будет интересовать, как сама MS-DOS использует память, и для нас достаточно отметить, что память EMS должна быть отображена на стандартное адресное пространство памяти для того, чтобы быть доступной для MS-DOS. (Имеются соображения о том, что последующие версии MS-DOS могут использовать память EMS непосредственно, реально преодолевая границу в 640 Кбайт).


НАЗАД СОДЕРЖАНИЕ ВПЕРЁД

Hosted by uCoz