1 /* systm.h 4.1 11/09/80 */ 2 3 /* 4 * Random set of variables 5 * used by more than one 6 * routine. 7 */ 8 char canonb[CANBSIZ]; /* buffer for erase and kill (#@) */ 9 int cpusid; /* cpu SID register */ 10 char version[]; /* system version */ 11 int lbolt; /* time of day in 60th not in time */ 12 time_t time; /* time in sec from 1970 */ 13 time_t bootime; /* time at which booted */ 14 15 int hand; /* current index into coremap used by daemon */ 16 17 /* 18 * Nblkdev is the number of entries 19 * (rows) in the block switch. It is 20 * set in binit/bio.c by making 21 * a pass over the switch. 22 * Used in bounds checking on major 23 * device numbers. 24 */ 25 int nblkdev; 26 27 /* 28 * Number of character switch entries. 29 * Set by cinit/prim.c 30 */ 31 int nchrdev; 32 33 int nswdev; /* number of swap devices */ 34 int mpid; /* generic for unique process id's */ 35 char runin; /* scheduling flag */ 36 char runout; /* scheduling flag */ 37 int runrun; /* scheduling flag */ 38 char kmapwnt; /* kernel map want flag */ 39 char curpri; /* more scheduling */ 40 41 int maxmem; /* actual max memory per process */ 42 int physmem; /* physical memory on this CPU */ 43 44 int nswap; /* size of swap space */ 45 int updlock; /* lock for sync */ 46 daddr_t rablock; /* block to be read ahead */ 47 char msgbuf[MSGBUFS]; /* saved "printf" characters */ 48 int intstack[512]; /* stack for interrupts */ 49 dev_t rootdev; /* device of the root */ 50 dev_t swapdev; /* swapping device */ 51 dev_t argdev; 52 dev_t pipedev; /* pipe device */ 53 54 extern int icode[]; /* user init code */ 55 extern int szicode; /* its size */ 56 57 extern int printsw; /* debug print switch */ 58 extern int coresw; /* switch to force action on core dumps */ 59 60 dev_t getmdev(); 61 daddr_t bmap(); 62 unsigned max(); 63 unsigned min(); 64 int memall(); 65 int uchar(); 66 int vmemall(); 67 swblk_t vtod(); 68 69 /* 70 * Structure of the system-entry table 71 */ 72 extern struct sysent 73 { 74 char sy_narg; /* total number of arguments */ 75 char sy_nrarg; /* number of args in registers */ 76 int (*sy_call)(); /* handler */ 77 } sysent[]; 78 79 char vmmap[]; /* poor name! */ 80 int mcr[3]; /* memory controller registers */ 81 int umbabeg,umbaend; /* where sensitive vm begins/ends */ 82 int noproc; /* no one is running just now */ 83