2013-09-06 4 views
3

В Xen кода ./xen/include/asm-x86/config.h, я увидел код макета памяти:Для чего нужен PML4?

/* 
137 * Meng: Xen-definitive guide: P81 
138 * Memory layout: 
139 * 0x0000000000000000 - 0x00007fffffffffff [128TB, 2^47 bytes, PML4:0-255] 
140 * Guest-defined use (see below for compatibility mode guests). 
141 * 0x0000800000000000 - 0xffff7fffffffffff [16EB] 
142 * Inaccessible: current arch only supports 48-bit sign-extended VAs. 
143 * 0xffff800000000000 - 0xffff803fffffffff [256GB, 2^38 bytes, PML4:256] 

Я очень смущен, что PML4 является аббревиатурой. Я знал, что x86_64 использует только 48 бит из 64 бит. Но для чего нужен PML4? Это может помочь мне понять количество за ним.

Спасибо!

ответ

5

Это не для Страница карты Уровень 4. Немного объяснения можно найти here. В принципе, именно так AMD решила обозначить таблицы страниц.

+0

спасибо! Ссылка очень полезна! Это похоже на запись в таблице страниц в таблице страниц с четырьмя уровнями. Итак, я полагаю, что смещение таблицы PML составляет A12-A20? – Mike