/* pcb.h 4.1 11/9/80 */ /* * VAX process control block * * THE SIZE OF THE pcb, AS INFLUENCED BY THE SIZE OF THE SOFTWARE * EXTENSION, IS KNOWN IN THE #ifdef FASTVAX'ed DEFINITIONS OF THE * OFFSETS OF U_ARG and U_QSAV IN THE FILE user.h. */ struct pcb { int pcb_ksp; /* kernel stack pointer */ int pcb_esp; /* exec stack pointer */ int pcb_ssp; /* supervisor stack pointer */ int pcb_usp; /* user stack pointer */ int pcb_r0; int pcb_r1; int pcb_r2; int pcb_r3; int pcb_r4; int pcb_r5; int pcb_r6; int pcb_r7; int pcb_r8; int pcb_r9; int pcb_r10; int pcb_r11; int pcb_r12; int pcb_r13; int pcb_pc; /* program counter */ int pcb_psl; /* program status longword */ struct pte *pcb_p0br; /* seg 0 base register */ int pcb_p0lr; /* seg 0 length register and astlevel */ struct pte *pcb_p1br; /* seg 1 base register */ int pcb_p1lr; /* seg 1 length register and pme */ /* * Software pcb (extension) */ int pcb_szpt; /* number of pages of user page table */ int pcb_cmap2; int *pcb_sswap; int pcb_sigc[3]; };