| Izik Eidus | 37817f2 | 2008-03-24 23:14:53 +0200 | [diff] [blame] | 1 | #ifndef __TSS_SEGMENT_H |
| 2 | #define __TSS_SEGMENT_H | ||||
| 3 | |||||
| 4 | struct tss_segment_32 { | ||||
| 5 | u32 prev_task_link; | ||||
| 6 | u32 esp0; | ||||
| 7 | u32 ss0; | ||||
| 8 | u32 esp1; | ||||
| 9 | u32 ss1; | ||||
| 10 | u32 esp2; | ||||
| 11 | u32 ss2; | ||||
| 12 | u32 cr3; | ||||
| 13 | u32 eip; | ||||
| 14 | u32 eflags; | ||||
| 15 | u32 eax; | ||||
| 16 | u32 ecx; | ||||
| 17 | u32 edx; | ||||
| 18 | u32 ebx; | ||||
| 19 | u32 esp; | ||||
| 20 | u32 ebp; | ||||
| 21 | u32 esi; | ||||
| 22 | u32 edi; | ||||
| 23 | u32 es; | ||||
| 24 | u32 cs; | ||||
| 25 | u32 ss; | ||||
| 26 | u32 ds; | ||||
| 27 | u32 fs; | ||||
| 28 | u32 gs; | ||||
| 29 | u32 ldt_selector; | ||||
| 30 | u16 t; | ||||
| 31 | u16 io_map; | ||||
| 32 | }; | ||||
| 33 | |||||
| 34 | struct tss_segment_16 { | ||||
| 35 | u16 prev_task_link; | ||||
| 36 | u16 sp0; | ||||
| 37 | u16 ss0; | ||||
| 38 | u16 sp1; | ||||
| 39 | u16 ss1; | ||||
| 40 | u16 sp2; | ||||
| 41 | u16 ss2; | ||||
| 42 | u16 ip; | ||||
| 43 | u16 flag; | ||||
| 44 | u16 ax; | ||||
| 45 | u16 cx; | ||||
| 46 | u16 dx; | ||||
| 47 | u16 bx; | ||||
| 48 | u16 sp; | ||||
| 49 | u16 bp; | ||||
| 50 | u16 si; | ||||
| 51 | u16 di; | ||||
| 52 | u16 es; | ||||
| 53 | u16 cs; | ||||
| 54 | u16 ss; | ||||
| 55 | u16 ds; | ||||
| 56 | u16 ldt; | ||||
| 57 | }; | ||||
| 58 | |||||
| 59 | #endif | ||||