Figures Fig.5
Fig.5-1 Address Translation Overview
Figure 5-1. Address Translation Overview
15 0 31 0
LOGICAL +---------------+ +------------------------------+
ADDRESS | SELECTOR | | OFFSET |
+---------------+ +------------------------------+
v
+------------------------------+
| SEGMENT TRANSLATION |
+------------------------------+
+----+ PAGING ENABLED
|PG ?|--------------------+
+----+ |
31 PAGING v DISABLED 0 |
LINEAR +-----------------------------------+ |
ADDRESS | DIR | PAGE | OFFSET | |
+-----------------------------------+ |
v |
+------------------------------+ |
| PAGE TRANSLATION | |
+------------------------------+ |
|<---------------------+
31 v 0
PHYSICAL +------------------------------+
ADDRESS | |
+------------------------------+
Fig.5-2 Segment Translation
Figure 5-2. Segment Translation
15 0 31 0
LOGICAL +----------------+ +-------------------------------------+
ADDRESS | SELECTOR | | OFFSET |
+----------------+ +-------------------------------------+
+------+ v |
| DESCRIPTOR TABLE |
| +------------+ |
| | | |
| | | |
| | | |
| | | |
| |------------| |
| | SEGMENT | BASE +---+ |
+->| DESCRIPTOR |-------------->| + |<------+
|------------| ADDRESS +---+
| | |
+------------+ |
v
LINEAR +---------------------------------------+
ADDRESS | DIR | PAGE | OFFSET |
+---------------------------------------+
Fig.5-3 General Segment-Descriptor Format
Figure 5-3. General Segment-Descriptor Format
DESCRIPTORS USED FOR APPLICATIONS CODE AND DATA SEGMENTS
31 23 21 20 15 12 11 9 8 7 0
+-----------------+-----------------+-----------------+-----------------+
| | | | |A| | | | | | | |
| BASE 31..24 |G|X|O|V| LIMIT |P| DPL |1| TYPE|A| BASE 23..16 | 4
| | | | |L| 19..16 | | | | | | |
|-----------------------------------+-----------------------------------|
| | |
| SEGMENT BASE 15..0 | SEGMENT LIMIT 15..0 | 0
| | |
+-----------------+-----------------+-----------------+-----------------+
DESCRIPTORS USED FOR SPECIAL SYSTEM SEGMENTS
31 23 15 7 0
+-----------------+-----------------+-----------------+-----------------+
| | | | |A| | | | | | |
| BASE 31..24 |G|X|O|V| LIMIT |P| DPL |0| TYPE | BASE 23..16 | 4
| | | | |L| 19..16 | | | | | |
|-----------------------------------+-----------------------------------|
| | |
| SEGMENT BASE 15..0 | SEGMENT LIMIT 15..0 | 0
| | |
+-----------------+-----------------+-----------------+-----------------+
A - ACCESSED
AVL - AVAILABLE FOR USE BY SYSTEMS PROGRAMMERS
DPL - DESCRIPTOR PRIVILEGE LEVEL
G - GRANULARITY
P - SEGMENT PRESENT
Fig.5-4 Format of Not-Present Descriptor
Figure 5-4. Format of Not-Present Descriptor
31 23 15 7 0
+-----------------+-----------------+-----------------+-----------------+
| | | | | | |
| AVAILABLE |O| DPL |S| TYPE | AVAILABLE | 4
| | | | | | |
|-----------------------------------------------------------------------|
| |
| AVAILABLE | 0
| |
+-----------------+-----------------+-----------------+-----------------+
Fig.5-5 Descriptor Tables
Figure 5-5. Descriptor Tables
GLOBAL DESCRIPTOR TABLE LOCAL DESCRIPTOR TABLE
+-------------------------+ +-------------------------+
| | | | | | | | | |
|------------+------------| |------------+------------|
| | | M | | | M
+-------------------------+ +-------------------------+
| | | |
| | | |
+-------------------------+ +-------------------------+
| | | | | | | | | |
|------------+------------| |------------+------------|
| | | N + 3 | | | N + 3
|------------+------------| |------------+------------|
| | | | | | | | | |
|------------+------------| |------------+------------|
| | | N + 2 | | | N + 2
|------------+------------| |------------+------------|
| | | | | | | | | |
|------------+------------| |------------+------------|
| | | N + 1 | | | N + 1
|------------+------------| |------------+------------|
| | | | | | | | | |
|------------+------------| |------------+------------|
| | | N | | | N
+-------------------------+ +-------------------------+
| | | |
| | | |
+-------------------------+ +-------------------------+
| | | | | | | | | |
|---------(UNUSED)--------| |------------+------------|
| | | | | |
+-------------------------+ +-------------------------+
^ ^
+---------------------+ | +---------------------+ |
| GDTR |--+ | LDTR |--+
+---------------------+ +---------------------+
Fig.5-6 Format of a Selector
Figure 5-6. Format of a Selector
15 3 2 1 0
+-------------------------------+
| |T| |
| INDEX | |RPL|
| |I| |
+-------------------------------+
TI - TABLE INDICATOR 0=Global, 1=Local
RPL - REQUESTOR'S PRIVILEGE LEVEL
Fig.5-7 Segment Registers
Figure 5-7. Segment Registers
16-BIT VISIBLE
SELECTOR HIDDEN DESCRIPTOR
+---------------------------------------------------------+
CS | | |
|----------------+----------------------------------------|
SS | | |
|----------------+----------------------------------------|
DS | | |
|----------------+----------------------------------------|
ES | | |
|----------------+----------------------------------------|
FS | | |
|----------------+----------------------------------------|
GS | | |
+---------------------------------------------------------+
Fig.5-8 Format of a Linear Address
Figure 5-8. Format of a Linear Address
31 22 21 12 11 0
+----------------------------------------------------------------+
| | | |
| DIR | PAGE | OFFSET |
| | | |
+----------------------------------------------------------------+
Fig.5-9 Page Translation
Figure 5-9. Page Translation
PAGE FRAME
+----------------------------------+ +---------------+
| DIR | PAGE | OFFSET | | |
+----------------------------------+ | |
| | | | |
+-------------+ | +------------->| PHYSICAL |
| | | ADDRESS |
| PAGE DIRECTORY | PAGE TABLE | |
| +---------------+ | +---------------+ | |
| | | | | | +---------------+
| | | | |---------------| ^
| | | +-->| PG TBL ENTRY |--------------+
| |---------------| |---------------|
+->| DIR ENTRY |--+ | |
|---------------| | | |
| | | | |
+---------------+ | +---------------+
^ | ^
+-------+ | +---------------+
| CR3 |--------+
+-------+
Fig.5-10 Format of a Page Table Entry
Figure 5-10. Format of a Page Table Entry
31 12 11 9 8 7 6 5 4 3 2 1 0
+----------------------------------------------------------------+
| | | | | | |U|R| |
| PAGE FRAME ADDRESS 31..12 | AVAIL |0 0|D|A|0 0|/|/|P|
| | | | | | |S|W| |
+----------------------------------------------------------------+
P - PRESENT
R/W - READ/WRITE
U/S - USER/SUPERVISOR
D - DIRTY
AVAIL - AVAILABLE FOR SYSTEMS PROGRAMMER USE
NOTE: 0 INDICATES INTEL RESERVED. DO NOT DEFINE.
See Also: Fig.5-11
Fig.5-11 Invalid Page Table Entry
Figure 5-11. Invalid Page Table Entry
31 1 0
+----------------------------------------------------------------+
| | |
| AVAILABLE |0|
| | |
+----------------------------------------------------------------+
Fig.5-12 80386 Addressing Mechanism
Figure 5-12. 80306 Addressing Machanism
16 0 32 0
+----------------------------------------------------------+ LOGICAL
| SELECTOR | OFFSET | ADDRESS
+----------------------------------------------------------+
+-------+ v |
| DESCRIPTOR TABLE |
| +---------------+ |
| | | |
| | | |
| | | |
| | | |
| |---------------| |
| | SEGMENT | +---+ |
+->| DESCRIPTOR |-------->| + |<----------+
|---------------| +---+
| | |
+---------------+ |
+-----------------+----------------+
v v v PAGE FRAME
LINEAR +----------------------------------+ +---------------+
ADDRESS | DIR | PAGE | OFFSET | | |
+----------------------------------+ | |
| | | | |
+-------------+ | +------------->| PHYSICAL |
| | | ADDRESS |
| PAGE DIRECTORY | PAGE TABLE | |
| +---------------+ | +---------------+ | |
| | | | | | | |
| | | | | | +---------------+
| | | | |---------------| ^
| | | +-->| PG TBL ENTRY |--------------+
| |---------------| |---------------|
+->| DIR ENTRY |--+ | |
|---------------| | | |
| | | | |
+---------------+ | +---------------+
^ | ^
+-------+ | +---------------+
| CR3 |--------+
+-------+
Fig.5-13 Descriptor per Page Table
Figure 5-13. Descriptor per Page Table
PAGE FRAMES
+-----------+
LDT PAGE DIRECTORY PAGE TABLES | |
+----------+ +----------+ +----------+ | |
| | | | | | +->+-----------+
|----------| |----------| |----------| |
| | | | | PTE |---+ +-----------+
|----------| |----------| |----------| | |
| | | | | PTE |---+ | |
|----------| |----------| |----------| +->+-----------+
| | | | | PTE |---+
|----------| |----------| +--->+----------+ | +-----------+
|DESCRIPTOR|------>| PDE |---+ | | |
|----------| |----------| | | |
|DESCRIPTOR|------>| PDE |---+ +->+-----------+
|----------| |----------| | +----------+
| | | | | | | +-----------+
|----------| |----------| | |----------| | |
| | | | | | | | |
|----------| |----------| | |----------| +->+-----------+
| | | | | | PTE |---+
|----------| |----------| | |----------| +-----------+
| | | | | | PTE |---+ | |
+----------+ +----------+ +--->+----------+ | | |
LDT PAGE DIRECTORY PAGE TABLES +->+-----------+
PAGE FRAMES