Рефераты. Запоминающие устройства
Логическая организация памяти
Как известно, используемый
в IBM РС, PC/XT микропроцессор i8088 через свои 20 адресных шин предоставляет
доступ всего к 1-Мбайтному пространству памяти. Первые 640 Кбайт адресуемого
пространства в IBM РС-совместимых компьютерах называют обычно стандартной
памятью (conventional memory). Оставшиеся 384 Кбайта зарезервированы для
системного использования и носят название памяти в верхних адресах (UMB, Upper
Memory Blocks, High DOS Memory или UM Area - UMA).Эта область памяти
резервируется под размещение системной ROM BIOS (Read Only Memory Basic Input
Output System), под видеопамять и ROM-память дополнительных адаптеров.
Дополнительная (expanded) память
Почти на всех
персональных компьютерах область памяти UMB редко оказывается заполненной
полностью. Пустует, как правило, область расширения системного ROM BIOS или
часть видеопамяти и области под дополнительные
модули ROM. На этом
и базируется спецификация дополнительной памяти EMS (Ехpanded Memory
Specification), впервые разработанная фирмами Lotus Development, Intel и
Microsoft (поэтому называемая иногда LIM-cпeцификацией). Эта спецификация
позволяет использовать оперативную память свыше стандартных 640 Кбайт для
прикладных программ. Принцип использования дополнительной памяти основан на
переключении блоков (страниц) памяти. В области UMB, между видеобуфером и
системным RGM BIOS, выделяется незанятое 64-Кбайтное "окно", которое
разбито на страницы. Программные и аппаратные средства позволяют отображать
любой сегмент дополнительной памяти в любую из выделенных страниц
"окна(TM). Хотя микропроцессор всегда обращается к данным, хранимым в
"окне" (адрес ниже 1 Мбайта), адреса этих данных могут быть смещены в
дополнительной памяти относительно "окна" на несколько мегабайт (см.
рис. 1).
В компьютерах на
процессоре i8088 для реализации дополнительной памяти должны применяться
специальные платы с аппаратной поддержкой "подкачки" блоков (страниц)
памяти и соответствующий программный драйвер. Разумеется,
платы
дополнительной памяти могут устанавливаться и в компьютер на базе процессоров i80286
и выше.
Расширенная (extended) память
Компьютеры,
использующие процессор l80286 с 24-разрядными адресными шинами, физически могут
адресовать 16 Мбайт, а в случае процессоров i80386/486 - 4 Гбайта памяти. Такая
возможность имеется только для защищенного режима работы процессора, который
операционная система MS-DOS не поддерживает. Расширенная память (extended)
располагается выше области адресов 1 Мбайт (не надо путать 1 Мбайт ОЗУ и 1
Мбайт адресного пространства). Для работы с расширенной памятью микропроцессор
должен переходить из реального в защищенный режим и обратно. В отличие от
l80286 микропроцессоры i80386/486 выполняют эту операцию достаточно просто,
именно поэтому для них в составе MS-DOS имеется специальный драйвер - менеджер
памяти ЕММ386 (см. рис. 2).
Кстати, при
наличии соответствующего драйвера расширенную память можно эмулировать как
дополнительную. Аппаратную поддержку в этом случае должен обеспечивать
микропроцессор не ниже i80386 или вспомогательный набор специальных микросхем
(например, наборы NEAT фирмы Chips and Technologies). Следует заметить, что
многие платы памяти, поддерживающие стандарт LIM/EMS, могут использоваться
также и в качестве расширенной памяти.
Expanded-
память
Область
HMA
Область
НМА - память
1024
K
10000 h
Системный
ROM BIOS
ROM
BIOS
960
K
F000 h
Расширение
ROM BIOS
896
K
E000 h
"
Окно EMS "
...
...
Hard
Disk ROM BIOS
I/O
ROM BIOS
C800 h
784
K
EGA/VGA
ROM BIOS
C000 h
Видеопамять
768
K
Дисплей
CGA
ОЗУ
736
K
Монохромный
дисплей
B000 h
Дисплей
EGA/VGA
...
...
...
A000 h
Драйвер
ЕМM.SYS
TSR-прогрсммы
DOS
DOS
0
K
Рис. 1 Дополнительная память
Рис. 2 Расширенная память