1 #ifndef _CONFIG_H
2 #define _CONFIG_H
3
4 /* Minix release and version numbers. */
5 #define OS_RELEASE "3"
6 #define OS_VERSION "1.1"
7
8 /* This file sets configuration parameters for the MINIX kernel, FS, and PM.
9 * It is divided up into two main sections. The first section contains
10 * user-settable parameters. In the second section, various internal system
11 * parameters are set based on the user-settable parameters.
12 *
13 * Parts of config.h have been moved to sys_config.h, which can be included
14 * by other include files that wish to get at the configuration data, but
15 * don't want to pollute the users namespace. Some editable values have
16 * gone there.
17 *
18 */
19
20 /* The MACHINE (called _MINIX_MACHINE) setting can be done
21 * in <minix/machine.h>.
22 */
23 #include <minix/sys_config.h>
24
25 #define MACHINE _MINIX_MACHINE
26
27 #define IBM_PC _MACHINE_IBM_PC
28 #define SUN_4 _MACHINE_SUN_4
29 #define SUN_4_60 _MACHINE_SUN_4_60
30 #define ATARI _MACHINE_ATARI
31 #define MACINTOSH _MACHINE_MACINTOSH
32
33 /* Number of slots in the process table for non-kernel processes. The number
34 * of system processes defines how many processes with special privileges
35 * there can be. User processes share the same properties and count for one.
36 *
37 * These can be changed in sys_config.h.
38 */
39 #define NR_PROCS _NR_PROCS
40 #define NR_SYS_PROCS _NR_SYS_PROCS
41
42 #if _MINIX_SMALL
43
44 #define NR_BUFS 100
45 #define NR_BUF_HASH 128
46
47 #else
48
49 /* The buffer cache should be made as large as you can afford. */
50 #if (MACHINE == IBM_PC && _WORD_SIZE == 2)
51 #define NR_BUFS 40 /* # blocks in the buffer cache */
52 #define NR_BUF_HASH 64 /* size of buf hash table; MUST BE POWER OF 2*/
53 #endif
54
55 #if (MACHINE == IBM_PC && _WORD_SIZE == 4)
56 #define NR_BUFS 1200 /* # blocks in the buffer cache */
57 #define NR_BUF_HASH 2048 /* size of buf hash table; MUST BE POWER OF 2*/
58 #endif
59
60 #if (MACHINE == SUN_4_60)
61 #define NR_BUFS 512 /* # blocks in the buffer cache (<=1536) */
62 #define NR_BUF_HASH 512 /* size of buf hash table; MUST BE POWER OF 2*/
63 #endif
64
65 #endif /* _MINIX_SMALL */
66
67 /* Number of controller tasks (/dev/cN device classes). */
68 #define NR_CTRLRS 2
69
70 /* Enable or disable the second level file system cache on the RAM disk. */
71 #define ENABLE_CACHE2 0
72
73 /* Enable or disable swapping processes to disk. */
74 #define ENABLE_SWAP 1
75
76 /* Include or exclude an image of /dev/boot in the boot image.
77 * Please update the makefile in /usr/src/tools/ as well.
78 */
79 #define ENABLE_BOOTDEV 0 /* load image of /dev/boot at boot time */
80
81 /* DMA_SECTORS may be increased to speed up DMA based drivers. */
82 #define DMA_SECTORS 1 /* DMA buffer size (must be >= 1) */
83
84 /* Include or exclude backwards compatibility code. */
85 #define ENABLE_BINCOMPAT 0 /* for binaries using obsolete calls */
86 #define ENABLE_SRCCOMPAT 0 /* for sources using obsolete calls */
87
88 /* Which processes should receive diagnostics from the kernel and system?
89 * Directly sending it to TTY only displays the output. Sending it to the
90 * log driver will cause the diagnostics to be buffered and displayed.
91 * Messages are sent by src/lib/sysutil/kputc.c to these processes, in
92 * the order of this array, which must be terminated by NONE. This is used
93 * by drivers and servers that printf().
94 * The kernel does this for its own kprintf() in kernel/utility.c, also using
95 * this array, but a slightly different mechanism.
96 */
97 #define OUTPUT_PROCS_ARRAY { TTY_PROC_NR, LOG_PROC_NR, NONE }
98
99 /* NR_CONS, NR_RS_LINES, and NR_PTYS determine the number of terminals the
100 * system can handle.
101 */
102 #define NR_CONS 4 /* # system consoles (1 to 8) */
103 #define NR_RS_LINES 4 /* # rs232 terminals (0 to 4) */
104 #define NR_PTYS 32 /* # pseudo terminals (0 to 64) */
105
106 /*===========================================================================*
107 * There are no user-settable parameters after this line *
108 *===========================================================================*/
109 /* Set the CHIP type based on the machine selected. The symbol CHIP is actually
110 * indicative of more than just the CPU. For example, machines for which
111 * CHIP == INTEL are expected to have 8259A interrrupt controllers and the
112 * other properties of IBM PC/XT/AT/386 types machines in general. */
113 #define INTEL _CHIP_INTEL /* CHIP type for PC, XT, AT, 386 and clones */
114 #define M68000 _CHIP_M68000 /* CHIP type for Atari, Amiga, Macintosh */
115 #define SPARC _CHIP_SPARC /* CHIP type for SUN-4 (e.g. SPARCstation) */
116
117 /* Set the FP_FORMAT type based on the machine selected, either hw or sw */
118 #define FP_NONE _FP_NONE /* no floating point support */
119 #define FP_IEEE _FP_IEEE /* conform IEEE floating point standard */
120
121 /* _MINIX_CHIP is defined in sys_config.h. */
122 #define CHIP _MINIX_CHIP
123
124 /* _MINIX_FP_FORMAT is defined in sys_config.h. */
125 #define FP_FORMAT _MINIX_FP_FORMAT
126
127 /* _ASKDEV and _FASTLOAD are defined in sys_config.h. */
128 #define ASKDEV _ASKDEV
129 #define FASTLOAD _FASTLOAD
130
131 #endif /* _CONFIG_H */
Cache object: b5463a63ec1d9b6838662b0dddc7ea10
|