5a99c9c5d531ccafc5d1ca1e226bfc15fdf59a03
[tpg/acess2.git] / Kernel / arch / x86 / include / proc.h
1 /*
2  * AcessOS Microkernel Version
3  * proc.h
4  */
5 #ifndef _PROC_H
6 #define _PROC_H
7
8 #include <threads.h>
9
10 // === CONSTANTS ===
11 #define GETMSG_IGNORE   ((void*)-1)
12
13 // === TYPES ===
14
15 typedef struct sTSS {
16         Uint32  Link;
17         Uint32  ESP0, SS0;
18         Uint32  ESP1, SS1;
19         Uint32  ESP2, SS2;
20         Uint32  CR3;
21         Uint32  EIP;
22         Uint32  EFLAGS;
23         Uint32  EAX, ECX, EDX, EBX;
24         Uint32  ESP, EBP, ESI, EDI;
25         Uint32  ES, CS, DS, SS, FS, GS;
26         Uint32  LDTR;
27         Uint16  Resvd, IOPB;    // IO Permissions Bitmap
28 } __attribute__((packed)) tTSS;
29
30 // === FUNCTIONS ===
31 extern void     Proc_Start();
32 extern int      Proc_Clone(Uint *Err, Uint Flags);
33
34 #endif

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