Книга: Аппаратные интерфейсы ПК. Энциклопедия
12.1. Пространство физической памяти
12.1. Пространство физической памяти
Основную часть физического адресного пространства PC занимает оперативная память (ОЗУ), начинающаяся с нулевого адреса. В нее вклинивается область адресов A0000h-FFFFFh — Upper Memory Area (UMA), 384 Кбайт — верхняя память, зарезервированная со времен IBM PC для системных нужд. В UMA размещаются области буферной памяти адаптеров шины (E)ISA (например, видеопамять) и постоянная память (BIOS с расширениями). ОЗУ продолжается и за областью UMА. Под самой верхней границей физического адресного пространства имеется образ памяти системной ROM BIOS.
Для доступности сервисов BIOS в реальном режиме все ПК имеют образ ROM BIOS в адресах E0000h-FFFFFh или F0000h-0FFFFFh. Кроме того, образ BIOS должен находиться и под самой верхней границей адресного пространства, поскольку все процессоры х86 по аппаратному сбросу стартуют с адреса начала последнего параграфа памяти (FFFF0h — 8086/88, FFFFF0h — 80286 и 386SX, FFFFFFF0h — 386DX и выше с 32-разрядной шиной адреса, FFFFFFFF0h — P6 и выше с 36-разрядной шиной адреса).
Для компьютеров класса АТ-286 и 386SX с 24-битной шиной адреса верхняя граница оперативной памяти — FDFFFFh (максимальный размер 15,9 Мбайт). Область FE0000h-FFFFFFh содержит образ ROM BIOS, обращение к этой области эквивалентно обращению к ROM BIOS по адресам 0E0000h-0FFFFFh.
Для ПК на процессорах 386DX и выше с 32-битной шиной адреса теоретический предел объема ОЗУ — почти 4 Гбайт, верхний образ BIOS находится в адресах FFFE0000h-FFFFFFFFh. Для ПК на процессорах P6+ с 36-битной шиной адреса предел объема ОЗУ — почти 64 Гбайт и верхний образ BIOS находится в адресах FFFFE0000h-FFFFFFFFFh.
Области физических адресов, не занятые ОЗУ и ROM BIOS, могут быть использованы устройствами шин (E)ISA и PCI (AGP).
Для памяти адаптеров, устанавливаемых в шину ISA, безусловно доступна часть области адресов UMA A0000h-EFFFFh или A0000h-DFFFFh (до начала ROM BIOS). В этой области располагаются и модули расширений BIOS (см. п. 12.7.1). Карты ISA могут иметь память и в области FE0000h-FFFFFFh, но она программно доступна лишь в защищенном (и большом реальном) режимах процессора. Для отображения этой области памяти на шину ISA (а не ОЗУ) в CMOS Setup предусмотрен параметр Memory Hole At 15-16М
, но его включение не позволит использовать оперативную память свыше 15 Мбайт.
Поскольку шина ISA имеет 24-разрядную шину адреса, ведущие устройства этих шин (ISA Bus Master) способны обращаться к памяти (ОЗУ и память адаптеров) в пределах первых 16 Мбайт (000000-FFFFFFh). To же ограничение касается и стандартного контроллера DMA, которым могут пользоваться устройства шины ISA (и иные устройства системной платы).
Шина PCI имеет 32-разрядную шину адреса, так что ее ведущим устройствам доступна вся физическая память[5]. Для устройств PCI могут выделяться любые области адресов, свободные от ОЗУ, ROM BIOS и устройств ISA. Области адресов памяти, используемые каждым устройством PCI, описаны в заголовках их конфигурационных пространств. Эти данные требуются при распределении ресурсов и настройке мостов PCI в процессе инициализации шины.
- 2.3.6. Задание объектов физической памяти
- Отображение верхней памяти
- 12.5.1. Возможности адресации памяти процессорами различных поколений
- Введение в диспетчер памяти
- Мост между физической и логической структурой базы данных
- 3.2.1.2. Начальное выделение памяти: malloc()
- 6.3 Пространство имен устройств
- Неисправности оперативной памяти
- Как работает модуль оперативной памяти
- Описание типов модулей оперативной памяти
- Извлечение и установка модулей памяти
- Характеристики модулей памяти