1 /* param.c 4.16 82/11/15 */ 2 3 #include "../h/param.h" 4 #include "../h/systm.h" 5 #include "../h/socket.h" 6 #include "../h/dir.h" 7 #include "../h/user.h" 8 #include "../h/proc.h" 9 #include "../h/text.h" 10 #include "../h/inode.h" 11 #include "../h/file.h" 12 #include "../h/callout.h" 13 #include "../h/clist.h" 14 #include "../h/cmap.h" 15 #include "../h/mbuf.h" 16 #include "../h/quota.h" 17 #include "../h/kernel.h" 18 /* 19 * System parameter formulae. 20 * 21 * This file is copied into each directory where we compile 22 * the kernel; it should be modified there to suit local taste 23 * if necessary. 24 * 25 * Compiled with -DHZ=xx -DTIMEZONE=x -DDST=x -DMAXUSERS=xx 26 */ 27 28 #define HZ 100 29 int hz = HZ; 30 int tick = 1000000 / HZ; 31 struct timezone tz = { TIMEZONE, DST }; 32 #define NPROC (20 + 8 * MAXUSERS) 33 int nproc = NPROC; 34 int ntext = 24 + MAXUSERS; 35 int ninode = (NPROC + 16 + MAXUSERS) + 32; 36 int nfile = 16 * (NPROC + 16 + MAXUSERS) / 10 + 32; 37 int ncallout = 16 + NPROC; 38 int nclist = 100 + 16 * MAXUSERS; 39 int nport = NPROC / 2; 40 int nmbclusters = NMBCLUSTERS; 41 #ifdef QUOTA 42 int nquota = (MAXUSERS * 9)/7 + 3; 43 int ndquot = (MAXUSERS*NMOUNT)/4 + NPROC; 44 #endif 45 46 /* 47 * These are initialized at bootstrap time 48 * to values dependent on memory size 49 */ 50 int nbuf, nswbuf; 51 52 /* 53 * These have to be allocated somewhere; allocating 54 * them here forces loader errors if this file is omitted. 55 */ 56 struct proc *proc, *procNPROC; 57 struct text *text, *textNTEXT; 58 struct inode *inode, *inodeNINODE; 59 struct file *file, *fileNFILE; 60 struct callout *callout; 61 struct cblock *cfree; 62 struct buf *buf, *swbuf; 63 short *swsize; 64 int *swpf; 65 char *buffers; 66 struct cmap *cmap, *ecmap; 67 #ifdef QUOTA 68 struct quota *quota, *quotaNQUOTA; 69 struct dquot *dquot, *dquotNDQUOT; 70 #endif 71