Intel IA-32 User Manual

Page 90

Advertising
background image

3-10 Vol. 3A

PROTECTED-MODE MEMORY MANAGEMENT

can be available for immediate use. Other segments can be made available by loading their
segment selectors into these registers during program execution.

Every segment register has a “visible” part and a “hidden” part. (The hidden part is sometimes
referred to as a “descriptor cache” or a “shadow register.”) When a segment selector is loaded
into the visible part of a segment register, the processor also loads the hidden part of the segment
register with the base address, segment limit, and access control information from the segment
descriptor pointed to by the segment selector. The information cached in the segment register
(visible and hidden) allows the processor to translate addresses without taking extra bus cycles
to read the base address and limit from the segment descriptor. In systems in which multiple
processors have access to the same descriptor tables, it is the responsibility of software to reload
the segment registers when the descriptor tables are modified. If this is not done, an old segment
descriptor cached in a segment register might be used after its memory-resident version has been
modified.

Two kinds of load instructions are provided for loading the segment registers:

1.

Direct load instructions such as the MOV, POP, LDS, LES, LSS, LGS, and LFS instruc-
tions. These instructions explicitly reference the segment registers.

2.

Implied load instructions such as the far pointer versions of the CALL, JMP, and RET
instructions, the SYSENTER and SYSEXIT instructions, and the IRET, INTn, INTO and
INT3 instructions. These instructions change the contents of the CS register (and
sometimes other segment registers) as an incidental part of their operation.

The MOV instruction can also be used to store visible part of a segment register in a general-
purpose register.

Figure 3-7. Segment Registers

CS

SS

DS

ES

FS

GS

Segment Selector

Base Address, Limit, Access Information

Visible Part

Hidden Part

Advertising