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/x86_64 - More bugfixes, I suspect the PMM code is borken
[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
94d2127
..
dad8f06
100644
(file)
--- a/
Kernel/arch/x86_64/include/proc.h
+++ b/
Kernel/arch/x86_64/include/proc.h
@@
-16,12
+16,12
@@
typedef struct {
Uint FS, GS;
Uint RAX, RCX, RDX, RBX;
Uint FS, GS;
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;
@@
-33,20
+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;
// === CONSTANTS ===
} tTaskState;
// === CONSTANTS ===
-#define KERNEL_STACK_SIZE 0x10000 // 64 KiB
-
-// === FUNCTIONS ===
-extern void Proc_Start(void);
-extern int Proc_Clone(Uint *Err, Uint Flags);
+#define KERNEL_STACK_SIZE 0x8000 // 32 KiB
+//#define KERNEL_STACK_SIZE 0x10000 // 64 KiB
#endif
#endif
UCC
git Repository :: git.ucc.asn.au