1 #ifndef _CONFIG_H 2 #define _CONFIG_H 3 4 /* Minix release and version numbers. */ 5 #define OS_NAME "Minix" 6 #define OS_RELEASE "3.3.0" 7 #define OS_CONFIG "GENERIC" 8 #define OS_VERSION OS_NAME " " OS_RELEASE " (" OS_CONFIG ")" 9 10 /* This file sets configuration parameters for the MINIX kernel, FS, and PM. 11 * It is divided up into two main sections. The first section contains 12 * user-settable parameters. In the second section, various internal system 13 * parameters are set based on the user-settable parameters. 14 * 15 * Parts of config.h have been moved to sys_config.h, which can be included 16 * by other include files that wish to get at the configuration data, but 17 * don't want to pollute the users namespace. Some editable values have 18 * gone there. 19 * 20 */ 21 22 #include <minix/sys_config.h> 23 24 /* Number of slots in the process table for non-kernel processes. The number 25 * of system processes defines how many processes with special privileges 26 * there can be. User processes share the same properties and count for one. 27 * 28 * These can be changed in sys_config.h. 29 */ 30 #define NR_PROCS _NR_PROCS 31 #define NR_SYS_PROCS _NR_SYS_PROCS 32 #define NR_SYS_CHUNKS BITMAP_CHUNKS(NR_SYS_PROCS) 33 34 /* Number of controller tasks (/dev/cN device classes). */ 35 #define NR_CTRLRS 2 36 37 /* DMA_SECTORS may be increased to speed up DMA based drivers. */ 38 #define DMA_SECTORS 1 /* DMA buffer size (must be >= 1) */ 39 40 /* NR_CONS, NR_RS_LINES, and NR_PTYS determine the number of terminals the 41 * system can handle. 42 */ 43 #define NR_CONS 4 /* # system consoles (1 to 8) */ 44 #define NR_RS_LINES 4 /* # rs232 terminals (0 to 3) */ 45 #define NR_PTYS 32 /* # pseudo terminals (0 to 64) */ 46 47 /* This feature enable the counting of system calls in PM and FS */ 48 #define ENABLE_SYSCALL_STATS 0 49 50 /* Max. number of I/O ranges that can be assigned to a process */ 51 #define NR_IO_RANGE 64 52 53 /* Max. number of device memory ranges that can be assigned to a process */ 54 #define NR_MEM_RANGE 20 55 56 /* Max. number of IRQs that can be assigned to a process */ 57 #define NR_IRQ 16 58 59 /* Scheduling priorities. Values must start at zero (highest 60 * priority) and increment. 61 */ 62 #define NR_SCHED_QUEUES 16 /* MUST equal minimum priority + 1 */ 63 #define TASK_Q 0 /* highest, used for kernel tasks */ 64 #define MAX_USER_Q 0 /* highest priority for user processes */ 65 #define USER_Q ((MIN_USER_Q - MAX_USER_Q) / 2 + MAX_USER_Q) /* default 66 (should correspond to nice 0) */ 67 #define MIN_USER_Q (NR_SCHED_QUEUES - 1) /* minimum priority for user 68 processes */ 69 /* default scheduling quanta */ 70 #define USER_QUANTUM 200 71 72 /* defualt user process cpu */ 73 #define USER_DEFAULT_CPU -1 /* use the default cpu or do not change the 74 current one */ 75 76 /*===========================================================================* 77 * There are no user-settable parameters after this line * 78 *===========================================================================*/ 79 /* Set the FP_FORMAT type based on the machine selected, either hw or sw */ 80 #define FP_NONE _FP_NONE /* no floating point support */ 81 #define FP_IEEE _FP_IEEE /* conform IEEE floating point standard */ 82 83 /* _MINIX_FP_FORMAT is defined in sys_config.h. */ 84 #define FP_FORMAT _MINIX_FP_FORMAT 85 86 /* _ASKDEV and _FASTLOAD are defined in sys_config.h. */ 87 #define ASKDEV _ASKDEV 88 #define FASTLOAD _FASTLOAD 89 90 /* Enable or disable system profiling. */ 91 #define SPROFILE 0 /* statistical profiling */ 92 93 /* PCI configuration parameters */ 94 #define NR_PCIBUS 40 95 #define NR_PCIDEV 50 96 97 #endif /* _CONFIG_H */ 98