blob: 534c8d5aef858951f63eff37dbce7744c8cce1b0 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
#ifndef _JOVE_x86_64_HAL_PROCESS_H
#define _JOVE_x86_64_HAL_PROCESS_H 1
#include "proc/process.h"
#include "arch/x86_64/x86_64.h"
#include "lib/rbtree.h"
typedef struct process_control_block
{
struct pcb_expected_header header;
struct process_control_block *sched_next;
jove_obj_t *iopb;
enum pcb_state state;
int killed;
struct pcb_mailbox send, recv;
struct cpu_context context;
void *ksp;
char kstack[];
} pcb_t;
#define PCB_KSTACK_SIZE (0x1000 - sizeof(pcb_t))
#endif
|