forked from xt-sys/exectos
Add GDT and Segments related definitions for i686
This commit is contained in:
parent
a366de618f
commit
7bd67d6210
@ -13,6 +13,48 @@
|
|||||||
#include <xttypes.h>
|
#include <xttypes.h>
|
||||||
|
|
||||||
|
|
||||||
|
/* Selector masks */
|
||||||
|
#define MODE_MASK 0x0001
|
||||||
|
#define RPL_MASK 0x0003
|
||||||
|
|
||||||
|
/* GDT selector names */
|
||||||
|
#define KGDT_NULL 0x0000
|
||||||
|
#define KGDT_R0_CODE 0x0008
|
||||||
|
#define KGDT_R0_DATA 0x0010
|
||||||
|
#define KGDT_R3_CODE 0x0018
|
||||||
|
#define KGDT_R3_DATA 0x0020
|
||||||
|
#define KGDT_SYS_TSS 0x0028
|
||||||
|
#define KGDT_R0_PCR 0x0030
|
||||||
|
#define KGDT_R3_TEB 0x0038
|
||||||
|
#define KGDT_VDM_TILE 0x0040
|
||||||
|
#define KGDT_R0_LDT 0x0048
|
||||||
|
#define KGDT_DF_TSS 0x0050
|
||||||
|
#define KGDT_NMI_TSS 0x0058
|
||||||
|
|
||||||
|
/* GDT descriptor privilege levels */
|
||||||
|
#define KGDT_DPL_SYSTEM 0
|
||||||
|
#define KGDT_DPL_USER 3
|
||||||
|
|
||||||
|
/* GDT descriptor properties */
|
||||||
|
#define KGDT_DESCRIPTOR_ACCESSED 0x01
|
||||||
|
#define KGDT_DESCRIPTOR_READ_WRITE 0x02
|
||||||
|
#define KGDT_DESCRIPTOR_EXECUTE_READ 0x02
|
||||||
|
#define KGDT_DESCRIPTOR_EXPAND_DOWN 0x04
|
||||||
|
#define KGDT_DESCRIPTOR_CONFORMING 0x04
|
||||||
|
#define KGDT_DESCRIPTOR_CODE 0x08
|
||||||
|
|
||||||
|
/* GDT descriptor type codes */
|
||||||
|
#define KGDT_TYPE_CODE (0x10 | KGDT_DESCRIPTOR_CODE | KGDT_DESCRIPTOR_EXECUTE_READ)
|
||||||
|
#define KGDT_TYPE_DATA (0x10 | KGDT_DESCRIPTOR_READ_WRITE)
|
||||||
|
|
||||||
|
/* I686 Segment Types */
|
||||||
|
#define I686_TASK_GATE 0x5
|
||||||
|
#define I686_TSS 0x9
|
||||||
|
#define I686_ACTIVE_TSS 0xB
|
||||||
|
#define I686_CALL_GATE 0xC
|
||||||
|
#define I686_INTERRUPT_GATE 0xE
|
||||||
|
#define I686_TRAP_GATE 0xF
|
||||||
|
|
||||||
/* IOPM Definitions */
|
/* IOPM Definitions */
|
||||||
#define IOPM_COUNT 1
|
#define IOPM_COUNT 1
|
||||||
#define IOPM_SIZE 8192
|
#define IOPM_SIZE 8192
|
||||||
|
Loading…
Reference in New Issue
Block a user