Main Page
Modules
Data Structures
Files
Directories
File List
Globals
kernel
»
arch
»
amd64
»
include
pm.h File Reference
Include dependency graph for pm.h:
Go to the source code of this file.
Data Structures
struct
descriptor
struct
tss_descriptor
struct
idescriptor
struct
ptr_16_64
struct
ptr_16_32
struct
tss
Defines
#define
IDT_ITEMS
64
#define
GDT_ITEMS
8
#define
NULL_DES
0
#define
KTEXT_DES
1
#define
KDATA_DES
2
#define
UDATA_DES
3
#define
UTEXT_DES
4
#define
KTEXT32_DES
5
#define
TSS_DES
6
#define
gdtselector
(des) ((des)<<3)
#define
idtselector
(des) ((des)<<4)
#define
PL_KERNEL
0
#define
PL_USER
3
#define
AR_PRESENT
(1<<7)
#define
AR_DATA
(2<<3)
#define
AR_CODE
(3<<3)
#define
AR_WRITABLE
(1<<1)
#define
AR_READABLE
(1<<1)
#define
AR_TSS
(0x9)
#define
AR_INTERRUPT
(0xe)
#define
AR_TRAP
(0xf)
#define
DPL_KERNEL
(PL_KERNEL<<5)
#define
DPL_USER
(PL_USER<<5)
#define
TSS_BASIC_SIZE
104
#define
TSS_IOMAP_SIZE
(16*1024+1)
#define
IO_PORTS
(64*1024)
Typedefs
typedef
descriptor
descriptor_t
typedef
tss_descriptor
tss_descriptor_t
typedef
idescriptor
idescriptor_t
typedef
ptr_16_64
ptr_16_64_t
typedef
ptr_16_32
ptr_16_32_t
typedef
tss
tss_t
Functions
void
pm_init
(void)
void
gdt_tss_setbase
(
descriptor_t
*d,
__address
base)
void
gdt_tss_setlimit
(
descriptor_t
*d,
__u32
limit)
void
idt_init
(void)
void
idt_setoffset
(
idescriptor_t
*d,
__address
offset
)
void
tss_initialize
(
tss_t
*t)
Variables
descriptor
packed
tss_descriptor
packed
idescriptor
packed
ptr_16_64
packed
ptr_16_32
packed
tss
packed
tss_t
*
tss_p
descriptor_t
gdt
[]
idescriptor_t
idt
[]
ptr_16_64_t
gdtr
ptr_16_32_t
bootstrap_gdtr
ptr_16_32_t
protected_ap_gdtr
Detailed Description
Definition in file
pm.h
.
Generated on Sun Jun 18 16:27:02 2006 for HelenOS Kernel (amd64) by
1.4.6