seb15753

kern/gdt.h

Jun 24th, 2014
265
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.61 KB | None | 0 0
  1. //a.michelizza.free.fr
  2. #define GDTBASE    0x0      /* physical addr. where must be gdt */
  3. #define GDTSIZE    0x08    
  4.  
  5. /* segment descriptor */
  6. struct gdtdesc {
  7.     u16 lim0_15;
  8.     u16 base0_15;
  9.     u8 base16_23;
  10.     u8 acces;
  11.     u8 lim16_19:4;
  12.     u8 other:4;
  13.     u8 base24_31;
  14. } __attribute__ ((packed));
  15.  
  16. /* GDTR */
  17. struct gdtr {
  18.     u16 limite;
  19.     u32 base;
  20. } __attribute__ ((packed));
  21.  
  22. void init_gdt_desc(u32, u32, u8, u8, struct gdtdesc *);
  23. void init_gdt(void);
  24.  
  25. #ifdef __GDT__
  26.     struct gdtdesc kgdt[GDTSIZE];   /* GDT */
  27.     struct gdtr kgdtr;      /* GDTR */
  28. #else
  29.     extern struct gdtdesc kgdt[];
  30.     extern struct gdtr kgdtr;
  31. #endif
Advertisement
Add Comment
Please, Sign In to add comment