Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ master(4) — DG/UX 5.4.2A

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

system(4)

config(1M)

sysdef(1M)



master(4)                        DG/UX 5.4.2                       master(4)


NAME
       master - format of a master file

DESCRIPTION
       Information about configurable kernel components is contained in a
       set of master files that are kept in the master file directory (by
       default, /usr/etc/master.d).  This information is used by the
       config(1M) program to configure a kernel image.  There are four types
       of configurable kernel components:  device drivers, socket protocols,
       STREAMS modules, and tunable parameters.

       Each layered kernel product available on the system has its own
       master file in the master file directory.  For example, the TCP/IP
       product includes the master file /usr/etc/master.d/tcpip.  The base
       DG/UX System itself uses /usr/etc/master.d/dgux as its master file.
       If you create your own device drivers or other configurable kernel
       compenents, you will need to create a new master file to supply
       information about the new components.  Remember that every file found
       in the master file directory is examined when config(1M) is run, so
       backup or duplicate copies of master files should not be stored
       there, since they will cause errors when components are defined in
       more than one place.  If you are not adding a new configurable
       component, you will probably only use the master files as reference
       when setting up your system file (see system(4)).

       A master file can contain entries describing device drivers, socket
       protocols, STREAMS modules, tunable parameters, and aliases.
       Different types of information are grouped into their own sections
       with their own entry format.  Each section is prefaced by a line
       containing a section name, whose first character is the dollar sign
       ($).  A master file may have any number (including zero) of each type
       of section, and they may appear in any order.  Six different types of
       sections are supported:

       $device           Describes drivers for hardware devices and pseudo-
                         devices.

       $protocol         Describes protocols that can be supported by the
                         socket(2) system call.

       $stream           Describes STREAMS modules.

       $keyword          Describes user-tunable system parameters.

       $alias            Defines aliases for the keywords defined in any of
                         the above types of sections.  These aliases can
                         them be used in a system file in place of the
                         master file keywords.

       $localalias      Defines constants for use only within the master
                         file.

       Each entry in a section consists of a single line broken into a
       number of fields separated by blanks and/or tabs.  Comments are



Licensed material--property of copyright holder(s)                         1




master(4)                        DG/UX 5.4.2                       master(4)


       preceded by a pound sign (#) and can begin at any position on a line.
       Blank lines and comments are ignored.

   Device Entries
       Entries in a $device section have three fields:

       Field 1:  Device name as specified in the system file.  The kernel
                 uses this name as a prefix to names for device driver
                 routines in conf.c.

       Field 2:  Restriction flags on this device.  Flags are:

                 o      Only one device of this type is allowed.

                 r      This device is required and will be automatically be
                        configured into any kernels configured against this
                        master file.

                 s      This device is a DG/UX-style STREAMS device.

                 S      This device is a System V-style STREAMS device.

                 N      This STREAMS device uses the new (System V.4) style
                        open/close interface.

                 z      This device may be configured either explicitly or
                        implicitly as part of a nested declaration of
                        another device.  For example, "st(insc(),4)"
                        declares the device "insc()" implicitly.

                 n      No restrictions.

       Field 3:  STREAMS Concurrency Set.  The concurrency set name
                 specifies the STREAMS set to which a given STREAMS module
                 or STREAMS device driver belongs.  STREAMS concurrency only
                 occurs within each set:  modules or drivers belonging to
                 the same set are guaranteed never to run concurrently.  A
                 set may contain drivers, modules, or both.  Two exceptional
                 cases allow for more concurrency: the pseudo-set named
                 module means that each instance of such a STREAMS device or
                 module will have its own private set; and the pseudo-set
                 named stream means that locking is granular to the
                 individual STREAMS themselves.  All other set name values
                 specify a named set.  The concurrency set name has no
                 meaning for non-STREAMS devices, which by convention are
                 assigned to the set named default.

   Protocol Entries
       Entries in a $protocol section have six fields:


       Field 1:  Name to be used in the system file to reference this
                 protocol.




Licensed material--property of copyright holder(s)                         2




master(4)                        DG/UX 5.4.2                       master(4)


       Field 2:  The protocol's protocol number as defined in the
                 /etc/protocols file.

       Field 3:  The protocol's domain number as defined in the
                 <sys/socket.h> header file.

       Field 4:  The protocol's type as defined in the <sys/socket.h> header
                 file.

       Field 5:  The infix name.  The kernel will use this name to generate
                 names for the protocol's control routines.  You may use any
                 name you want and then match this name with the names of
                 your protocol control routines.

       Field 6:  Restriction flags on this protocol.  Flags are:

                 r      This protocol is required and will be automatically
                        be configured into any kernels configured against
                        this master file.

                 d      This protocol will be the default protocol used for
                        socket(2) calls of the listed Domain and Type.

                 u      This protocol is a UNIX domain protocol.

                 n      No restrictions.

   STREAMS Module Entries
       Entries in a $stream section have four fields:


       Field 1:  Name of the stream control module as given in the system
                 file.

       Field 2:  The infix name.  The kernel will use this name to generate
                 names for the stream's control module routines.  You may
                 use any name you want and then match this name with the
                 names of your stream control module routines.

       Field 3:  Restriction flags on this module.  Flags are:

                 N      This STREAMS module uses the new (System V.4) style
                        open/close interface.

                 n      No restrictions.

       Field 4:  STREAMS Concurrency Set.  The concurrency set name
                 specifies the STREAMS set to which a given STREAMS module
                 or STREAMS device driver belongs.  STREAMS concurrency only
                 occurs within each set:  modules or drivers belonging to
                 the same set are guaranteed never to run concurrently.  A
                 set may contain drivers, modules, or both.  Two exceptional
                 cases allow for more concurrency: the pseudo-set named
                 module means that each instance of such a STREAMS device or



Licensed material--property of copyright holder(s)                         3




master(4)                        DG/UX 5.4.2                       master(4)


                 module will have its own private set; and the pseudo-set
                 named stream means that locking is granular to the
                 individual STREAMS themselves.  All other set name values
                 specify a named set.

   Tunable Parameter Entries
       Entries in a $keyword section have four fields, the last of which is
       optional:

       Field 1:  Name of kernel variable to be set.

       Field 2:  The default value that the variable will have, unless it is
                 overridden in the system file.

       Field 3:  The kernel variable's data type.  This must not be a type
                 that requires use of any header file besides
                 /usr/src/uts/aviion/ext/cgenerics.h.

       Field 4:  The implied value for a variable that is listed in the
                 system file without a value.  This is useful for things
                 like function pointers, whose value is represented by a
                 string that would otherwise be inconvenient to type.

   Alias Entries
       Entries in an $alias section have two fields:


       Field 1:  Alias name.

       Field 2:  Name of master file entry being referenced.

   Local Alias Entries
       Entries in a $localalias section have two fields:


       Field 1:  Alias name.

       Field 2:  The value which this alias name will have.  This can be
                 either a numeric or character string value.

SEE ALSO
       system(4).
       config(1M), sysdef(1M)
       Installing the DG/UX System.  Customizing the DG/UX System.  Managing
       the DG/UX System.












Licensed material--property of copyright holder(s)                         4


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