1 /* 2 * Copyright (c) 1982, 1986 Regents of the University of California. 3 * All rights reserved. The Berkeley software License Agreement 4 * specifies the terms and conditions for redistribution. 5 * 6 * @(#)systm.h 7.7 (Berkeley) 05/09/89 7 */ 8 9 /* 10 * Random set of variables 11 * used by more than one 12 * routine. 13 */ 14 extern char version[]; /* system version */ 15 16 /* 17 * Nblkdev is the number of entries (rows) in the block switch. 18 * Used in bounds checking on major device numbers. 19 */ 20 int nblkdev; 21 22 /* 23 * Number of character switch entries. 24 */ 25 int nchrdev; 26 27 int nswdev; /* number of swap devices */ 28 int mpid; /* generic for unique process id's */ 29 char runin; /* scheduling flag */ 30 char runout; /* scheduling flag */ 31 int runrun; /* scheduling flag */ 32 char kmapwnt; /* kernel map want flag */ 33 char curpri; /* more scheduling */ 34 35 int maxmem; /* actual max memory per process */ 36 int physmem; /* physical memory on this CPU */ 37 38 int nswap; /* size of swap space */ 39 extern int intstack[]; /* stack for interrupts */ 40 dev_t rootdev; /* device of the root */ 41 struct vnode *rootvp; /* vnode of root filesystem */ 42 dev_t dumpdev; /* device to take dumps on */ 43 long dumplo; /* offset into dumpdev */ 44 dev_t swapdev; /* swapping device */ 45 struct vnode *swapdev_vp; /* vnode equivalent to above */ 46 dev_t argdev; /* device for argument lists */ 47 struct vnode *argdev_vp; /* vnode equivalent to above */ 48 49 #if defined(vax) || defined(tahoe) 50 extern int icode[]; /* user init code */ 51 extern int szicode; /* its size */ 52 #endif 53 54 int memall(); 55 int vmemall(); 56 swblk_t vtod(); 57 58 /* 59 * Structure of the system-entry table 60 */ 61 extern struct sysent 62 { 63 int sy_narg; /* total number of arguments */ 64 int (*sy_call)(); /* handler */ 65 } sysent[]; 66 67 int noproc; /* no one is running just now */ 68 char *panicstr; 69 int wantin; 70 int boothowto; /* reboot flags, from console subsystem */ 71 #ifdef KADB 72 char *bootesym; /* end of symbol info from boot */ 73 #endif 74 int selwait; 75 76 extern char vmmap[]; /* poor name! */ 77 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) 81