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