Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

master(4)

make(1)

mkdev(1M)

CONFIG(1M)

Series 200, 300 Only

NAME

config - configure an HP-UX system

SYNOPSIS

/etc/config [-t] [-m master] [-c file] [-l file] -a
/etc/config [-t] [-m master] [-c file] [-l file] dfile

DESCRIPTION

Config  enables  the  user to  configure the following parts of the operating system:

device switch drivers and I/O cards

root and swap devices

selected system parameters

kernel code that handles messages, semaphores, and shared memory

Config reads a user-provided description of an HP-UX system (dfile) and generates two output files.  The first output file is a C program that defines the configuration tables for the various devices on the system.  The second output file is a makefile script (see make(1)) that will compile the C program produced and relink the newly configured system.

The following options are available:

-t Give a short table of major device numbers for the  character and  block  devices named  in  dfile.   This  can  facilitate  the creation of special files. 

-m master Specify that the file master contains  all the  information  regarding  supported devices. The default file name is /etc/master. 

  This file is supplied with the HP-UX system and should not be modified unless the user fully understands its construction. 

-c file Specify the  name of the configuration table  file  produced by  running the  user-data file dfile through config(1M). The default file name is conf.c. 

-l file Specify the name of the makefile script (see make(1)) that will compile the configuration  program and relink the newly configured system.  The default file name is config.mk. 

−a Produce a script of mkdev(1M) templates.

dfile Specify the name of a file containing device information for the user’s system.  This file is divided into two parts.  The first part (mandatory) contains physical device and driver specifications; the second part (optional) contains system-dependent information.  In this file, any line with an asterisk (*) in column 1 is a comment. 

The -a option and dfile are mutually exclusive and exactly one of these must be specified. 

The first part of dfile allows you to configure:

device switch drivers

I/O cards

pseudo-drivers, such as pty

Each line has the following format:

devname 

where devname is the driver name for the device as it appears in the alias table in /etc/master.  For example, cs80 selects the HP7912 64MB disc drive, 98625 selects the high speed disk interface card, and ethernet selects the link-level access protocol.  The complete list of configurable devices, cards, and pseudo-drivers is given in the EXAMPLE section, below. 

The following devices are not configurable and should not be specified in dfile:

swap cons tty
sy mm iomap
graphics r8042 hil
nimitz ite200

The second part of dfile is optional, and can contain four different types of lines:

1. Root device specification

Each of these lines has the following format:

root devname address

devname The driver name for the device, as it appears in the alias table in /etc/master, such as cs80 for the HP7933 404MB disc drive. 

address The minor device number (in hexadecimal without the preceeding 0x). 

2. Swap device specification

These are used if you want the system to auto-configure the swap device given only the swap size:

swapsize nblocks

where nblocks is the desired swap size in blocks. 

If you want to specify both the swap device location and its size, the specification line takes the following form:

swap devname address swplo [nswap]

devname The driver name for the device as it appears in the alias table in /etc/master (for example, cs80 for the HP7933 404MB disc drive). 

address The minor device number (in hexadecimal without the preceeding 0x). 

swplo The location (in decimal) of the swap area. 

A negative value (typically -1) for swplo specifies that a file system is expected on the device.  At boot-up, the super block will be read to determine the exact size of the file system, and this value will be put in swplo. If the swap device is auto-configured, this is the mechanism used. If the super block is invalid, the entry will be skipped, so that a corrupted super block will not later cause the entire file system to be corrupted by configuring the swap area on top of it.

A positive or zero value for swplo specifies that at least that much area must be reserved.  Zero means to reserve no area at the head of the device.  The case for swplo pointing beyond the end of the device is handled. 

nswap The number of disc blocks (in decimal) in the swap area.  Only the nswap parameter is optional.  Zero is the default for auto-configuration. 

If nswap is zero, the entire remainder of the device is automatically configured in as swap area. 

