ptos/amd64: Add global descriptor table defs
Signed-off-by: Chloe M <chloe@mensia.org>
This commit is contained in:
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (c) 2026, Chloe M.
|
||||
* Provided under the BSD-3 clause.
|
||||
*
|
||||
* Description: Global descriptor table
|
||||
* Author: Chloe M.
|
||||
*/
|
||||
|
||||
#ifndef _MACHINE_GDT_H_
|
||||
#define _MACHINE_GDT_H_ 1
|
||||
|
||||
#include <ptdef.h>
|
||||
|
||||
/* Number of GDT entries */
|
||||
#define GDT_ENTRY_COUNT 7
|
||||
|
||||
/* Kernel code/data */
|
||||
#define GDT_KCODE 0x08
|
||||
#define GDT_KDATA 0x10
|
||||
|
||||
/* User code/data */
|
||||
#define GDT_UCODE 0x18
|
||||
#define GDT_UDATA 0x20
|
||||
|
||||
/* Task state segment */
|
||||
#define GDT_TSS 0x28
|
||||
#define GDT_TSS_INDEX 0x05
|
||||
|
||||
/*
|
||||
* Global descriptor table entry
|
||||
*/
|
||||
typedef struct PACKED {
|
||||
USHORT Limit;
|
||||
USHORT BaseLow;
|
||||
UCHAR BaseMid;
|
||||
USHORT Attributes;
|
||||
UCHAR BaseHigh;
|
||||
} GDT_ENTRY;
|
||||
|
||||
#endif /* !_MACHINE_GDT_H_ */
|
||||
Reference in New Issue
Block a user