2021-05-12 22:03:00 +00:00
|
|
|
#include <stdint.h>
|
2021-11-02 20:03:11 +00:00
|
|
|
extern "C"{
|
2021-05-12 22:03:00 +00:00
|
|
|
|
|
|
|
typedef struct {
|
|
|
|
uint16_t lLimit;
|
|
|
|
uint16_t lBase;
|
|
|
|
uint8_t mBase;
|
|
|
|
uint8_t access;
|
|
|
|
uint8_t granularity;
|
|
|
|
uint8_t hBase;
|
|
|
|
} gdtEntry_t;
|
|
|
|
|
2021-11-06 20:56:42 +00:00
|
|
|
struct gdtSegmentPointer {
|
2021-05-12 22:03:00 +00:00
|
|
|
uint16_t limit;
|
|
|
|
uint32_t base;
|
2021-11-06 20:56:42 +00:00
|
|
|
};
|
2021-05-12 22:03:00 +00:00
|
|
|
|
2021-11-06 20:56:42 +00:00
|
|
|
extern gdtSegmentPointer gdtPointer;
|
|
|
|
|
|
|
|
extern void load_gdt();
|
2021-05-12 22:03:00 +00:00
|
|
|
void setupGdt();
|
|
|
|
}
|