More work on x86_64 port, near compiling now
[tpg/acess2.git] / Kernel / arch / x86_64 / include / proc.h
1 /*
2  * Acess2 x86_64 Port
3  * 
4  * proc.h - Process/Thread management code
5  */
6 #ifndef _PROC_H_
7 #define _PROC_H_
8
9 #include <arch.h>
10
11 // Register Structure
12 // TODO: Rebuild once IDT code is done
13 typedef struct {
14         Uint    rax, rcx, rdx, rbx;
15     Uint        krsp, rbp, rsi, rdi;
16         Uint    r8, r9, r10, r11;
17         Uint    r12, r13, r14, r15;
18     Uint        int_num, err_code;
19     Uint        rip, cs;
20         Uint    rflags, rsp, ss;
21 } tRegs;
22
23 /**
24  * \brief Memory State for thread handler
25  */
26 typedef struct sMemoryState
27 {
28         tPAddr  CR3;
29 }       tMemoryState;
30
31 /**
32  * \brief Task state for thread handler
33  */
34 typedef struct sTaskState
35 {
36         Uint    RIP, RSP, RBP;
37 }       tTaskState;
38
39 #endif
40

UCC git Repository :: git.ucc.asn.au