CHAPTER 5 MEMORY MANAGEMENT SYSTEM
127
(4) xsseg (64-bit Supervisor mode, current supervisor space)
When SX = 1 in the Status register and bits 63 and 62 of the virtual address space are set to 01, the xsseg
virtual address space is selected; it covers 1 Tbyte (2
The virtual address is extended with the contents of the 8-bit ASID field to form a unique virtual address. This
mapped space begins at virtual address 0x4000 0000 0000 0000 and runs through 0x4000 00FF FFFF FFFF.
40
bytes) of the current supervisor virtual address space.
(5) csseg (64-bit Supervisor mode, separate supervisor space)
When SX = 1 in the Status register and bits 63 and 62 of the virtual address space are set to 11, the csseg
virtual address space is selected; it covers 512 Mbytes (2
space. The virtual address is extended with the contents of the 8-bit ASID field to form a unique virtual address.
This mapped space begins at virtual address 0xFFFF FFFF C000 0000 and runs through 0xFFFF FFFF DFFF
FFFF.
29
bytes) of the separate supervisor virtual address
5.2.7 Kernel-mode Virtual Addressing
If the Status register satisfies any of the following conditions, the processor runs in Kernel mode.
—
KSU = 00
—
EXL = 1
—
ERL = 1
The addressing width in Kernel mode varies according to the state of the KX bit of the Status register, as follows:
—
When KX = 0, 32-bit kernel space is selected.
—
When KX = 1, 64-bit kernel space is selected.
The processor enters Kernel mode whenever an exception is detected and it remains in Kernel mode until an
exception return (ERET) instruction is executed and results in ERL and/or EXL = 0. The ERET instruction restores
the processor to the mode existing prior to the exception.
Kernel mode virtual address space is divided into regions differentiated by the high-order bits of the virtual
address, as shown in Figure 5-6. Table 5-3 lists the characteristics of the 32-bit Kernel mode segments, and Table
5-4 lists the characteristics of the 64-bit Kernel mode segments.