В информатике карта памяти - это структура данных (которая обычно находится в самой памяти), которая указывает, как распределяется память.
Источник: http://en.wikipedia.org/wiki/Memory_map
В отношении этого самого первого предложения существует крайняя двусмысленность.
Прежде всего, как ОЗУ может знать, как распределить память для адресного пространства ЦП, если назначение ОЗУ зависит от системы?
Обычно сама карта памяти сохраняется в некоторой энергонезависимой памяти на устройстве, которая загружает карту памяти в процессор /MMU при загрузке системы. Как кто-то, использующий устройство, вы можете самостоятельно изменить карту памяти, хотя в системах, работающих под управлением операционных систем, эта схема не так важна, поскольку она становится задачей ОС для контроля доступа к памяти. Самодельный подход обычно требуется только во встроенных системах, где вы сами физически подключаете ОЗУ / ПЗУ к существующей схеме.
Переходя к современным компьютерным системам ...
Во-вторых, оперативная память может быть изменена. Если данные находятся в оперативной памяти, все ли микросхемы оперативной памяти имеют структуру, описывающую память? Это не имеет смысла, потому что из-за объема ЦП он расплывчатый и имеет еще меньше смысла, когда вы смотрите на него из-за объема ОЗУ (система может иметь разную память в любое время, разное оборудование, разные адреса, другая архитектура и т. д.).
В-третьих, в статье утверждается, что карта памяти передается в прошивку для ОС. Это имеет смысл только в том случае, если оперативная память имеет аппаратную проводку или карта синхронизирована с адресным пространством ЦП.
Именно - именно поэтому ОЗУ само обеспечивает обнаружение последовательного присутствия (SPD), поэтому BIOS/UEFI может определить, какое ОЗУ находится в вашей системе (и изменилось ли оно с момента последнего запуска компьютера!).
Кроме того, модули управления памятью x86 поставляются с поддержкой виртуальной памяти, предназначенной для использования с операционными системами. Сам MMU соединяет аппаратную схему ОЗУ Physica (которая представляет собой просто большое количество линий данных / адресов, подключенных ко всем модулям DIMM на материнской плате), так что это отвлечено от самого ЦП (даже если MMU и ЦП находятся на одни и те же умирают, они логически две разные "единицы").
RAM не может отображать адреса для системы, если она не знает структуры системы.
Вы правы, само ОЗУ не может (именно поэтому они имеют профили SPD/XMP) - CPU/MMU будет определять, какие ресурсы доступны в системе каждый раз при запуске компьютера. Кроме того, этот процесс абстрагируется от всего, что связано с операционной системой, поскольку большинство ОС в настоящее время используют виртуальную память, которая полностью отделяет концепцию системной памяти от физической ОЗУ (большинство людей знакомы с этой концепцией посредством подкачки страниц, где ОС может разместить часть памяти процессов на диске для освобождения оперативной памяти для других приложений).