background image

7-16 Vol. 3A

TASK MANAGEMENT

The 16-bit TSS does not contain a field for the base address of the page directory, which is loaded into control 
register CR3. A separate set of page tables for each task is not supported for 16-bit tasks. If a 16-bit task is 
dispatched, the page-table structure for the previous task is used.

The I/O base address is not included in the 16-bit TSS. None of the functions of the I/O map are supported.

When task state is saved in a 16-bit TSS, the upper 16 bits of the EFLAGS register and the EIP register are lost.

When the general-purpose registers are loaded or saved from a 16-bit TSS, the upper 16 bits of the registers 
are modified and not maintained.

7.7 

TASK MANAGEMENT IN 64-BIT MODE

In 64-bit mode, task structure and task state are similar to those in protected mode. However, the task switching 
mechanism available in protected mode is not supported in 64-bit mode. Task management and switching must be 
performed by software. The processor issues a general-protection exception (#GP) if the following is attempted in 
64-bit mode:

Control transfer to a TSS or a task gate using JMP, CALL, INTn, or interrupt.

An IRET with EFLAGS.NT (nested task) set to 1.

Figure 7-10.  16-Bit TSS Format

Task LDT Selector

DS Selector

SS Selector

CS Selector

ES Selector

DI

SI

BP

SP

BX

DX

CX

AX

FLAG Word

IP (Entry Point)

SS2

SP2

SS1

SP1

SS0

SP0

Previous Task Link

15

0

42

40

36

34

32

30

38

28

26

24

22

20

18

16

14

12

10

8

6

4

2

0