Annotation of researchv9/sys/h/param.h, revision 1.1

1.1     ! root        1: #ifdef KERNEL
        !             2: #include "../machine/param.h"
        !             3: #else
        !             4: #include <machine/param.h>
        !             5: #endif
        !             6: 
        !             7: #define        NPTEPG          (NBPG/(sizeof (struct pte)))
        !             8: 
        !             9: /*
        !            10:  * Tunable variables which do not usually vary per system.
        !            11:  *
        !            12:  * The sizes of most system tables are configured
        !            13:  * into each system description.  The file system buffer
        !            14:  * cache size is assigned based on available memory.
        !            15:  * The tables whose sizes don't vary often are given here.
        !            16:  */
        !            17: 
        !            18: #define        NMOUNT  62              /* number of mountable file systems (cmap.h) */
        !            19: #define        MSWAPX  15              /* pseudo mount table index for swapdev */
        !            20: #if MANYPROC
        !            21: #define        MAXUPRC 75
        !            22: #else
        !            23: #define        MAXUPRC 35              /* max processes per user */
        !            24: #endif
        !            25: #define        NOFILE  128             /* max open files per process */
        !            26: #define        NSYSFILE 4              /* stdin, stdout, stderr, /dev/tty */
        !            27: #define        CANBSIZ 256             /* max size of typewriter line */
        !            28: #define        NCARGS  (16*1024)       /* # characters in exec arglist */
        !            29: #define NGROUPS        32              /* number of simultaneous groups */
        !            30: 
        !            31: /*
        !            32:  * priorities
        !            33:  * probably should not be
        !            34:  * altered too much
        !            35:  */
        !            36: 
        !            37: #define        PSWP    0
        !            38: #define        PINOD   10
        !            39: #define        PRIBIO  20
        !            40: #define        PRIUBA  24
        !            41: #define        PZERO   25
        !            42: #define        PPIPE   26
        !            43: #define        PWAIT   30
        !            44: #define        PSLEP   40
        !            45: #define        PUSER   50
        !            46: 
        !            47: #define        NZERO   20
        !            48: 
        !            49: /*
        !            50:  * signals
        !            51:  * dont change
        !            52:  */
        !            53: 
        !            54: #ifndef        NSIG
        !            55: #ifdef KERNEL
        !            56: #include "../h/signal.h"
        !            57: #else
        !            58: #include <signal.h>
        !            59: #endif
        !            60: #endif
        !            61: 
        !            62: /*
        !            63:  * Return values from tsleep().
        !            64:  */
        !            65: #define        TS_OK   0       /* normal wakeup */
        !            66: #define        TS_TIME 1       /* timed-out wakeup */
        !            67: #define        TS_SIG  2       /* asynchronous signal wakeup */
        !            68: 
        !            69: /*
        !            70:  * fundamental constants of the implementation--
        !            71:  * cannot be changed easily.
        !            72:  */
        !            73: 
        !            74: #define        NBBY            8               /* number of bits in a byte */
        !            75: #define        NBPW            sizeof(int)     /* number of bytes in an integer */
        !            76: 
        !            77: #define        NULL    0
        !            78: #define        CMASK   0               /* default mask for file creation */
        !            79: #define        NODEV   (dev_t)(-1)
        !            80: #define        ROOTINO ((ino_t)2)      /* i number of all roots */
        !            81: #define        SUPERB  ((daddr_t)1)    /* block number of the super block */
        !            82: #define        DIRSIZ  14              /* max characters per directory */
        !            83: 
        !            84: /*
        !            85:  * Clustering of hardware pages on machines with ridiculously small
        !            86:  * page sizes is done here.  The paging subsystem deals with units of
        !            87:  * CLSIZE pte's describing NBPG (from vm.h) pages each... BSIZE must
        !            88:  * be CLSIZE*NBPG in the current implementation, that is the paging subsystem
        !            89:  * deals with the same size blocks that the file system uses.
        !            90:  *
        !            91:  * NOTE: SSIZE, SINCR and UPAGES must be multiples of CLSIZE
        !            92:  */
        !            93: #define        CLBYTES         (CLSIZE*NBPG)
        !            94: #define        CLOFSET         (CLSIZE*NBPG-1) /* for clusters, like PGOFSET */
        !            95: 
        !            96: /* give the base virtual address (first of CLSIZE) */
        !            97: #define        clbase(i)       ((i) &~ (CLSIZE-1))
        !            98: 
        !            99: /* round a number of clicks up to a whole cluster */
        !           100: #define        clrnd(i)        (((i) + (CLSIZE-1)) &~ (CLSIZE-1))
        !           101: 
        !           102: #if CLSIZE==1
        !           103: #define BITFS(dev)     ((dev) & 64)
        !           104: #define BUFSIZE                8192
        !           105: #define        BSIZE(dev)      (BUFSIZE)
        !           106: #define        INOPB(dev)      (128)
        !           107: #define        BMASK(dev)      (017777)
        !           108: #define        BSHIFT(dev)     (13)
        !           109: #define        NMASK(dev)      (03777)
        !           110: #define        NSHIFT(dev)     (11)
        !           111: #define        NICINOD 100
        !           112: #define        NICFREE 946
        !           113: #define itod(dev, x)   ((daddr_t)((((unsigned)(x)+2*INOPB(dev)-1)/INOPB(dev))))
        !           114: #define itoo(dev, x)   ((int)(((x)+2*INOPB(dev)-1)%INOPB(dev)))
        !           115: #define fsbtodb(dev, b)        ((b)*16)
        !           116: #define dbtofsb(dev, b)        ((b)/16)
        !           117: #define NINDIR(dev)    (BSIZE(dev)/sizeof(daddr_t))
        !           118: #endif
        !           119: 
        !           120: #ifndef INTRLVE
        !           121: /* macros replacing interleaving functions */
        !           122: #define        dkblock(bp)     ((bp)->b_blkno)
        !           123: #define        dkunit(bp)      (minor((bp)->b_dev & 077) >> 3)
        !           124: /* that means 8 units with at most 8 pieces each */
        !           125: #endif
        !           126: 
        !           127: #define        CBSIZE  28              /* number of chars in a clist block */
        !           128: #define        CROUND  0x1F            /* clist rounding; sizeof(int *) + CBSIZE -1*/
        !           129: 
        !           130: /*
        !           131:  * Macros for fast min/max
        !           132:  */
        !           133: #define        MIN(a,b) (((a)<(b))?(a):(b))
        !           134: #define        MAX(a,b) (((a)>(b))?(a):(b))
        !           135: 
        !           136: /*
        !           137:  * Macros for counting and rounding.
        !           138:  */
        !           139: #define        howmany(x, y)   (((x)+((y)-1))/(y))
        !           140: #define        roundup(x, y)   ((((x)+((y)-1))/(y))*(y))
        !           141: 
        !           142: #ifndef KERNEL
        !           143: #include       <sys/types.h>
        !           144: #else
        !           145: #ifndef LOCORE
        !           146: #include       "../h/types.h"
        !           147: #endif
        !           148: #endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.