>
>
Почему 64-битные операционные системы и…

Андрей Карпов
Статей: 673

Почему 64-битные операционные системы используют для адресации только 48-битные адреса

Адрес, используемый в программе, то есть значение указателя, это так называемый "виртуальный адрес". Процессор содержит в себе небольшой объём сверхбыстрой ассоциативной памяти, в котором содержится преобразование нескольких (часто 64) виртуальных адресов страниц в его физические адреса. Так как 64 строк таблицы явно недостаточно для реальных задач, в x86 архитектурах используются таблицы страниц, размещённые в основной памяти. Каждая таблица страниц сама является страницей и состоит из записей таблицы страниц. Так как число записей в одной таблице ограничено и зависит от размера записи и размера страницы, используется многоуровневая организация таблиц, часто 2 или 3 уровня, иногда даже 4 уровня (для 64-х разрядных архитектур).

Современные реализации архитектуры x86-64 используют 48 битные физические адреса (с возможностью расширения до 52 бит в будущем), позволяя адресовать до 256 TB основной памяти. Данный объём в настоящее время считается избыточным для реальных систем, а увеличение разрядности адресов приведёт к раздуванию таблиц страниц и, соответственно, увеличению количества их уровней.

Библиографический список