|
|
1.1 root 1: kkeerrnneell vvaarriiaabblleess -- Technical Information
2:
3:
4: The following describes variables set within the COHERENT kernel. Each
5: variable is described, and its default setting given. The clock rate is
6: defined as the manifest constant HHZZ (hertz), which is set in header file
7: ssyyss/ccoonnsstt.hh. Normally, this value is set to 100, which translates into 100
8: ticks per second, or approximately 10 milliseconds per tick.
9:
10: By using command /ccoonnff/ppaattcchh to reset one or more of these variables, you
11: can change the behavior of the kernel. Note that it is possible to reset
12: these variables in such a way that the kernel is unusable, memory is
13: destroyed, or other undesirable consequences occur. _I_f _y_o_u _d_o _n_o_t _k_n_o_w
14: exactly _w_h_a_t _y_o_u _a_r_e _d_o_i_n_g, _y_o_u _a_r_e _w_e_l_l _a_d_v_i_s_e_d _t_o _l_e_a_v_e _t_h_e_s_e _v_a_r_i_a_b_l_e_s
15: _a_l_o_n_e!
16:
17: AALLLLSSIIZZEE -- Size of kernel memory allocation pool
18:
19: int ALLSIZE;
20: AALLLLSSIIZZEE gives the number of bytes in the kernel's memory allocation
21: pool. This pool is manipulated by the functions kkaalllloocc and kkffrreeee.
22: Under COHERENT 386, AALLLLSSIIZZEE is ``auto sized'' unless patched to a non-
23: zero value.
24:
25: IISSTTSSIIZZEE -- Initial stack size
26:
27: int ISTSIZE = 4096;
28: IISSTTSSIIZZEE specifies the size of the user stack, in bytes. This affects
29: all processes. It can be increased if required. Reducing the size of
30: the user's stack may cause programs to crash due to stack overflow.
31: The kernel stack associated with a process will not change.
32:
33: Note that the stack size of individual COHERENT 286 programs can be
34: changed by using the command ffiixxssttaacckk.
35:
36: KKBBBBOOOOTT -- Toggle MS-DOS-style booting
37:
38: int KBBOOT = 1;
39: KKBBBBOOOOTT flags whether your system can be rebooted MS-DOS fashion, i.e.,
40: by typing <ccttrrll><aalltt><ddeell>. When set to a non-zero value, it enables
41: MS-DOS rebooting; this is the default. You can use ppaattcchh to reset
42: this variable to zero, as follows:
43:
44: /conf/patch /coherent KBBOOT=0
45: Thereafter, typing <ccttrrll><aalltt><ddeell> displays the value of function key
46: 0 rather than rebooting. Function key 0 defaults to the phrase
47: ``reboot'', as a reminder that this key normally reboots your system.
48: However, this never actually prints since the system normally reboots.
49: You can set the value of function key 0 to anything you want, either
50: via the command ffnnkkeeyy or directly in the keyboard tables located in
51: directory /ccoonnff/kkbbdd.
52:
53: NNBBUUFF -- Number of blocks in buffer cache
54: NNBBUUFF specifies the number of blocks in the buffer cache. It is auto-
55: sized unless you patch it to a non-zero value.
56:
57: NNCCLLIISSTT -- Number of clists
58:
59: int NCLIST = 64;
60: NNCCLLIISSTT specifies the number of clists in kernel memory. clists are
61: used by the canonical tty routines to store input/output data.
62:
63: NNIINNOODDEE -- Number of in-memory i-nodes
64:
65: int NINODE = 128;
66: NNIINNOODDEE specifies the maximum number of i-nodes that can be open
67: simultaneously.
68:
69: NNMMSSCC -- Number of characters per message
70:
71: int NMSC = 640;
72: NNMMSSCC gives the maximum number of characters per message.
73:
74: NNMMSSGG -- Number of message buffers
75:
76: int NMSG = 10;
77: NNMMSSGG gives the number of message buffers allocated.
78:
79: NNMMSSQQBB -- Maximum characters per message queue
80:
81: int NMSQB = 2048;
82: NNMMSSQQBB gives the default maximum number of bytes of messages on any one
83: message queue.
84:
85: NNMMSSQQIIDD -- Maximum number of message queues
86:
87: int NMSQID = 9;
88: NNMMSSQQIIDD specifies the maximum number of message queues in the system.
89:
90: NNPPOOLLLL -- Number of simultaneous pending polls
91:
92: int NPOLL = 0;
93: NNPPOOLLLL specifies the maximum number of polls that can be pending
94: simultaneously. If it is zero, dynamic allocation will occur, in
95: groups of 32 pending polls. You increase variable AALLLLSSIIZZEE by eight
96: bytes per pending poll.
97:
98: PPHHYYSS_MMEEMM -- Amount of memory reserved for drivers
99: This variable is an iinntt. Its value is the number of bytes needed in
100: the block of physically contiguous memory reserved for special-purpose
101: device drivers. To change the amount of memory reserved, execute the
102: command:
103:
104: /conf/patch -v /coherent PHYS_MEM=_x_x_x_x
105: /ccoohheerreenntt may be replaced with the name of any bootable kernel file.
106: _x_x_x_x is the number of bytes desired This may be decimal or
107: hexadecimal; the latter form must begin with `0x'.
108:
109: VVIIDDSSLLOOWW -- Slow (no snow) video updates
110:
111: int VIDSLOW = 0;
112: Set VVIIDDSSLLOOWW to non-zero to enable video memory updates only during
113: vertical retrace. This reduces snow on the display with some older
114: video controller cards.
115:
116: ccoonnddeevv -- Console device
117:
118: dev_t condev = makedev(2,0);
119: ccoonnddeevv specifies the console device that the kernel's pprriinnttff or
120: ppuuttcchhaarr routines write to. This normally is the memory-mapped video
121: driver, but it can be mapped to any terminal driver that recognizes
122: data written from the kernel's data segment. The drivers for the
123: ccoonnssoollee and sseerriiaall devices are currently supported as the kernel's
124: console devices.
125:
126: ccpprrooccpp -- Pointer to current process
127:
128: PROC *cprocp;
129: ccpprrooccpp points to the pprroocc structure that is associated with the user
130: process that is currently executing.
131:
132: ddrrvvll -- Device driver list
133:
134: #include <sys/con.h>
135: #include <sys/param.h>
136: DRV drvl[drvn];
137: ddrrvvll is an array that references device drivers. Field dd_ccoonnpp points
138: to a table of driver access routines, or is NULL. Field dd_ttiimmee is
139: non-zero if the driver timed routine is to be invoked once per second.
140:
141: ddrrvvnn -- Number of device drivers
142:
143: int ddrrvvnn;
144: ddrrvvnn gives the maximum number of device drivers available to the
145: kernel.
146:
147: llbboolltt -- Clock ticks since system startup (lightning bolt)
148:
149: time_t lbolt;
150: llbboolltt is the number of clock ticks since system startup. A clock tick
151: normally occurs HHZZ times per second.
152:
153: ppiippeeddeevv -- File system used for pipes
154:
155: dev_t pipedev;
156: ppiippeeddeevv gives the file system to be used for pipes. It is normally
157: the same as rroooottddeevv (the root device).
158:
159: rroonnffllaagg -- Root file system is read-only
160:
161: int ronflag;
162: If rroonnffllaagg is set to non-zero, the root file system has read-only
163: access.
164:
165: rroooottddeevv -- File system used for root device
166:
167: dev_t rootdev;
168: rroooottddeevv specifies the root file system's device.
169:
170: _S_e_e _A_l_s_o
171: ddeevviiccee ddrriivveerrss
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.