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.0"
|
---|
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 | * This is a modified version of config.h for compiling a small Minix system
|
---|
19 | * with only the options described in the text, Operating Systems Design and
|
---|
20 | * Implementation, 3rd edition. See the version of config.h in the full
|
---|
21 | * source code directory for information on alternatives omitted here.
|
---|
22 | */
|
---|
23 |
|
---|
24 | /* The MACHINE (called _MINIX_MACHINE) setting can be done
|
---|
25 | * in <minix/machine.h>.
|
---|
26 | */
|
---|
27 | #include <minix/sys_config.h>
|
---|
28 |
|
---|
29 | #define MACHINE _MINIX_MACHINE
|
---|
30 |
|
---|
31 | #define IBM_PC _MACHINE_IBM_PC
|
---|
32 | #define SUN_4 _MACHINE_SUN_4
|
---|
33 | #define SUN_4_60 _MACHINE_SUN_4_60
|
---|
34 | #define ATARI _MACHINE_ATARI
|
---|
35 | #define MACINTOSH _MACHINE_MACINTOSH
|
---|
36 |
|
---|
37 | /* Number of slots in the process table for non-kernel processes. The number
|
---|
38 | * of system processes defines how many processes with special privileges
|
---|
39 | * there can be. User processes share the same properties and count for one.
|
---|
40 | *
|
---|
41 | * These can be changed in sys_config.h.
|
---|
42 | */
|
---|
43 | #define NR_PROCS _NR_PROCS
|
---|
44 | #define NR_SYS_PROCS _NR_SYS_PROCS
|
---|
45 |
|
---|
46 | #define NR_BUFS 128
|
---|
47 | #define NR_BUF_HASH 128
|
---|
48 |
|
---|
49 | /* Number of controller tasks (/dev/cN device classes). */
|
---|
50 | #define NR_CTRLRS 2
|
---|
51 |
|
---|
52 | /* Enable or disable the second level file system cache on the RAM disk. */
|
---|
53 | #define ENABLE_CACHE2 0
|
---|
54 |
|
---|
55 | /* Enable or disable swapping processes to disk. */
|
---|
56 | #define ENABLE_SWAP 0
|
---|
57 |
|
---|
58 | /* Include or exclude an image of /dev/boot in the boot image.
|
---|
59 | * Please update the makefile in /usr/src/tools/ as well.
|
---|
60 | */
|
---|
61 | #define ENABLE_BOOTDEV 0 /* load image of /dev/boot at boot time */
|
---|
62 |
|
---|
63 | /* DMA_SECTORS may be increased to speed up DMA based drivers. */
|
---|
64 | #define DMA_SECTORS 1 /* DMA buffer size (must be >= 1) */
|
---|
65 |
|
---|
66 | /* Include or exclude backwards compatibility code. */
|
---|
67 | #define ENABLE_BINCOMPAT 0 /* for binaries using obsolete calls */
|
---|
68 | #define ENABLE_SRCCOMPAT 0 /* for sources using obsolete calls */
|
---|
69 |
|
---|
70 | /* Which process should receive diagnostics from the kernel and system?
|
---|
71 | * Directly sending it to TTY only displays the output. Sending it to the
|
---|
72 | * log driver will cause the diagnostics to be buffered and displayed.
|
---|
73 | */
|
---|
74 | #define OUTPUT_PROC_NR LOG_PROC_NR /* TTY_PROC_NR or LOG_PROC_NR */
|
---|
75 |
|
---|
76 | /* NR_CONS, NR_RS_LINES, and NR_PTYS determine the number of terminals the
|
---|
77 | * system can handle.
|
---|
78 | */
|
---|
79 | #define NR_CONS 4 /* # system consoles (1 to 8) */
|
---|
80 | #define NR_RS_LINES 0 /* # rs232 terminals (0 to 4) */
|
---|
81 | #define NR_PTYS 0 /* # pseudo terminals (0 to 64) */
|
---|
82 |
|
---|
83 | /*===========================================================================*
|
---|
84 | * There are no user-settable parameters after this line *
|
---|
85 | *===========================================================================*/
|
---|
86 | /* Set the CHIP type based on the machine selected. The symbol CHIP is actually
|
---|
87 | * indicative of more than just the CPU. For example, machines for which
|
---|
88 | * CHIP == INTEL are expected to have 8259A interrrupt controllers and the
|
---|
89 | * other properties of IBM PC/XT/AT/386 types machines in general. */
|
---|
90 | #define INTEL _CHIP_INTEL /* CHIP type for PC, XT, AT, 386 and clones */
|
---|
91 | #define M68000 _CHIP_M68000 /* CHIP type for Atari, Amiga, Macintosh */
|
---|
92 | #define SPARC _CHIP_SPARC /* CHIP type for SUN-4 (e.g. SPARCstation) */
|
---|
93 |
|
---|
94 | /* Set the FP_FORMAT type based on the machine selected, either hw or sw */
|
---|
95 | #define FP_NONE _FP_NONE /* no floating point support */
|
---|
96 | #define FP_IEEE _FP_IEEE /* conform IEEE floating point standard */
|
---|
97 |
|
---|
98 | /* _MINIX_CHIP is defined in sys_config.h. */
|
---|
99 | #define CHIP _MINIX_CHIP
|
---|
100 |
|
---|
101 | /* _MINIX_FP_FORMAT is defined in sys_config.h. */
|
---|
102 | #define FP_FORMAT _MINIX_FP_FORMAT
|
---|
103 |
|
---|
104 | /* _ASKDEV and _FASTLOAD are defined in sys_config.h. */
|
---|
105 | #define ASKDEV _ASKDEV
|
---|
106 | #define FASTLOAD _FASTLOAD
|
---|
107 |
|
---|
108 | #endif /* _CONFIG_H */
|
---|