|
|
coherent
kkeerrnneell vvaarriiaabblleess -- Technical Information
The following describes variables set within the COHERENT kernel. Each
variable is described, and its default setting given. The clock rate is
defined as the manifest constant HHZZ (hertz), which is set in header file
ssyyss/ccoonnsstt.hh. Normally, this value is set to 100, which translates into 100
ticks per second, or approximately 10 milliseconds per tick.
By using command /ccoonnff/ppaattcchh to reset one or more of these variables, you
can change the behavior of the kernel. Note that it is possible to reset
these variables in such a way that the kernel is unusable, memory is
destroyed, or other undesirable consequences occur. _I_f _y_o_u _d_o _n_o_t _k_n_o_w
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
_a_l_o_n_e!
AALLLLSSIIZZEE -- Size of kernel memory allocation pool
int ALLSIZE;
AALLLLSSIIZZEE gives the number of bytes in the kernel's memory allocation
pool. This pool is manipulated by the functions kkaalllloocc and kkffrreeee.
Under COHERENT 386, AALLLLSSIIZZEE is ``auto sized'' unless patched to a non-
zero value.
IISSTTSSIIZZEE -- Initial stack size
int ISTSIZE = 4096;
IISSTTSSIIZZEE specifies the size of the user stack, in bytes. This affects
all processes. It can be increased if required. Reducing the size of
the user's stack may cause programs to crash due to stack overflow.
The kernel stack associated with a process will not change.
Note that the stack size of individual COHERENT 286 programs can be
changed by using the command ffiixxssttaacckk.
KKBBBBOOOOTT -- Toggle MS-DOS-style booting
int KBBOOT = 1;
KKBBBBOOOOTT flags whether your system can be rebooted MS-DOS fashion, i.e.,
by typing <ccttrrll><aalltt><ddeell>. When set to a non-zero value, it enables
MS-DOS rebooting; this is the default. You can use ppaattcchh to reset
this variable to zero, as follows:
/conf/patch /coherent KBBOOT=0
Thereafter, typing <ccttrrll><aalltt><ddeell> displays the value of function key
0 rather than rebooting. Function key 0 defaults to the phrase
``reboot'', as a reminder that this key normally reboots your system.
However, this never actually prints since the system normally reboots.
You can set the value of function key 0 to anything you want, either
via the command ffnnkkeeyy or directly in the keyboard tables located in
directory /ccoonnff/kkbbdd.
NNBBUUFF -- Number of blocks in buffer cache
NNBBUUFF specifies the number of blocks in the buffer cache. It is auto-
sized unless you patch it to a non-zero value.
NNCCLLIISSTT -- Number of clists
int NCLIST = 64;
NNCCLLIISSTT specifies the number of clists in kernel memory. clists are
used by the canonical tty routines to store input/output data.
NNIINNOODDEE -- Number of in-memory i-nodes
int NINODE = 128;
NNIINNOODDEE specifies the maximum number of i-nodes that can be open
simultaneously.
NNMMSSCC -- Number of characters per message
int NMSC = 640;
NNMMSSCC gives the maximum number of characters per message.
NNMMSSGG -- Number of message buffers
int NMSG = 10;
NNMMSSGG gives the number of message buffers allocated.
NNMMSSQQBB -- Maximum characters per message queue
int NMSQB = 2048;
NNMMSSQQBB gives the default maximum number of bytes of messages on any one
message queue.
NNMMSSQQIIDD -- Maximum number of message queues
int NMSQID = 9;
NNMMSSQQIIDD specifies the maximum number of message queues in the system.
NNPPOOLLLL -- Number of simultaneous pending polls
int NPOLL = 0;
NNPPOOLLLL specifies the maximum number of polls that can be pending
simultaneously. If it is zero, dynamic allocation will occur, in
groups of 32 pending polls. You increase variable AALLLLSSIIZZEE by eight
bytes per pending poll.
PPHHYYSS_MMEEMM -- Amount of memory reserved for drivers
This variable is an iinntt. Its value is the number of bytes needed in
the block of physically contiguous memory reserved for special-purpose
device drivers. To change the amount of memory reserved, execute the
command:
/conf/patch -v /coherent PHYS_MEM=_x_x_x_x
/ccoohheerreenntt may be replaced with the name of any bootable kernel file.
_x_x_x_x is the number of bytes desired This may be decimal or
hexadecimal; the latter form must begin with `0x'.
VVIIDDSSLLOOWW -- Slow (no snow) video updates
int VIDSLOW = 0;
Set VVIIDDSSLLOOWW to non-zero to enable video memory updates only during
vertical retrace. This reduces snow on the display with some older
video controller cards.
ccoonnddeevv -- Console device
dev_t condev = makedev(2,0);
ccoonnddeevv specifies the console device that the kernel's pprriinnttff or
ppuuttcchhaarr routines write to. This normally is the memory-mapped video
driver, but it can be mapped to any terminal driver that recognizes
data written from the kernel's data segment. The drivers for the
ccoonnssoollee and sseerriiaall devices are currently supported as the kernel's
console devices.
ccpprrooccpp -- Pointer to current process
PROC *cprocp;
ccpprrooccpp points to the pprroocc structure that is associated with the user
process that is currently executing.
ddrrvvll -- Device driver list
#include <sys/con.h>
#include <sys/param.h>
DRV drvl[drvn];
ddrrvvll is an array that references device drivers. Field dd_ccoonnpp points
to a table of driver access routines, or is NULL. Field dd_ttiimmee is
non-zero if the driver timed routine is to be invoked once per second.
ddrrvvnn -- Number of device drivers
int ddrrvvnn;
ddrrvvnn gives the maximum number of device drivers available to the
kernel.
llbboolltt -- Clock ticks since system startup (lightning bolt)
time_t lbolt;
llbboolltt is the number of clock ticks since system startup. A clock tick
normally occurs HHZZ times per second.
ppiippeeddeevv -- File system used for pipes
dev_t pipedev;
ppiippeeddeevv gives the file system to be used for pipes. It is normally
the same as rroooottddeevv (the root device).
rroonnffllaagg -- Root file system is read-only
int ronflag;
If rroonnffllaagg is set to non-zero, the root file system has read-only
access.
rroooottddeevv -- File system used for root device
dev_t rootdev;
rroooottddeevv specifies the root file system's device.
_S_e_e _A_l_s_o
ddeevviiccee ddrriivveerrss
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.