Когда процессор обращается к регистру отображения памяти, действительно ли он обращается к устройству - PullRequest
2 голосов
/ 09 июля 2011

Предположим, что устройство имеет один регистр, а процессор имеет архитектуру, похожую на x86. Этот регистр отображен в памяти по физическому адресу 0x50000.

Процессор записывает 0X00ABCDEF в 0x50000 (физ.). Если бы я был в состоянии проверить этот адрес "открытие" банка RAM, что я должен найти? 0X00ABCDEF или мусор?

Я предполагаю, что в регистре устройства уже есть 0X00ABCDEF. Пожалуйста, поправьте меня, если я ошибаюсь.

1 Ответ

6 голосов
/ 09 июля 2011

Специальные адреса могут быть сопоставлены с «контактами» устройства или других периферийных устройств, так что ОЗУ вообще не задействуется (хотя в наше время все немного сложнее, идея совершенно та же)Таким образом, доступ к этому адресу может сделать что-то в соответствии со спецификациями оборудования, сопоставленного с этим адресом, но не оставить следов в ОЗУ.Другими словами, этот адрес не является местом в ОЗУ.Это просто способ адрес (для доступа) к устройству.

...