Викия

OSDev Wiki

Физический адрес

273статьи на
этой вики
Добавить новую страницу
Обсуждение0 Share

Обнаружено использование расширения AdBlock.


Викия — это свободный ресурс, который существует и развивается за счёт рекламы. Для блокирующих рекламу пользователей мы предоставляем модифицированную версию сайта.

Викия не будет доступна для последующих модификаций. Если вы желаете продолжать работать со страницей, то, пожалуйста, отключите расширение для блокировки рекламы.

Физический адрес — это адрес, по которому производится реальное обращение к памяти.

Обычно программисты не имеют напрямую дело с физическими адресами. Вместо этого они работают с виртуальными адресами (в терминологии фирмы Intel — с логическими адресами), которые затем преобразуются процессором в физические. Процесс преобразования может включать несколько стадий. Например, в реальном режиме IA-32 стадия всего одна — преобразование логического адреса, состоящего из селектора сегмента и смещения, в линейный, численно совпадающий с физическим. В защищённом режиме логический адрес сначала преобразуется в линейный, а уже последний преобразуется в физический (частным случаем — когда страничный механизм отсутствует или неактивен — является совпадение линейного и физического адресов). В 64-разрядном режиме преобразование выполняется в одну стадию. Здесь линейный адрес совпадает с логическим адресом, поскольку механизм сегментации отключен, и преобразование производится лишь с помощью страничного механизма из линейного в физический адрес.

Разрядность физического адреса зависит от модели процессора. Микропроцессоры 8086 и 80186 использовали 20-разрядный физический адрес, 80286 — 24-разрядный, 80386 и ряд последующих 32-разрядных процессоров — 32-разрядный. Начиная с микропроцессора Pentium Pro, появилась возможность использования расширенных 36-разрядных физических адресов — технология PAE. С выпуском 64-разрядных микропроцессоров (технологии AMD64 и Intel EM64T) теоретическая разрядность физического адреса возросла до 64 бит, однако на практике используются более узкие физические адреса, но не меньше, чем 36 бит.

Подпробно способы преобразования логических адресов в физические описаны в разделах Управление памятью в реальном режиме, Управление памятью в защищённом режиме и Управление памятью в режиме IA-32e.

Викия-сеть

Случайная вики