If nswap is non-zero, its absolute value is treated as an upper bound for the size of the swap area.  Then, if the swap area size has actually been cut back, the sign of nswap determines whether swplo remains as is, resulting in the swap area being adjacent to the reserved area, or whether swplo is bumped by the size of the unused area, resulting in the swap area being adjacent to the tail of the device. 

3. System parameters

These parameters should not be modified unless the user fully understands the ramifications of doing so.  (See the System Administrator’s Manual for details on each parameter.) 

Each line contains two fields.  Field one can have 20 characters maximum and field two 60 characters maximum.  Each line is independent, optional, and written in the following format:

acctresume number or formula
acctsuspend number or formula
argdevnblk number or formula
dmmax number or formula
dmmin number or formula
dmshm number or formula
dmtext number or formula
dos_mem_byte number or formula
dst number or formula
filesizelimit number or formula
fpa number or formula
maxdsiz number or formula
maxssiz number or formula
maxtsiz number or formula
maxuprc number or formula
maxusers number or formula
nbuf number or formula
ncallout number or formula
ndilbuffers number or formula
nfile number or formula
nflocks number or formula
ninode number or formula
nproc number or formula
npty number or formula
ntext number or formula
parity_option number or formula
shmmaxaddr number or formula
timeslice number or formula
timezone number or formula
unlockable_mem number or formula

System V interprocess communication consists of messages (mesg), semaphores (sema) and shared memory (shmem) features. 

If mesg, sema, shmem are specified as 0, the kernel code for these features will not be included.  If they are specified as 1, the kernel code will be included; this is the default.  The features may be specified independently of each other.  If the code is included, the parameters listed below may be modified:

mesg 1
msgmap number or formula
msgmax number or formula
msgmnb number or formula
msgmni number or formula
msgseg number or formula
msgssz number or formula
msgtql number or formula


sema 1
semaem number or formula
semmap number or formula
semmni number or formula
semmns number or formula
semmnu number or formula
semume number or formula
semvmx number or formula


shmem 1
shmall number or formula
smbrk number or formula
shmmax number or formula
shmmin number or formula
shmmni number or formula
shmseg number or formula

EXAMPLE

The dfile below will configure an HP-UX system with all the drivers that are currently supported on the Series 300 Release 5.5.  The tunable parameters given are the system defaults.

* drivers
cs80
amigo
tape
printer
stape
srm
rje
ptymas
ptyslv
ieee802
ethernet
hpib
gpio
ciper
* cards
98624
98625
98626
98628
98642
* reconfigure the swap area to occupy an entire CS/80 drive at
* select code 14 bus address 01
swapcs800E010000
* tunable parameters
acctresume 4
acctsuspend2
argdevnblk0
dmmax512
dmmin16
dmshm512
dmtext512
dos_mem_byte0
dst1
filesizelimit0x1fffffff
fpa1
maxdsiz0x01000000
maxssiz0x00200000
maxtsiz0x01000000
maxuprc25
maxusers8
nbuf0/* configure based on memory */
ncallout(16+NPROC)
ndilbuffers30
nfile(16*(NPROC+16+MAXUSERS)/10+32+(2*NPTY))
nflocks200
ninode((NPROC+16+MAXUSERS)+32+(2*NPTY))
nproc(20+8*MAXUSERS)
npty82
ntext(40+MAXUSERS)
parity_option2
shmmaxaddr0x01000000
timeslice0
timezone420
unlockable_mem102400
* configure in messages, semas, and shared memory
mesg1
msgmap(MSGTQL+2)
msgmax8192
msgmnb16384
msgmni50
msgseg16384
msgssz1
msgtql40
sema1
semaem16384
semmap(SEMMNI+2)
semmni64
semmns128
semmnu30
semume10
semvmx32767
shmem1
shmall2048
shmbrk16
shmmax0x00400000
shmmin1
shmmni30
shmseg10

FILES

/etc/master Default input master device table

conf.c Default output configuration table

config.mk Default output make(1) script

mkdev Default output mkdev(1M) script

SEE ALSO

master(4), make(1), mkdev(1M). 
 

Hewlett-Packard Company  —  May 11, 2021

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026