1*40463Sbill /* 2*40463Sbill * Intel 386 process control block 3*40463Sbill */ 4*40463Sbill #include "tss.h" 5*40463Sbill #include "fpu.h" 6*40463Sbill 7*40463Sbill struct pcb { 8*40463Sbill struct i386tss pcbtss; 9*40463Sbill #define pcb_ksp pcbtss.tss_esp0 10*40463Sbill #define pcb_ptd pcbtss.tss_cr3 11*40463Sbill #define pcb_pc pcbtss.tss_eip 12*40463Sbill #define pcb_psl pcbtss.tss_eflags 13*40463Sbill #define pcb_usp pcbtss.tss_esp 14*40463Sbill #define pcb_fp pcbtss.tss_ebp 15*40463Sbill /* 16*40463Sbill * Software pcb (extension) 17*40463Sbill */ 18*40463Sbill struct save87 pcb_savefpu; 19*40463Sbill struct pte *pcb_p0br; 20*40463Sbill struct pte *pcb_p1br; 21*40463Sbill int pcb_p0lr; 22*40463Sbill int pcb_p1lr; 23*40463Sbill int pcb_szpt; /* number of pages of user page table */ 24*40463Sbill int pcb_cmap2; 25*40463Sbill int *pcb_sswap; 26*40463Sbill long pcb_sigc[5]; /* sigcode actually 19 bytes */ 27*40463Sbill }; 28*40463Sbill 29