Project

General

Profile

Statistics
| Revision:

root / lab4 / .minix-src / include / minix / config.h @ 13

History | View | Annotate | Download (3.92 KB)

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