GitOS
Operating system exercise
Loading...
Searching...
No Matches
tss.h
Go to the documentation of this file.
1#pragma once
3#include <stdint.h>
5struct tss
7 uint32_t link;
8 uint32_t esp0; //Kernel stack pointer
9 uint32_t ss0; //Kernel stack segment
10 uint32_t esp1;
11 uint32_t ss1;
12 uint32_t esp2;
13 uint32_t ss2;
14 uint32_t sr3;
15 uint32_t eip;
16 uint32_t eflags;
17 uint32_t eax;
18 uint32_t ecx;
19 uint32_t edx;
20 uint32_t ebx;
21 uint32_t esp;
22 uint32_t ebp;
23 uint32_t esi;
24 uint32_t edi;
25 uint32_t es;
26 uint32_t cs;
27 uint32_t ss;
28 uint32_t ds;
29 uint32_t fs;
30 uint32_t gs;
31 uint32_t ldtr;
32 uint32_t iopb;
33 uint32_t ssp;
34} __attribute__((packed));
35
36void tss_load(int tss_segment);
37
struct fat_directory __attribute__
Definition tss.h:6
uint32_t es
Definition tss.h:25
uint32_t eip
Definition tss.h:15
uint32_t esp2
Definition tss.h:12
uint32_t fs
Definition tss.h:29
uint32_t edi
Definition tss.h:24
uint32_t ss
Definition tss.h:27
uint32_t link
Definition tss.h:7
uint32_t ldtr
Definition tss.h:31
uint32_t ds
Definition tss.h:28
uint32_t esp
Definition tss.h:21
uint32_t ss0
Definition tss.h:9
uint32_t cs
Definition tss.h:26
uint32_t gs
Definition tss.h:30
uint32_t iopb
Definition tss.h:32
uint32_t esp1
Definition tss.h:10
uint32_t eax
Definition tss.h:17
uint32_t ss1
Definition tss.h:11
uint32_t ebp
Definition tss.h:22
uint32_t esp0
Definition tss.h:8
uint32_t ss2
Definition tss.h:13
uint32_t esi
Definition tss.h:23
uint32_t edx
Definition tss.h:19
uint32_t ebx
Definition tss.h:20
uint32_t eflags
Definition tss.h:16
uint32_t sr3
Definition tss.h:14
uint32_t ssp
Definition tss.h:33
uint32_t ecx
Definition tss.h:18
void tss_load(int tss_segment)