.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.