boot, configuration, and other system strings pseudo-device driver
The kernel tables driver is a character special pseudo-device
providing access to various strings (such as console messages)
and system tables (such as all processes).
The tables are described in
This manual page only describes the string devices shown in the
fixed size or
The bootstring /dev/string/boot is the name of
the kernel booted and the arguments passed to that kernel
It is built from a combination of user input and
The package string /dev/string/pkg
lists what the
packages linked into the kernel at boot-time.
The configuration string /dev/string/cfg
lists all initialized devices.
It is built by concatenating all the output of
of configured drivers.
The putbuf buffer
that can be viewed with the
contains the most recent messages printed by the kernel.
This buffer is written to
the /dev/string/prf file.
Reading the strings is non-blocking and non-destructive.
Only the bootstring may be written to.
Only the following subset of the tabioctl(S)
commands are supported:
The current size of the string.
The maximum possible size of the string.
Device drivers read the bootstring using the
The following codes may be returned in errno after an
The minor device number is not defined;
an attempt was made to write
to a string starting at a position beyond its maximum size or to
bytes starting at a position beyond the current end of the string.
An attempt was made to open a read-only device for writing;
command not supported by this string was attempted.
The string is corrupted or not present in this configuration
of the system.
An unknown ioctl command was attempted.
A read or write specified an invalid buffer
address or size.
The write would block and
O_NONBLOCK is set for the file descriptor.
The write was interrupted by a signal.
The following error message may be displayed on the console.
for general information about kernel error messages,
including a list of generic device driver errors.
CONFIG: string: Configuration buffer full (MAX_CFGSIZE = n
exceeded) on dev major/minor
No more characters could be written to one of the bootstring, package string, or
configuration string buffers.
It is not possible to shrink the size of a string.
The previous version of the
string device differed in the following respects:
Pseudo-devices were exclusive-open
(only one open of each string was allowed at a time).
An attempt to open a string
that was already open always failed with error [EACCES].
This tab version of string
pseudo-devices does not support exclusive-open;
each string can be open multiple times.
An attempt to open a read-only string for writing
failed with error [EACCES].
This tab version fails with error
A write to a string device could not be interrupted.
A write to a tabstring may be
interrupted failing with error [EINTR].
Partial writes were sometimes previously reported as errors (usually
[EFAULT]) despite successfully adding or altering some
characters in the string.
The tabstring pseudo-device
returns the number of characters added or changed before
the error occurred.
No ioctl commands were available.
defines the ioctl commands listed in the ``Description''
directory containing the string device special files
directory containing the special files described in the
internal tab data structures and configuration definitions