PWB1/usr/man/man8/config.8

.th CONFIG VIII 5/31/77
.sh NAME
config \- configure a system
.sh SYNOPSIS
.bd /etc/config
[
.bd \-l\ \ \c
file ] [
.bd \-c\ \ \c
file ] [
.bd \-m\ \ \c
file ]  dfile
.sh DESCRIPTION
.tr ~
.it Config
is a program that takes a description of a PWB/UNIX system and
generates two files.
One file is an assembler program containing the contents of low
core (octal addresses 0-0777),
showing all of the interrupt and trap vectors, as well as
the run-time interface to C programs.
The other file is a C program defining the configuration tables
for the various types of devices on the system.
.s3
The
.bd \-l
option specifies the name of the output file containing the
assembler program;
.it low.s
is the default name.
.s3
The
.bd \-c
option specifies the name of the output file containing the C program;
.it conf.c
is the default name.
.s3
The
.bd \-m
option specifies the name of the file that contains
all the information regarding supported devices;
.it /etc/master
is the default name.
This file is supplied with the PWB/UNIX system and should
.it not
be modified unless the user
.it fully
understands its construction.
.s3
The user must supply
.it dfile;
it must contain device information
for the user's system.
This file is divided into two parts.
The first part contains physical device specifications.
The second part contains system-dependent information.
Any line with an asterisk (*) in column 1 is treated as a comment.
.s3
All configurations are assumed to have the following devices:
.s3
.in +5n
one dl\|11 (for the console)
.br
one kw11-l line clock or kw11-p programmable clock
.in -5n
.s3
with standard interrupt vectors and addresses.
These two devices
.it "must not"
be specified in the
.it dfile.
Note that UNIX needs only one clock, but can handle both types.
.in -5n
.s3
First part of
.it dfile:
.in +5n
.s3
Each line contains four or five fields, delimited by blanks and/or tabs
in the following format:
.s3
.in +5n
devname      vector      address      bus      number
.s3
.in -5n
where
.it devname
is the name of the device (as it appears in the
.it /etc/master
device table),
.it vector
is
the interrupt vector location (octal),
.it address
is the device address (octal),
.it bus
is the bus request level (4 through 7),
and
.it number
is the number (decimal) of devices associated with the
corresponding controller;
.it number
is optional, and if omitted, a default
value which is the maximum value for that controller is used.
.in -5n
.s3
Second part of
.it dfile:
.in +5n
.s3
The second part contains three different types of lines. 
Note that
.it all
specifications of this part
.it "are required,"
although their order is arbitrary.
.in -5n
.s3
1.~
.it "root\|/\|dump device specification"
.in +5n
.s3
Two lines of three fields each:
.s3
.in +5n
\f3root\fP	devname	minor
.br
\f3dump\fP	devname	minor
.in -5n
.s2
where
.it minor
is the minor device number (in octal).
.in -5n
.s3
2.~
.it "swap device specification"
.in +5n
.s3
One line that contains five fields as follows:
.s3
.in +5n
.ta 1i 2i 3i 4i
\f3swap\fP	devname	minor	swplo	nswap
.in -5n
.s3
where
.it swplo
is the lowest disk block (decimal) in the swap area and
.it nswap
is the number of disk blocks (decimal) in the swap area.
.in -5n
.s3
3.~
.it "parameter specification"
.in +5n
.s3
Ten lines of two fields each as follows (\c
.it number
is decimal):
.s3
.lp 25 15
.bn buffers
number
.lp 25 15
.bn inodes
number
.lp 25 15
.bn files
number
.lp 25 15
.bn mounts
number
.lp 25 15
.bn coremap
number
.lp 25 15
.bn swapmap
number
.lp 25 15
.bn calls
number
.lp 25 15
.bn procs
number
.lp 25 15
.bn texts
number
.lp 25 15
.bn clists
number
.i0
.sh EXAMPLE
.s3
Suppose we wish to configure a system with the following devices:
.s3
.in +5n
one rp04 controller with 6 drives
.br
one dh11 with 16 lines (default number)
.br
one dm11 with 16 lines (for the dh11)
.br
one dh11 with 8 lines
.br
one dm11 with 8 lines (for the dh11)
.br
one lp11
.br
one tu16 controller with 2 drives
.br
one dl\|11
.in -5n
.s3
Note that PWB/UNIX only supports dh11 units that require corresponding dm11 units.
It is wise to specify them in dh-dm pairs to facilitate understanding
the configuration.
Note also that, in the preceding case, the dl\|11 that is
specified is
.it "in addition"
to the dl\|11 that was part of the initial
system.
We must also specify the following parameter information:
.s3
.in +5n
root device is an rp04 (drive 0, section 0)
.br
swap device is an rp04 (drive 1, section 4),
.br
~~~~~~~with a swplo of 6000 and an nswap of 2000
.br
dump device is a tu16 (drive 0)
.br
number of buffers is 40
.br
number of processes is 150
.br
number of mounts is 15
.br
number of inodes is 120
.br
number of files is 120
.br
number of calls is 30
.br
number of texts is 35
.br
number of character buffers is 150
.br
number of coremap entries is 50
.br
number of swapmap entries is 50
.in -5n
.s3
The actual system configuration would be specified as follows:
.in +5n
.s3
.ta 5 10 18 23
rp04	254	776700	5	6
.br
dh11	320	760020	5
.br
dm11	300	770500	4
.br
dh11	330	760040	5	8
.br
dm11	304	770510	4	8
.br
lp11	200	775514	5
.br
tu16	224	772440	5	2
.br
dl\|11	350	775610	5
.br
root	rp04	00
.br
swap	rp04	14	6000	2000
.br
dump	tu16	0
.br
*
.br
* Comments can be inserted in this manner
.br
*
.br
buffers	40
.br
procs	150
.br
mounts	15
.br
inodes	120
.br
files	120
.br
calls	30
.br
texts	35
.br
clists	150
.br
coremap	50
.br
swapmap	50
.in -5n
.sh FILES
.lp 25 15
/etc/master	default input master device table
.lp 25 15
low.s	default output low core assembler code (in the current directory)
.lp 25 15
conf.c	default output configuration tables \- C code (in the current directory)
.i0
.sh "SEE ALSO"
master(V)
.br
.it "Setting up PWB/UNIX"
by R. C. Haight, W. D. Roome, and L. A. Wehr
.sh DIAGNOSTICS
Diagnostics are routed to the standard output and are
self-explanatory.