2021-12-12 14:00:17 +00:00
|
|
|
#ifndef KERNEL_INCLUDED_CONFIG
|
|
|
|
#define KERNEL_INCLUDED_CONFIG 1
|
2017-11-02 14:51:41 +00:00
|
|
|
|
2017-11-05 07:53:26 +00:00
|
|
|
#define MEM_UPPER_BASE ((unsigned long)(1 * 1024 * 1024)) // 1 MB
|
2017-11-05 07:32:32 +00:00
|
|
|
|
2017-11-02 14:51:41 +00:00
|
|
|
#define GDT_NULL_INDEX 0
|
|
|
|
#define GDT_KERNEL_CS_INDEX 1
|
|
|
|
#define GDT_KERNEL_DS_INDEX 2
|
|
|
|
#define GDT_USER_CS_INDEX 3
|
|
|
|
#define GDT_USER_DS_INDEX 4
|
2017-11-05 15:16:56 +00:00
|
|
|
#define GDT_TSS_INDEX 5
|
|
|
|
#define GDT_SIZE 6
|
2017-11-02 14:51:41 +00:00
|
|
|
|
|
|
|
#define GDT_DESCRIPTOR_SIZE 8 // bytes
|
|
|
|
|
|
|
|
#define GDT_SEGMENT_SELECTOR(n) ((n) * GDT_DESCRIPTOR_SIZE)
|
|
|
|
|
|
|
|
#define GDT_NULL_SELECTOR GDT_SEGMENT_SELECTOR(GDT_NULL_INDEX)
|
|
|
|
#define GDT_KERNEL_CS_SELECTOR GDT_SEGMENT_SELECTOR(GDT_KERNEL_CS_INDEX)
|
|
|
|
#define GDT_KERNEL_DS_SELECTOR GDT_SEGMENT_SELECTOR(GDT_KERNEL_DS_INDEX)
|
2017-11-05 17:03:00 +00:00
|
|
|
#define GDT_USER_CS_SELECTOR (GDT_SEGMENT_SELECTOR(GDT_USER_CS_INDEX) | 3)
|
|
|
|
#define GDT_USER_DS_SELECTOR (GDT_SEGMENT_SELECTOR(GDT_USER_DS_INDEX) | 3)
|
2017-11-05 15:16:56 +00:00
|
|
|
#define GDT_TSS_SELECTOR GDT_SEGMENT_SELECTOR(GDT_TSS_INDEX)
|
2017-11-02 14:51:41 +00:00
|
|
|
|
|
|
|
#endif
|