source: branches/minix3-book/include/minix/config.h@ 23

Last change on this file since 23 was 4, checked in by Mattia Monga, 14 years ago

Importazione sorgenti libro

File size: 4.3 KB
Line 
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 */
Note: See TracBrowser for help on using the repository browser.