Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ config(1M) — HP-UX 10.20

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

make(1)

master(4)

config(1M)

NAME

config − configure and build an HP-UX system

SYNOPSIS

/usr/sbin/config [-c c_file] [-l m_file] [-m master_file] [-r path] [-s] [-t] system_file

DESCRIPTION

config is used to configure the following parts of the operating system:

• Device drivers

• Swap and dump devices

• Tunable system parameters

config reads a user-provided description of an HP-UX system (system_file) and a master kernel configuration information table and generates two output files:

• A C program source file that defines the configuration tables for various parts of the system. 

• A makefile (see make(1)) to compile the C program produced and relink the newly configured system.

Lastly config executes the make command to compile conf.c and link the kernel (vmunix) with the appropriate kernel libraries.  File vmunix can then be booted.  See the HP-UX System Administrator Manuals for information on how to include or remove a subsystem or file system, and how to boot the system. 

Many header files are needed to compile conf.c.  Also, archive library files containing the kernel objects are needed to link the kernel.  These files are supplied with the system and are contained in the directories found under /usr/conf. 

Command Line Arguments

The config command recognizes the following arguments:

-c c_file Specify the name of the C program source file produced by config.  The default file name is conf.c. 

-l m_file Specify the name of the makefile which is generated by config.  This is the makefile which will be used by config to compile the C program source file and make the new kernel.  The default file name is config.mk. 

-m master Specify the name of the master kernel configuration information file or directory that config should use in creating conf.c and config.mk.  If master is a directory, config reads all files in that directory to create its data structures.  If master is a file, only that file is read for creating data structures for config.  By default, config reads the files in the directory /usr/conf/master.d.  /usr/conf/master.d is supplied as part of the HP-UX operating system and should not be modified by anyone who does not fully understand its structure and purpose. 

-r path Search the directory path for the libraries and header files needed for making the kernel.  By default, config uses the directory /usr/conf . 

-s Stop after creating conf.c and config.mk.  make is not executed and a kernel ( vmunix) is not created. 

-t Give a short table of major device numbers for the  character and block devices, the card drivers, the streams drivers and modules which require link routines, the streams devices and the streams modules named in system_file. These tables may be useful when creating special device files.

system_file The file containing configuration information for the user’s system.  The default system_file is /stand/system and when this file is used as input to config, the resulting output is placed in the directory /stand/build.  If a file other than /stand/system is used for the system_file, config places its output files in the current directory.  The system_file is divided into two parts: the first part (mandatory) contains driver specifications, and the second part (optional) contains system-dependent information. 

Constructing system_file: First Part

The first part of system_file is used to configure:

• Device drivers

• Pseudo-drivers

• Subsystems

Each line has the following format:

devname

where devname is the driver or subsystem name as it appears in the alias tables, driver install tables or the device tables in the files in the directory /usr/conf/master.d.  For example, scsi selects the driver for SCSI disk drives, scsitape selects the driver for SCSI tape drives, and nfs selects the NFS subsystem.  Together, the files in /usr/conf/master.d contain a complete list of configurable devices, cards, subsystems, and pseudo-drivers. 

Constructing system_file: Optional Second Part

The second part of system_file is used to:

• Define the swap device.  Define the dump device(s). 

• Provide a mapping of a driver to a hardware path. 

• Define status and values of selected system parameters. 

Lines are constructed as indicated below for each category. 

1. Swap device specification

No more than one swap specification is allowed.  If a swap specification is not given, the system will be configured to swap on the root device at the end of the filesystem. 

swap < hw_path > < offset > [< blocks >]

Configure the swap device location and its size as specified.  Arguments are interpreted as follows:

hw_path The hardware path representing the device to configure as the swap device or the string default may be used to indicate using the root device. 

offset The swap area location.  Boundaries are located at 1K-byte intervals.  A negative value specifies that a file system is expected on the device.  At boot-up, the super block is read to determine the exact size of the file system, and this value is put in offset. 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 specifies the minimum area that must be reserved. Zero means to reserve no area at the head of the device. A zero value implies that there is no file system on the device.

blocks The number (in decimal) of 1K-byte disk blocks in the swap area.  For this swap device specification, only the blocks parameter is optional.  Zero is the default for auto-configuration. 

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

If blocks 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 blocks determines whether blocks remains as is, resulting in the swap area being adjacent to the reserved area, or whether blocks is bumped by the size of the unused area, resulting in the swap area being adjacent to the tail of the device. 

swap < hw_path > < options >

Configure the swap device at the location specified using the options specified.  The hw_path argument is interpreted as it is in the previous example.  The options argument is interpreted as follows:

options This field is used to specify a section.  It is only offered for backwards compatibility purposes.  For example, s3 would put the swap area on section 3. 

swap lvol

Configure swap on a logical volume. 

swap none

Configure the kernel with no swap device. 

2. Dump device(s) specification

One or more dump specification is allowed.  If a dump specification is not given, then the primary swap area will be used. 

dump < hw_path > [< options > ]

Configure the dump device location and its size as specified.  Arguments are interpreted as follows:

hw_path The hardware path representing the device to configure as a dump device or the string default may be used to indicate using the primary swap area. 

options This field is used to specify a section.  It is only offered for backwards compatibility purposes.  For example, s3 would put the dump area at section 3. 

dump lvol

Configure dump on a logical volume. 

dump none

Configure the kernel with no dump device. 

3. Device driver to hardware path

One or more driver to hardware path specifications is allowed.  If a driver statement is provided the specified software module will be forced into the kernel I/O system at the given hardware path.  This can be used to make the system recognize a device that could not be recognized automatically. 

driver < hw_path > < driver_name >

Bind the driver into the kernel I/O system at the given hardware path.  Arguments are interpreted as follows:

hw_path The hardware path representing the device to bind the software with. 

driver_name The name of the software module to bind into the kernel at the specified hardware path. 

4. System parameters

These parameters should not be modified without a full understanding of the ramifications of doing so (see the HP-UX System Administrator Tasks Manual for information about each parameter). 

Each line contains two fields.  The first field can contain up to 20 characters, maximum; the second field up to 60 characters, maximum.  Each line is independent, optional, and written in the following format:

parameter_name number or formula

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

If mesg, sema, and/or shmem are specified as 0, the kernel code for these features is not included.  If they are specified as 1, the kernel code is included; this is the default.  The features can be specified independent of each other.  If the code is included, the parameters listed below can 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

FILES

/usr/conf/master.d/* default input master kernel configuration tables

/usr/conf/config.sys contains skeleton makefile

/stand/system default system_file

/stand/build/conf.c default output configuration table

/stand/build/config.mk default output make(1) script

/stand/build/vmunix default kernel made by config

SEE ALSO

make(1), master(4). 

Hewlett-Packard Company  —  HP-UX Release 10.20:  July 1996

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