Nigel
0f0fc9f252
Moved the PMM away from being object orientated as it is just plain annoying renamed src folder to source Set timeout to 5 seconds in the grub config
28 lines
654 B
C
28 lines
654 B
C
#include <stdint.h>
|
|
|
|
|
|
struct SegmentDescriptor {
|
|
unsigned short limit_low;
|
|
unsigned short base_low;
|
|
unsigned char base_middle;
|
|
unsigned char access;
|
|
unsigned char granularity;
|
|
unsigned char base_high;
|
|
}__attribute__((packed));
|
|
|
|
|
|
struct GlobalDescriptorTableDescriptor{
|
|
unsigned short limit;
|
|
unsigned int base;
|
|
}__attribute__((packed));
|
|
|
|
extern SegmentDescriptor GlobalDescriptorTable[];
|
|
extern GlobalDescriptorTableDescriptor gdtDescriptor;
|
|
|
|
|
|
void add_descriptor(int which , unsigned long base, unsigned long limit, unsigned char access, unsigned char granularity );
|
|
|
|
|
|
extern "C" void LoadGlobalDescriptorTable();
|
|
void initGDT();
|