Intel 64 and IA-32 Architectures Software Developers Manual Volume 3B, System Programming Guide Part 2

Table Of Contents
Vol. 3 24-15
SUPPORT FOR ADDRESS TRANSLATION
which a logical processor may create and use information cached from the paging
structures.
Section 24.3.1 describes the different kinds of information that may be cached.
Section 24.3.2 specifies when such information may be cached and how it may be
used. Section 24.3.3 details how software can invalidate cached information.
24.3.1 Information That May Be Cached
The application note “TLBs, Paging-Structure Caches, and Their Invalidation” identi-
fies two kinds of translation-related information that may be cached by a logical
processor: translations, which are mappings from linear page numbers to physical
page frames, and paging-structure caches, which map the upper bits of a linear
page number to information from the paging-structure entries used to translate
linear addresses matching those upper bits.
The same kinds of information may be cached when VPIDs and EPT are in use. A
logical processor may cache and use such information based on its function. Informa-
tion with different functionality is tagged appropriately:
VPID-tagged mappings. There are two kinds:
VPID-tagged translations. Each of these is a mapping from a linear page
number to the physical page frame to which it translates, along with
information about access privileges and memory typing.
VPID-tagged paging-structure-cache entries. Each of these is a mapping
from the upper portion of a linear address to the physical address of the
paging structure used to translate the corresponding region of the linear-
address space, along with information about access privileges. For example,
bits 47:39 of a linear address would map to the address of the relevant page-
directory-pointer table.
VPID-tagged mappings do not contain information from any EPT paging
structure.
EPTP-tagged mappings. There are two kinds:
EPTP-tagged translations. Each of these is a mapping from a guest-physical
page number to the physical page frame to which it translates, along with
information about access privileges and memory typing.
EPTP-tagged paging-structure-cache entries. Each of these is a mapping
from the upper portion of a guest-physical address to the physical address of
the EPT paging structure used to translate the corresponding region of the
guest-physical address space, along with information about access
privileges.
The information in EPTP-tagged mappings about access privileges and memory
typing is derived from EPT paging structures.
Dual-tagged mappings. There are two kinds: