Адресное пространство памяти ПК
Для адресного обращения к ячейкам памяти используется их адресация (как и у домов на улицах города). Адреса - нередко большие числа, и поэтому для адресации обычно применяют шестнадцатиричные числа. Совокупность адресов памяти образует адресное пространство. Обсудим его структуру – рис. 3.10.
Адреса ячеек памяти у ПК выражаются просто их порядковыми номерами. Первые 640 Кбайт памяти ОЗУ называют основной или стандартной памятью
(conventional memory). С обращением к ним нет никаких проблем. В том числе со стороны MS-DOS любых версий. Эта память была определена еще в ПК IBM PC XT, имевших 20-разрядную шину адресов.
Рис. 3.10. Диаграмма распределения памяти ПКНо уже в ПК IBM PC AT основная память была наращена до 1 Мбайта. Аппендикс - память от 640 Кбайт до 1 Мбайта - получил название скрытая память (shadow memory). Иногда ее называют также UMA областью памяти (Upper Memory Area) или верхней областью памяти. Напрямую она для программ под MS-DOS недоступна. Но драйвер himem.sys позволяет получать к ней доступ.
Снизу этой области зарезервирована область памяти для обслуживания видеоадаптеров. Она содержит память под текстовые и графические страницы, а также память под BIOS видеоадаптера, жесткого диска и обычную BIOS.
В старых ПК (до 386-х) в UMA размещено окно размером в 64 Кбайта, ячейки которого обеспечивают адресацию к 32 Мбайтам памяти. В ПК с процессорами 386 и выше этот вид памяти создается из расширенной памяти и сам по себе не применяется. Этот вид памяти называют дополнительной памятью - EMS (Expanded Memory Specification). Драйвер emm386 обеспечивает программную поддержку этой памяти. В верхней области UMA
располагается системная BIOS.
Начиная с ПК класса 386 выше потолка памяти в 1 Мбайт расположена область памяти HMA (High Memory Arrea). Она используется также для адресации к обычно недоступной расширенной памяти с помощью перекрывающихся сегментов, содержащих по 64 Кбайта памяти. HMA память доступна в реальном режиме работы микропроцессоров. Драйвер himem.sys обеспечивает программную поддержку этой памяти.
Вообще говоря, вся память свыше 1 Мбайта называется наращенной или расширенной памятью XMS (eXtended Memory Specification), так что в нее входит и память HMA и так называемая дополнительная память.
Разобраться с распределением памяти конкретного ПК помогает утилита mem (от memory - память), входящая в состав MS-DOS, а также системные программы, входящие в Windows.