git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Kernel - Slight reworks to timer code
[tpg/acess2.git]
/
Kernel
/
arch
/
x86_64
/
include
/
proc.h
diff --git
a/Kernel/arch/x86_64/include/proc.h
b/Kernel/arch/x86_64/include/proc.h
index
c92ce7e
..
dad8f06
100644
(file)
--- a/
Kernel/arch/x86_64/include/proc.h
+++ b/
Kernel/arch/x86_64/include/proc.h
@@
-14,12
+14,14
@@
typedef struct {
// MMX
// FPU
Uint FS, GS;
// MMX
// FPU
Uint FS, GS;
+
Uint RAX, RCX, RDX, RBX;
Uint RAX, RCX, RDX, RBX;
-
Uint
KernelRSP, RBP, RSI, RDI;
+
Uint
KernelRSP, RBP, RSI, RDI;
Uint R8, R9, R10, R11;
Uint R12, R13, R14, R15;
Uint R8, R9, R10, R11;
Uint R12, R13, R14, R15;
- Uint IntNum, ErrorCode;
- Uint RIP, CS;
+
+ Uint IntNum, ErrorCode;
+ Uint RIP, CS;
Uint RFlags, RSP, SS;
} tRegs;
Uint RFlags, RSP, SS;
} tRegs;
@@
-31,13
+33,26
@@
typedef struct sMemoryState
tPAddr CR3;
} tMemoryState;
tPAddr CR3;
} tMemoryState;
+// 512 bytes, 16 byte aligned
+typedef struct sSSEState
+{
+ char data[512];
+} tSSEState;
+
/**
* \brief Task state for thread handler
*/
typedef struct sTaskState
{
/**
* \brief Task state for thread handler
*/
typedef struct sTaskState
{
- Uint RIP, RSP, RBP;
+ Uint RIP, RSP;
+ Uint64 UserRIP, UserCS;
+ tSSEState *SSE;
+ int bSSEModified;
} tTaskState;
} tTaskState;
+// === CONSTANTS ===
+#define KERNEL_STACK_SIZE 0x8000 // 32 KiB
+//#define KERNEL_STACK_SIZE 0x10000 // 64 KiB
+
#endif
#endif
UCC
git Repository :: git.ucc.asn.au