Specifications

Intel
®
Quark Core—Protected Mode Architecture
Intel
®
Quark SoC X1000 Core
Developer’s Manual October 2013
70 Order Number: 329679-001US
6.2.2 Terminology
The following terms are used throughout the discussion of descriptors, privilege levels
and protection:
6.2.3 Descriptor Tables
6.2.3.1 Descriptor Tables Introduction
The descriptor tables define all of the segments that are used in a Intel
®
Quark SoC
X1000 Core system (see Figure 26). There are three types of tables on the Intel
®
Quark SoC X1000 Core that hold descriptors: the Global Descriptor Table, Local
Descriptor Table, and the Interrupt Descriptor Table. All of the tables are variable
length memory arrays. They range in size between 8 bytes and 64 Kbytes. Each table
can hold up to 8192 8-byte descriptors. The upper 13 bits of a selector are used as an
index into the descriptor table. The tables have registers associated with them that
hold the 32-bit linear base address, and the 16-bit limit of each table.
Each table has a different register associated with it: the GDTR, LDTR, and the IDTR
(see Figure 26). The LGDT, LLDT, and LIDT instructions load the base and limit of the
Global, Local, and Interrupt Descriptor Tables, respectively, into the appropriate
register. The SGDT, SLDT, and SIDT store the base and limit values. These tables are
manipulated by the operating system. Therefore, the load descriptor table instructions
are privileged instructions.
PL: Privilege Level One of the four hierarchical privilege levels. Level 0 is the
most privileged level and level 3 is the least privileged.
Higher privilege levels are numerically smaller than lower
privilege levels.
RPL: Requester
Privilege Level
The privilege level of the original supplier of the selector.
RPL is determined by the least two significant bits of a
selector.
DPL: Descriptor
Privilege Level
The least privileged level at which a task may access that
descriptor (and the segment associated with that
descriptor). Descriptor Privilege Level is determined by
bits 6:5 in the Access Right Byte of a descriptor.
CPL: Current
Privilege Level
The privilege level at which a task is currently executing,
which equals the privilege level of the code segment being
executed. CPL can also be determined by examining the
lowest 2 bits of the CS register, except for conforming
code segments.
EPL: Effective
Privilege Level
The effective privilege level is the least privileged of the
RPL and DPL. Because smaller privilege level values
indicate greater privilege, EPL is the numerical maximum
of RPL and DPL.
Task One instance of the execution of a program. Tasks are also
referred to as processes.