Как реализованы регистры MTRR? [закрыто]
x86 / x86-64 предоставляет MTRR (Memory-type-range-register), который может быть полезен для обозначения разных частей физического адресного пространства для разных видов использования (например, Cacheable, Unchangeable, Writecombining и т. д.).
Мой вопрос заключается в том, кто-нибудь знает, как они ограничены в физическом адресном пространстве, как определено MTRR, в аппаратном обеспечении? При каждом доступе к памяти аппаратное обеспечение проверяет, попадает ли физический адрес в заданный диапазон, прежде чем процесс решит, следует ли ему искать кэш или искать в буфере объединения записей или отправлять его непосредственно контроллеру памяти?
Спасибо