|
|
1.1 root 1: /* param.h 6.1 83/07/29 */
2:
3: /*
4: * Machine dependent constants for TAHOE.
5: */
6: #define NBPG 1024 /* bytes/page */
7: #define PGOFSET (NBPG-1) /* byte offset into page */
8: #define PGSHIFT 10 /* LOG2(NBPG) */
9: #define MAXCKEY 255 /* Maximal allowed code key */
10: #define MAXDKEY 255 /* Maximal allowed data key */
11: #define NOFCKEY (MAXCKEY+1) /* Includes 0 which is reserved */
12: #define NOFDKEY (MAXDKEY+1)
13:
14: #define CLSIZE 1
15: #define CLSIZELOG2 0
16:
17: #define SSIZE 2 /* initial stack size/NBPG */
18: #define SINCR 2 /* increment of stack/NBPG */
19:
20: #define UPAGES 6 /* pages of u-area
21: =sizeof struct user + page of red zone and 2 pages of kernel stack */
22:
23: #define IOBASE 0xfff00000 /* Last megabyte of 4 giga */
24: /* corresponds to Versabus addresses */
25:
26: /*
27: * Some macros for units conversion
28: */
29: /* Core clicks (1024 bytes) to segments and vice versa */
30: #define ctos(x) (x)
31: #define stoc(x) (x)
32:
33: /* Core clicks (1024 bytes) to disk blocks */
34: #define ctod(x) (x)
35: #define dtoc(x) (x)
36: #define dtob(x) ((x)<<PGSHIFT)
37:
38: /* clicks to bytes */
39: #define ctob(x) ((x)<<PGSHIFT)
40:
41: /* bytes to clicks */
42: #define btoc(x) ((((unsigned)(x)+NBPG-1) >> PGSHIFT))
43:
44: /*
45: * Macros to decode processor status word.
46: */
47: #define USERMODE(ps) (((ps) & PSL_CURMOD) == PSL_CURMOD)
48: #define BASEPRI(ps) (((ps) & PSL_IPL) == 0)
49:
50: #define DELAY(n) { register int N = 3*(n); while (--N > 0); }
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.