update for new VM
[unix-history] / usr / src / sys / sys / systm.h
CommitLineData
da7c5cc6 1/*
1810611d 2 * Copyright (c) 1982, 1986 Regents of the University of California.
da7c5cc6
KM
3 * All rights reserved. The Berkeley software License Agreement
4 * specifies the terms and conditions for redistribution.
5 *
4fa45901 6 * @(#)systm.h 7.9 (Berkeley) %G%
da7c5cc6 7 */
c72ae039
BJ
8
9/*
10 * Random set of variables
11 * used by more than one
12 * routine.
13 */
2be0c1e4 14extern char version[]; /* system version */
c72ae039
BJ
15
16/*
2bc9489e
KB
17 * Nblkdev is the number of entries (rows) in the block switch.
18 * Used in bounds checking on major device numbers.
c72ae039
BJ
19 */
20int nblkdev;
21
22/*
23 * Number of character switch entries.
c72ae039
BJ
24 */
25int nchrdev;
26
732aea90 27int nswdev; /* number of swap devices */
c72ae039
BJ
28int mpid; /* generic for unique process id's */
29char runin; /* scheduling flag */
30char runout; /* scheduling flag */
31int runrun; /* scheduling flag */
32char kmapwnt; /* kernel map want flag */
33char curpri; /* more scheduling */
34
35int maxmem; /* actual max memory per process */
36int physmem; /* physical memory on this CPU */
37
c72ae039 38int nswap; /* size of swap space */
b231992d 39extern int intstack[]; /* stack for interrupts */
c72ae039 40dev_t rootdev; /* device of the root */
6d0f0ece 41struct vnode *rootvp; /* vnode of root filesystem */
c7cc2235
BJ
42dev_t dumpdev; /* device to take dumps on */
43long dumplo; /* offset into dumpdev */
c72ae039 44dev_t swapdev; /* swapping device */
6d0f0ece 45struct vnode *swapdev_vp; /* vnode equivalent to above */
c7cc2235 46dev_t argdev; /* device for argument lists */
6d0f0ece 47struct vnode *argdev_vp; /* vnode equivalent to above */
c72ae039 48
475d0220 49#if defined(vax) || defined(tahoe) || defined(hp300)
c72ae039
BJ
50extern int icode[]; /* user init code */
51extern int szicode; /* its size */
1607f72d 52#endif
c72ae039 53
c72ae039 54int memall();
c72ae039
BJ
55int vmemall();
56swblk_t vtod();
c72ae039
BJ
57
58/*
59 * Structure of the system-entry table
60 */
61extern struct sysent
62{
f95140e3 63 int sy_narg; /* total number of arguments */
c72ae039
BJ
64 int (*sy_call)(); /* handler */
65} sysent[];
66
c72ae039 67int noproc; /* no one is running just now */
ca737cbe 68char *panicstr;
1a9fdb7b 69int wantin;
bae6e9d2 70int boothowto; /* reboot flags, from console subsystem */
cf2f037d 71#ifdef KADB
61ce5b18 72char *bootesym; /* end of symbol info from boot */
cf2f037d 73#endif
49350a1c
BJ
74int selwait;
75
4fa45901 76extern char *vmmap; /* poor name! */
2be0c1e4 77
49350a1c
BJ
78/* casts to keep lint happy */
79#define insque(q,p) _insque((caddr_t)q,(caddr_t)p)
80#define remque(q) _remque((caddr_t)q)