Commit | Line | Data |
---|---|---|
80992c50 KB |
1 | /*- |
2 | * Copyright (c) 1982, 1986 The Regents of the University of California. | |
3 | * All rights reserved. | |
4 | * | |
5 | * %sccs.include.proprietary.c% | |
da7c5cc6 | 6 | * |
80992c50 | 7 | * @(#)pcb.h 7.2 (Berkeley) %G% |
da7c5cc6 | 8 | */ |
87c9c9f9 BJ |
9 | |
10 | /* | |
11 | * VAX process control block | |
87c9c9f9 BJ |
12 | */ |
13 | ||
14 | struct pcb | |
15 | { | |
16 | int pcb_ksp; /* kernel stack pointer */ | |
17 | int pcb_esp; /* exec stack pointer */ | |
18 | int pcb_ssp; /* supervisor stack pointer */ | |
19 | int pcb_usp; /* user stack pointer */ | |
20 | int pcb_r0; | |
21 | int pcb_r1; | |
22 | int pcb_r2; | |
23 | int pcb_r3; | |
24 | int pcb_r4; | |
25 | int pcb_r5; | |
26 | int pcb_r6; | |
27 | int pcb_r7; | |
28 | int pcb_r8; | |
29 | int pcb_r9; | |
30 | int pcb_r10; | |
31 | int pcb_r11; | |
32 | int pcb_r12; | |
35d2663a | 33 | #define pcb_ap pcb_r12 |
87c9c9f9 | 34 | int pcb_r13; |
35d2663a | 35 | #define pcb_fp pcb_r13 |
87c9c9f9 BJ |
36 | int pcb_pc; /* program counter */ |
37 | int pcb_psl; /* program status longword */ | |
38 | struct pte *pcb_p0br; /* seg 0 base register */ | |
39 | int pcb_p0lr; /* seg 0 length register and astlevel */ | |
40 | struct pte *pcb_p1br; /* seg 1 base register */ | |
41 | int pcb_p1lr; /* seg 1 length register and pme */ | |
42 | /* | |
43 | * Software pcb (extension) | |
44 | */ | |
45 | int pcb_szpt; /* number of pages of user page table */ | |
46 | int pcb_cmap2; | |
47 | int *pcb_sswap; | |
ddd26d45 | 48 | int pcb_sigc[5]; |
87c9c9f9 | 49 | }; |
546011e3 BJ |
50 | |
51 | #define AST_NONE 0x04000000 /* ast level */ | |
52 | #define AST_USER 0x03000000 /* ast for user mode */ | |
53 | ||
54 | #define ASTLVL_NONE 4 | |
55 | #define ASTLVL_USER 3 | |
56 | ||
57 | #define AST_CLR 0x07000000 | |
ce28659b | 58 | #define PME_CLR 0x80000000 |
546011e3 BJ |
59 | |
60 | #define aston() \ | |
61 | { \ | |
546011e3 BJ |
62 | mtpr(ASTLVL, ASTLVL_USER); \ |
63 | } | |
64 | ||
65 | #define astoff() \ | |
66 | { \ | |
546011e3 BJ |
67 | mtpr(ASTLVL, ASTLVL_NONE); \ |
68 | } |