That is faster and more powerful,
but requires finding out what the commands are.
Below a bare minimum, to get started.
-.SS "Login"
+.SS Login
In order to start working, you probably first have to login,
that is, give your username and password.
See also
and a mouse click will start a shell in a window.
See also
.BR xterm (1).
-.SS "The shell"
+.SS The shell
One types commands to the
.IR shell ,
the command interpreter.
.I grep
(from "g/re/p") finds occurrences of a string in one or more files.
Here it finds Maja's telephone number.
-.SS "Pathnames and the current directory"
+.SS Pathnames and the current directory
Files live in a large tree, the file hierarchy.
Each has a
.I "pathname"
.I cd
changes the current directory.
Try "cd /" and "pwd" and "cd" and "pwd".
-.SS "Directories"
+.SS Directories
The command
.I mkdir
makes a new directory.
Large searches on a multi-GB disk will be time-consuming,
and it may be better to use
.BR locate (1).
-.SS "Disks and filesystems"
+.SS Disks and filesystems
The command
.I mount
will attach the file system found on some disk (or floppy, or CDROM or so)
The command
.I df
will tell you how much of your disk is still free.
-.SS "Processes"
+.SS Processes
On a UNIX system many user and system processes run simultaneously.
The one you are talking to runs in the
.IR foreground ,
And "kill \-9" followed by the number
of the process is an immediate kill.
Foreground processes can often be killed by typing Control-C.
-.SS "Getting information"
+.SS Getting information
There are thousands of commands, each with many options.
Traditionally commands are documented on
.IR "man pages" ,
.in
.PP
is used.
-.SS "The format string"
+.SS The format string
The format is interpreted in the usual printf-like way.
Ordinary characters are directly copied, tab, newline
and backslash are escaped using \et, \en and \e\e,
.TP
.B %x
(Not in tcsh.) Exit status of the command.
-.SS "GNU options"
+.SS GNU options
.TP
.BI "\-f " FORMAT ", \-\-format=" FORMAT
Specify output format, possibly overriding the format specified
.TP
.B "\-v, \-\-verbose"
Give very verbose output about all the program knows about.
-.SS "GNU standard options"
+.SS GNU standard options
.TP
.B "\-\-help"
Print a usage message on standard output and exit successfully.
exit(EXIT_SUCCESS);
}
.fi
-.SS "Sample output"
+.SS Sample output
.nf
code error = 0
uptime = 502034s
On error, \-1 is returned, and
.I errno
is set appropriately.
-.SS "Error handling"
+.SS Error handling
Linux
.BR accept ()
(and
.BR capsetp (3)
and
.BR capgetp (3).
-.SS "Current details"
+.SS Current details
Now that you have been warned, some current kernel details.
The structures are defined as follows.
.sp
Memory writes or file mappings/unmappings performed by one of the
processes do not affect the other, as with
.BR fork (2).
-.SS "sys_clone"
+.SS sys_clone
The
.B sys_clone
system call corresponds more closely to
.I optional-arg
should either be absent, or be specified as a single word (i.e., it
should not contain white space); see NOTES below.
-.SS "Limits on size of arguments and environment"
+.SS Limits on size of arguments and environment
Most UNIX implementations impose some limit on the total size
of the command-line argument
.RI ( argv )
or
.I void
is specified if the argument is not required.
-.SS "Duplicating a file descriptor"
+.SS Duplicating a file descriptor
.TP
.BR F_DUPFD " (\fIint\fP)"
Find the lowest numbered available file descriptor
.B O_CLOEXEC
in
.BR open (2).
-.SS "File descriptor flags"
+.SS File descriptor flags
The following commands manipulate the flags associated with
a file descriptor.
Currently, only one such flag is defined:
.BR F_SETFD " (\fIint\fP)"
Set the file descriptor flags to the value specified by
.IR arg .
-.SS "File status flags"
+.SS File status flags
Each open file description has certain associated status flags,
initialized by
.BR open (2)
.\" FIXME . According to POSIX.1-2001, O_SYNC should also be modifiable
.\" via fcntl(2), but currently Linux does not permit this
.\" See http://bugzilla.kernel.org/show_bug.cgi?id=5994
-.SS "Advisory locking"
+.SS Advisory locking
.BR F_GETLK ", " F_SETLK " and " F_SETLKW
are used to acquire, release, and test for the existence of record
locks (also known as file-segment or file-region locks).
and
.BR write (2)
instead.
-.SS "Mandatory locking"
+.SS Mandatory locking
(Non-POSIX.)
The above record locks may be either advisory or mandatory,
and are advisory by default.
The Linux implementation of mandatory locking is unreliable.
See BUGS below.
-.SS "Managing signals"
+.SS Managing signals
.BR F_GETOWN ,
.BR F_SETOWN ,
.BR F_GETOWN_EX ,
field of this argument will hold the descriptor of the leased file
that has been accessed by another process.
(This is useful if the caller holds leases against multiple files).
-.SS "File and directory change notification (dnotify)"
+.SS File and directory change notification (dnotify)
.TP
.BR F_NOTIFY " (\fIint\fP)"
(Linux 2.4 onward)
file system events.
See
.BR inotify (7).
-.SS "Changing the capacity of a pipe"
+.SS Changing the capacity of a pipe
.TP
.BR F_SETPIPE_SZ " (\fIint\fP; since Linux 2.6.35)"
Change the capacity of the pipe referred to by
See
.BR standards (7).
.SH NOTES
-.SS "Calling directly"
+.SS Calling directly
In most cases, it is unnecessary to invoke a system call directly,
but there are times when the Standard C library does not implement
a nice wrapper function for you.
separate section.
.PP
This list is very incomplete.
-.SS "ioctl structure"
+.SS ioctl structure
.\" added two sections - aeb
Ioctl command values are 32-bit constants.
In principle these constants are completely arbitrary, but people have
in conjunction with an I/O scheduler that supports I/O priorities.
As at kernel 2.6.17 the only such scheduler is the Completely Fair Queuing
(CFQ) I/O scheduler.
-.SS "Selecting an I/O scheduler"
+.SS Selecting an I/O scheduler
I/O Schedulers are selected on a per-device basis via the special
file
.IR /sys/block/<device>/queue/scheduler .
.RB "#" " echo cfq > /sys/block/hda/queue/scheduler"
.fi
.RE
-.SS "The Completely Fair Queuing (CFQ) I/O scheduler"
+.SS The Completely Fair Queuing (CFQ) I/O scheduler
Since v3 (aka CFQ Time Sliced) CFQ implements
I/O nice levels similar to those
of CPU scheduling.
Refer to
.I Documentation/block/ioprio.txt
for more information on the CFQ I/O Scheduler and an example program.
-.SS "Required permissions to set I/O priorities"
+.SS Required permissions to set I/O priorities
Permission to change a process's priority is granted or denied based
on two assertions:
.TP
unblocked signal must be delivered to the sending thread before the
.BR kill ()
returns.
-.SS "Linux notes"
+.SS Linux notes
Across different kernel versions, Linux has enforced different rules
for the permissions required for an unprivileged process
to send a signal to another process.
address space, so that pages in the specified virtual address range may
once more to be swapped out if required by the kernel memory manager.
Memory locking and unlocking are performed in units of whole pages.
-.SS "mlock() and munlock()"
+.SS mlock() and munlock()
.BR mlock ()
locks pages in the address range starting at
.I addr
bytes.
After this call, all pages that contain a part of the specified
memory range can be moved to external swap space again by the kernel.
-.SS "mlockall() and munlockall()"
+.SS mlockall() and munlockall()
.BR mlockall ()
locks all pages mapped into the address space of the
calling process.
and
.BR mmap (2)
.BR MAP_LOCKED .
-.SS "Limits and permissions"
+.SS Limits and permissions
In Linux 2.6.8 and earlier,
a process must be privileged
.RB ( CAP_IPC_LOCK )
Consequently, these time services shall expire when the requested relative
interval elapses, independently of the new or old value of the clock.
.RE
-.SS "Old behavior"
+.SS Old behavior
In order to support applications requiring much more precise pauses
(e.g., in order to control some time-critical hardware),
.BR nanosleep ()
.RE
-.SS "Reading results"
+.SS Reading results
Once a
.BR perf_event_open ()
file descriptor has been opened, the values
-.SS "MMAP layout"
+.SS MMAP layout
When using
.BR perf_event_open ()
.RE
-.SS "Signal overflow"
+.SS Signal overflow
Events can be set to deliver a signal when a threshold is crossed.
The signal handler is set up using the
.I wakeup_events
is not set.
-.SS "rdpmc instruction"
+.SS rdpmc instruction
Starting with Linux 3.4 on x86, you can use the
.I rdpmc
instruction to get low-latency reads without having to enter the kernel.
field in the mmap page; documentation on how
to calculate event values can be found in that section.
-.SS "perf_event ioctl calls"
+.SS perf_event ioctl calls
.PP
Various ioctls act on
.BR perf_event_open ()
The argument is a pointer to the desired ftrace filter.
-.SS "Using prctl"
+.SS Using prctl
A process can enable or disable all the event groups that are
attached to it using the
.BR prctl (2)
with the desired
.IR sigmask ,
avoiding the race.)
-.SS "The timeout"
+.SS The timeout
The time structures involved are defined in
.I <sys/time.h>
and look like
.BR S_IRUSR ,
.BR S_IWUSR ,
.BR S_IXUSR .
-.SS "Other systems"
+.SS Other systems
Values that have been (or are) in use on various systems:
.ad l
.TS
.\" .PP
.\" On older systems the number of clock ticks per second is given
.\" by the variable HZ.
-.SS "Historical"
+.SS Historical
SVr1-3 returns
.I long
and the struct members are of type
All new programs should use
.BR statfs (2)
instead.
-.SS "HP-UX notes"
+.SS HP-UX notes
The HP-UX version of the
.I ustat
structure has an additional field,
.RE
.ad b
.SH DESCRIPTION
-.SS "Standard description"
+.SS Standard description
(From POSIX.1)
The
.BR vfork ()
or one of the
.BR exec (3)
family of functions.
-.SS "Linux description"
+.SS Linux description
.BR vfork (),
just like
.BR fork (2),
(i.e., after the child terminates
or calls
.BR execve (2)).
-.SS "Historic description"
+.SS Historic description
Under Linux,
.BR fork (2)
is implemented using copy-on-write pages, so the only penalty incurred by
and which has not yet been waited upon by one of these system
calls is termed
.IR waitable .
-.SS "wait() and waitpid()"
+.SS wait() and waitpid()
The
.BR wait ()
system call suspends execution of the calling process until one of its
(since Linux 2.6.10)
returns true if the child process was resumed by delivery of
.BR SIGCONT .
-.SS "waitid()"
+.SS waitid()
The
.BR waitid ()
system call (available since Linux 2.6.9) provides more precise
Use
.BR free (3)
instead.
-.SS "1-arg cfree"
+.SS 1-arg cfree
In glibc, the function
.BR cfree ()
is a synonym for
.I <stdlib.h>
and sometimes in
.IR <malloc.h> .
-.SS "3-arg cfree"
+.SS 3-arg cfree
Some SCO and Solaris versions have malloc libraries with a 3-argument
.BR cfree (),
apparently as an analog to
routines return \-1 on error (setting
.IR errno )
and 0 on success.
-.SS "Key/data pairs"
+.SS Key/data pairs
Access to all file types is based on key/data pairs.
Both keys and data are represented by the following data structure:
.in +4n
.BR dlclose (),
.BR dlerror ()
implement the interface to the dynamic linking loader.
-.SS "dlerror()"
+.SS dlerror()
The function
.BR dlerror ()
returns a human readable string describing the most recent error
.BR dlerror ().
It returns NULL if no errors have occurred since initialization or since
it was last called.
-.SS "dlopen()"
+.SS dlopen()
The function
.BR dlopen ()
loads the dynamic library file named by the null-terminated
If
.BR dlopen ()
fails for any reason, it returns NULL.
-.SS "dlsym()"
+.SS dlsym()
The function
.BR dlsym ()
takes a "handle" of a dynamic library returned by
after the current library.
This allows one to provide a wrapper
around a function in another shared library.
-.SS "dlclose()"
+.SS dlclose()
The function
.BR dlclose ()
decrements the reference count on the dynamic library handle
The function
.BR dlclose ()
returns 0 on success, and nonzero on error.
-.SS "The obsolete symbols _init() and _fini()"
+.SS The obsolete symbols _init() and _fini()
The linker recognizes special symbols
.B _init
and
.I invalid
exception occurs when there is no well-defined result
for an operation, as for 0/0 or infinity \- infinity or sqrt(\-1).
-.SS "Exception handling"
+.SS Exception handling
Exceptions are represented in two ways: as a single bit
(exception present/absent), and these bits correspond in some
implementation-defined way with bit positions in an integer,
should reflect the current rounding mode as set by
.BR fesetround ()
(but see BUGS).
-.SS "Floating-point environment"
+.SS Floating-point environment
The entire floating-point environment, including
control modes and status flags, can be handled
as one opaque object, of type
It should contain the
.I label
value and a unique identification number.
-.SS "Dummy arguments"
+.SS Dummy arguments
Each of the arguments can have a dummy value.
The dummy classification value
.B MM_NULLMC
.B MM_NULLSEV
is a synonym for
.BR NO_SEV .
-.SS "The classification argument"
+.SS The classification argument
The
.I classification
argument is the sum of values describing 4 types of information.
.TP
.B MM_NRECOV
It is a nonrecoverable error.
-.SS "The severity argument"
+.SS The severity argument
The
.I severity
argument can take one of the following values:
For the definition of the Gamma function, see
.BR tgamma (3).
-.SS "*BSD version"
+.SS *BSD version
The libm in 4.4BSD and some versions of FreeBSD had a
.BR gamma ()
function that computes the Gamma function, as one would expect.
-.SS "glibc version"
+.SS glibc version
Glibc has a
.BR gamma ()
function that is equivalent to
function frees the memory that was allocated
for the dynamically allocated linked list
.IR res .
-.SS "Extensions to getaddrinfo() for Internationalized Domain Names"
+.SS Extensions to getaddrinfo() for Internationalized Domain Names
.PP
Starting with glibc 2.3.4,
.BR getaddrinfo ()
uses
.I const char *
for the first argument.
-.SS "System V/POSIX extension"
+.SS System V/POSIX extension
POSIX requires the
.BR gethostent ()
call, that should return the next entry in the host data base.
This function is not reentrant,
and glibc adds a reentrant version
.BR gethostent_r ().
-.SS "GNU extensions"
+.SS GNU extensions
Glibc2 also has a
.BR gethostbyname2 ()
that works like
If set, then the numeric form of the service address is returned.
(When not set, this will still happen in case the service's name
cannot be determined.)
-.SS "Extensions to getnameinfo() for Internationalized Domain Names"
+.SS Extensions to getnameinfo() for Internationalized Domain Names
.PP
Starting with glibc 2.3.4,
.BR getnameinfo ()
They are widely available.
.\" Also in libc5
.\" SUN doesn't have sgetspent()
-.SS "Reentrant versions"
+.SS Reentrant versions
Analogous to the reentrant functions for the password database, glibc
also has reentrant functions for the shadow password database.
The
The function
.BR logout ()
clears the entry in the utmp file again.
-.SS "GNU details"
+.SS GNU details
More precisely,
.BR login ()
takes the argument
(e.g., if the target string array and one of the supplied input arguments
refer to the same buffer).
See NOTES.
-.SS "Return value"
+.SS Return value
Upon successful return, these functions return the number of characters
printed (excluding the null byte used to end output to strings).
(See also below under NOTES.)
If an output error is encountered, a negative value is returned.
-.SS "Format of the format string"
+.SS Format of the format string
The format string is a character string, beginning and ending
in its initial shift state, if any.
The format string is composed of zero or more directives: ordinary
.in
results in "1234567.89" in the POSIX locale, in "1234567,89" in the
nl_NL locale, and in "1.234.567,89" in the da_DK locale.
-.SS "The flag characters"
+.SS The flag characters
The character % is followed by zero or more of the following flags:
.TP
.B #
For example, since glibc 2.2.3 this will give Arabic-Indic digits
in the Persian ("fa_IR") locale.
.\" outdigits keyword in locale file
-.SS "The field width"
+.SS The field width
An optional decimal digit string (with nonzero first digit) specifying
a minimum field width.
If the converted value has fewer characters
In no case does a nonexistent or small field width cause truncation of a
field; if the result of a conversion is wider than the field width, the
field is expanded to contain the conversion result.
-.SS "The precision"
+.SS The precision
An optional precision, in the form of a period (\(aq.\(aq) followed by an
optional decimal digit string.
Instead of a decimal digit string one may write "*" or "*m$"
and
.B S
conversions.
-.SS "The length modifier"
+.SS The length modifier
Here, "integer conversion" stands for
.BR d ,
.BR i ,
.BR Lf ,
.BR Lg ,
.BR LG ).
-.SS "The conversion specifier"
+.SS The conversion specifier
A character that specifies the type of conversion to be applied.
The conversion specifiers and their meanings are:
.TP
.BI "void regfree(regex_t *" preg );
.fi
.SH DESCRIPTION
-.SS "POSIX regex compiling"
+.SS POSIX regex compiling
.BR regcomp ()
is used to compile a regular expression into a form that is suitable
for subsequent
.I eflags
contains
.BR REG_NOTEOL .
-.SS "POSIX regex matching"
+.SS POSIX regex matching
.BR regexec ()
is used to match a null-terminated string
against the precompiled pattern buffer,
compilation flag
.B REG_NEWLINE
above)
-.SS "Byte offsets"
+.SS Byte offsets
Unless
.B REG_NOSUB
was set for the compilation of the pattern buffer, it is possible to
.I rm_eo
element indicates the end offset of the match,
which is the offset of the first character after the matching text.
-.SS "POSIX error reporting"
+.SS POSIX error reporting
.BR regerror ()
is used to turn the error codes that can be returned by both
.BR regcomp ()
is filled in with the first
.I "errbuf_size \- 1"
characters of the error message and a terminating null byte (\(aq\\0\(aq).
-.SS "POSIX pattern buffer freeing"
+.SS POSIX pattern buffer freeing
Supplying
.BR regfree ()
with a precompiled pattern buffer,
and
.B putchar
exist and will be used if the macros definitions are explicitly removed.
-.SS "List of functions"
+.SS List of functions
.TS
;
lb lb
.BR sysconf ()
argument will be
.BR _SC_FOO .
-.SS "POSIX.1 variables"
+.SS POSIX.1 variables
We give the name of the variable, the name of the
.BR sysconf ()
argument used to inquire about its value,
the value
.B 199009L
indicates the Sept. 1990 revision.
-.SS "POSIX.2 variables"
+.SS POSIX.2 variables
Next, the POSIX.2 values, giving limits for utilities.
.TP
.BR BC_BASE_MAX " - " _SC_BC_BASE_MAX
.SH DESCRIPTION
The termios functions describe a general terminal interface that is
provided to control asynchronous communications ports.
-.SS "The termios structure"
+.SS The termios structure
.LP
Many of the functions described here have a \fItermios_p\fP argument
that is a pointer to a \fItermios\fP structure.
.BR VTIME ,
see the description of
noncanonical mode below.
-.SS "Retrieving and changing terminal settings"
+.SS Retrieving and changing terminal settings
.PP
.BR tcgetattr ()
gets the parameters associated with the object referred by \fIfd\fP and
.I fd
has been transmitted, and all input that has been received but not read
will be discarded before the change is made.
-.SS "Canonical and noncanonical mode"
+.SS Canonical and noncanonical mode
The setting of the
.B ICANON
canon flag in
or when the inter-byte timeout expires.
Because the timer is only started after the initial byte
becomes available, at least one byte will be read.
-.SS "Raw mode"
+.SS Raw mode
.LP
.BR cfmakeraw ()
sets the terminal to something like the
termios_p\->c_cflag &= ~(CSIZE | PARENB);
termios_p\->c_cflag |= CS8;
.fi
-.SS "Line control"
+.SS Line control
.LP
.BR tcsendbreak ()
transmits a continuous stream of zero-valued bits for a specific
.LP
The default on open of a terminal file is that neither its input nor its
output is suspended.
-.SS "Line speed"
+.SS Line speed
The baud rate functions are provided for getting and setting the values
of the input and output baud rates in the \fItermios\fP structure.
The new values do not take effect
.LP
Now "What file?" you ask.
Well, let's first look at some history.
-.SS "Ancient history"
+.SS Ancient history
There used to be a file
.I /etc/ttys
in UNIX V6, that was read by the
System V-like systems have
.I /etc/inittab
instead.
-.SS "Ancient history (2)"
+.SS Ancient history (2)
On the other hand, there is the file
.I /etc/utmp
listing the people currently logged in.
call to find the number of the line in
.I /etc/ttys
(counting from 1).
-.SS "The semantics of ttyslot"
+.SS The semantics of ttyslot
Thus, the function
.BR ttyslot ()
returns the index of the controlling terminal of the calling process
similar to that of the other Linux section 3 man pages), and send it to
.B mtk.manpages@gmail.com
for inclusion in the next man page release.
-.SS "The list"
+.SS The list
.BR authdes_create (3),
.BR authdes_getucred (3),
its argument, but it frees the array
.I we_wordv
and the strings that points to.
-.SS "The string argument"
+.SS The string argument
Since the expansion is the same as the expansion by the shell (see
.BR sh (1))
of the parameters to a command, the string
contains a word that starts with an unquoted comment character #,
then it is unspecified whether that word and all following words
are ignored, or the # is treated as a non-comment character.
-.SS "The expansion"
+.SS The expansion
The expansion done consists of the following stages:
tilde expansion (replacing ~user by user's home directory),
variable substitution (replacing $FOO by the value of the environment
.LP
Field splitting is done using the environment variable $IFS.
If it is not set, the field separators are space, tab and newline.
-.SS "The output array"
+.SS The output array
The array
.I we_wordv
contains the words found, followed by a NULL.
-.SS "The flags argument"
+.SS The flags argument
The
.I flag
argument is a bitwise inclusive OR of the following values:
.BR tput (1),
or
.BR reset (1).
-.SS "Linux console controls"
+.SS Linux console controls
This section describes all the control characters and escape sequences
that invoke special functions (i.e., anything other than writing a
glyph at the current cursor location) on the Linux console.
ESC [ 13 ] Unblank the screen.
ESC [ 14 ; \fIn\fP ] Set the VESA powerdown interval in minutes.
.TE
-.SS "Character sets"
+.SS Character sets
The kernel knows about 4 translations of bytes into console-screen
symbols.
The four tables are: a) Latin1 \-> PC,
The bitmap that corresponds to
s is found in the character ROM, and can be changed using
.BR setfont (8).
-.SS "Mouse tracking"
+.SS Mouse tracking
The mouse tracking facility is intended to return
.BR xterm (1)-compatible
mouse status reports.
Again \fIx\fP and
\fIy\fP are the x and y coordinates of the mouse event.
The upper left corner is (1,1).
-.SS "Comparisons with other terminals"
+.SS Comparisons with other terminals
Many different terminal types are described, like the Linux console,
as being "VT100-compatible".
Here we discuss differences between the
.\"
.\"
.\"
-.SS "Boot-up operation"
+.SS Boot-up operation
When booting up with
.BR initrd ,
the system boots as follows:
.\"
.\"
.\"
-.SS "Changing the normal root file system"
+.SS Changing the normal root file system
By default,
the kernel's settings
(e.g., set in the kernel file with
.TE
The first byte of a data packet can be used to synchronization purposes.
-.SS "Microsoft protocol"
+.SS Microsoft protocol
The \fBMicrosoft\fP protocol uses 1 start bit, 7 data bits, no parity
and one stop bit at the speed of 1200 bits/sec.
Data is sent to RxD in 3-byte packets.
2 0 dx5 dx4 dx3 dx2 dx1 dx0
3 0 dy5 dy4 dy3 dy2 dy1 dy0
.TE
-.SS "3-button Microsoft protocol"
+.SS 3-button Microsoft protocol
Original Microsoft mice only have two buttons.
However, there are some
three button mice which also use the Microsoft protocol.
movement and no buttons pressed.
(Thus, unlike for the other two buttons, the status of the middle
button is not reported in each packet.)
-.SS "Logitech protocol"
+.SS Logitech protocol
Logitech serial 3-button mice use a different extension of the
Microsoft protocol: when the middle button is up, the above 3-byte
packet is sent.
bit set).
In particular, a press of the middle button is reported
as 0,0,0,0x20 when no other buttons are down.
-.SS "Mousesystems protocol"
+.SS Mousesystems protocol
The \fBMousesystems\fP protocol uses 1 start bit, 8 data bits, no parity
and two stop bits at the speed of 1200 bits/sec.
Data is sent to RxD in
Bytes 4 and 5 describe the change that occurred since bytes 2 and 3
were transmitted.
-.SS "Sun protocol"
+.SS Sun protocol
The \fBSun\fP protocol is the 3-byte version of the above 5-byte
Mousesystems protocol: the last two bytes are not sent.
-.SS "MM protocol"
+.SS MM protocol
The \fBMM\fP protocol uses 1 start bit, 8 data bits, odd parity and one
stop bit at the speed of 1200 bits/sec.
Data is sent to RxD in 3-byte
[ \-r $poolfile ] && bytes=\`cat $poolfile\` || bytes=512
dd if=/dev/urandom of=$random_seed count=1 bs=$bytes
.fi
-.SS "/proc Interface"
+.SS /proc Interface
The files in the directory
.I /proc/sys/kernel/random
(present since 2.3.16) provide an additional interface to the
Starting from kernel 2.6.2, the driver exports in the sysfs directory
.I /sys/class/scsi_tape
the attached devices and some parameters assigned to the devices.
-.SS "Data transfer"
+.SS Data transfer
The driver supports operation in both fixed-block mode and
variable-block mode (if supported by the drive).
In fixed-block mode the drive
driver.
The definitions below are from
.IR /usr/include/linux/mtio.h :
-.SS "MTIOCTOP \(em perform a tape operation"
+.SS MTIOCTOP \(em perform a tape operation
.PP
This request takes an argument of type
.IR "(struct mtop *)" .
the cleaning request.
If the pattern is nonzero, the pattern must match
the masked sense data byte.
-.SS "MTIOCGET \(em get status"
+.SS MTIOCGET \(em get status
.PP
This request takes an argument of type
.IR "(struct mtget *)" .
.BR MTBSS ,
or
.BR MTSEEK ).
-.SS "MTIOCPOS \(em get tape position"
+.SS MTIOCPOS \(em get tape position
.PP
This request takes an argument of type
.I "(struct mtpos *)"
Use the POSIX interface described in
.BR termios (3)
whenever possible.
-.SS "Get and set terminal attributes"
+.SS Get and set terminal attributes
.TP
.BI "TCGETS struct termios *" argp
Equivalent to
.BI "TCSETAW const struct termio *" argp
.TP
.BI "TCSETAF const struct termio *" argp
-.SS "Locking the termios structure"
+.SS Locking the termios structure
The
.I termios
structure of a terminal can be locked.
Only root (more precisely: a process with the
.BR CAP_SYS_ADMIN
capability) can do this.
-.SS "Get and set window size"
+.SS Get and set window size
Window sizes are kept in the kernel, but not used by the kernel
(except in the case of virtual consoles, where the kernel will
update the window size when the size of the virtual console changes,
.B SIGWINCH
signal is sent to the
foreground process group.
-.SS "Sending a break"
+.SS Sending a break
.TP
.BI "TCSBRK int " arg
Equivalent to
.TP
.B "TIOCCBRK void"
Turn break off, that is, stop sending zero bits.
-.SS "Software flow control"
+.SS Software flow control
.TP
.BI "TCXONC int " arg
Equivalent to
.BR TCOON ,
.BR TCIOFF ,
.BR TCION .
-.SS "Buffer count and flushing"
+.SS Buffer count and flushing
.TP
.BI "FIONREAD int *" argp
Get the number of bytes in the input buffer.
.BR TCIFLUSH ,
.BR TCOFLUSH ,
.BR TCIOFLUSH .
-.SS "Faking input"
+.SS Faking input
.TP
.BI "TIOCSTI const char *" argp
Insert the given byte in the input queue.
-.SS "Redirecting console output"
+.SS Redirecting console output
.TP
.B "TIOCCONS void"
Redirect output that would have gone to
.I /dev/console
or
.IR /dev/tty0 .
-.SS "Controlling terminal"
+.SS Controlling terminal
.TP
.BI "TIOCSCTTY int " arg
Make the given terminal the controlling terminal of the calling process.
.B SIGCONT
to the foreground process group
and all processes in the current session lose their controlling terminal.
-.SS "Process group and session ID"
+.SS Process group and session ID
.TP
.BI "TIOCGPGRP pid_t *" argp
When successful, equivalent to
in case the terminal is not a master pseudoterminal
and not our controlling terminal.
Strange.
-.SS "Exclusive mode"
+.SS Exclusive mode
.TP
.B "TIOCEXCL void"
Put the terminal into exclusive mode.
.TP
.B "TIOCNXCL void"
Disable exclusive mode.
-.SS "Line discipline"
+.SS Line discipline
.TP
.BI "TIOCGETD int *" argp
Get the line discipline of the terminal.
.TP
.BI "TIOCSETD const int *" argp
Set the line discipline of the terminal.
-.SS "Pseudoterminal ioctls"
+.SS Pseudoterminal ioctls
.TP
.BI "TIOCPKT const int *" argp
Enable (when
.BR TIOCUCNTL ,
.B TIOCREMOTE
have not been implemented under Linux.
-.SS "Modem control"
+.SS Modem control
.TP
.BI "TIOCMGET int *" argp
get the status of modem bits.
TIOCM_RI see TIOCM_RNG
TIOCM_DSR DSR (data set ready)
.fi
-.SS "Marking a line as local"
+.SS Marking a line as local
.TP
.BI "TIOCGSOFTCAR int *" argp
("Get software carrier flag")
is set, the line behaves as if DCD is always asserted.
The software carrier flag is usually turned on for local devices,
and is off for lines with modems.
-.SS "Linux-specific"
+.SS Linux-specific
For the
.B TIOCLINUX
ioctl, see
.BR console_ioctl (4).
-.SS "Kernel debugging"
+.SS Kernel debugging
.B "#include <linux/tty.h>"
.TP
.BI "TIOCTTYGSTRUCT struct tty_struct *" argp
Set the list of name to be used for each wavelan cards device (name
used by
.BR ifconfig (8)).
-.SS "Wireless extensions"
+.SS Wireless extensions
Use
.BR iwconfig (8)
to manipulate wireless extensions.
and
.I misc discarded packet
counters are not implemented.
-.SS "Private ioctl"
+.SS Private ioctl
You may use
.BR iwpriv (8)
to manipulate private ioctls.
intervals.
This distribution might be used to calculate the mean value
and standard deviation of the signal level.
-.SS "Specific notes"
+.SS Specific notes
This driver will fail to detect some
.B non-NCR/ATT&T/Lucent
Wavelan cards.
.PP
The last line in a charmap-definition file must contain
.B END CHARMAP.
-.SS "Symbolic names"
+.SS Symbolic names
A
.B symbolic name
for a character contains only characters of the
represents the symbolic name
.B "\\\\>"
enclosed in angle brackets.
-.SS "Character encoding"
+.SS Character encoding
The
encoding may be in each of the following three forms:
.TP
.B emacs
backup files.
This form should be considered obsolete.
-.SS "ISO 6429 (ANSI) color sequences"
+.SS ISO 6429 (ANSI) color sequences
Most color-capable ASCII terminals today use ISO 6429 (ANSI) color sequences,
and many common terminals without color capability, including
.B xterm
.B FILE
codes to the numerical codes for your normal foreground and background
colors.
-.SS "Other terminal types (advanced configuration)"
+.SS Other terminal types (advanced configuration)
If you have a color-capable (or otherwise highlighting) terminal (or
printer!) which uses a different set of codes, you can still generate
a suitable setup.
A different
.B ENDCODE
can, however, be specified, which would have the same effect.
-.SS "Escape sequences"
+.SS Escape sequences
To specify control- or blank characters in the color sequences or
filename extensions, either C-style \e-escaped notation or
.BR stty \-style
.SH NOTES
Modifications to this file normally take effect immediately,
except in cases where the file is cached by applications.
-.SS "Historical notes"
+.SS Historical notes
RFC\ 952 gave the original format for the host table, though it has
since changed.
Numeric: :co#80:\e
String: :sr=\eE[H:\e
.fi
-.SS "Boolean capabilities"
+.SS Boolean capabilities
.nf
5i Printer will not echo on screen
am Automatic margins which means automatic line wrap
xs Text typed over standout text will be displayed in standout
xt Teleray glitch, destructive tabs and odd standout mode
.fi
-.SS "Numeric capabilities"
+.SS Numeric capabilities
.nf
co Number of columns
dB Delay in milliseconds for backspace on hardcopy terminals
vt virtual terminal number
ws Width of status line if different from screen width
.fi
-.SS "String capabilities"
+.SS String capabilities
.nf
!1 shifted save key
!2 shifted suspend key
.SH DESCRIPTION
The Armenian Standard Code for Information Interchange,
8-bit coded character set.
-.SS "ArmSCII-8 characters"
+.SS ArmSCII-8 characters
The following table displays the characters in ArmSCII-8, which
are printable and unlisted in the
.BR ascii (7)
(iii) kernel startup, (iv) init and inittab,
(v) boot scripts.
We will describe each of these in more detail below.
-.SS "Hardware-boot"
+.SS Hardware-boot
After power-on or hard reset, control is given
to a program stored on read-only memory (normally
PROM).
Those who want
to investigate this subject may want to research:
DHCP, TFTP, PXE, Etherboot.
-.SS "OS loader"
+.SS OS loader
In PC, the OS loader is located in the first sector
of the boot device \- this is the \fBMBR\fR
(Master Boot Record).
kernel (maybe a backup in case the last compiled one
isn't functioning) and to pass optional parameters
to the kernel.
-.SS "Kernel startup"
+.SS Kernel startup
When the kernel is loaded, it initializes the devices (via
their drivers), starts the swapper (it is a "kernel process",
called kswapd in modern Linux kernels), and mounts the root
program
.IR /sbin/init ,
passing any parameters that weren't handled by the kernel already.
-.SS "init and inittab"
+.SS init and inittab
When init starts it reads
.I /etc/inittab
for further instructions.
However, since it is not convenient to manage individual services
by editing this file, inittab only bootstraps a set of scripts
that actually start/stop the individual services.
-.SS "Boot scripts"
+.SS Boot scripts
.TP
Note:
The following description applies to System V release 4-based systems, which
start, "status" do display the service status).
Running the script
without parameters displays the possible arguments.
-.SS "Sequencing directories"
+.SS Sequencing directories
To make specific scripts start/stop at specific run-levels and in
specific order, there are \fIsequencing directories\fR.
These
However, on many versions of Linux, there are tools to help with this task
(e.g:
.BR chkconfig (8)).
-.SS "Boot configuration"
+.SS Boot configuration
Usually the daemons started may optionally receive command-line options
and parameters.
To allow system administrators to change these
Booting DOS with the supplied driver, and
then loading Linux from the DOS prompt with loadlin avoids the reset
of the card that happens if one rebooted instead.
-.SS "The argument list"
+.SS The argument list
The kernel command line is parsed into a list of strings
(boot arguments) separated by spaces.
Most of the boot args take the form of:
daemons.
Check the manual page for the version of init installed on
your system to see what arguments it accepts.
-.SS "General non-device specific boot arguments"
+.SS General non-device specific boot arguments
.TP
.B "'init=...'"
This sets the initial command to be executed by the kernel.
A command-line option of 'nosmp' or 'maxcpus=0' will disable SMP
activation entirely; an option 'maxcpus=N' limits the maximum number
of CPUs activated in SMP mode to N.
-.SS "Boot arguments for use by kernel developers"
+.SS Boot arguments for use by kernel developers
.TP
.B "'debug'"
Kernel messages are handed off to the kernel log daemon klogd so that they
buff_initial_age, bufferout_weight, buffermem_grace that control
kernel buffer memory management.
For kernel tuners only.
-.SS "Boot arguments for ramdisk use"
+.SS Boot arguments for ramdisk use
(Only if the kernel was compiled with
.BR CONFIG_BLK_DEV_RAM .)
In general it is a bad idea to use a ramdisk under Linux\(emthe
(This device can be used only once: the data is freed as soon as
the last process that used it has closed
.IR /dev/initrd .)
-.SS "Boot arguments for SCSI devices"
+.SS Boot arguments for SCSI devices
General notation for this section:
.I iobase
clock:x, next.
For details, see
.IR /usr/src/linux/drivers/scsi/wd33c93.c .
-.SS "Hard disks"
+.SS Hard disks
.TP
.B "IDE Disk/CD-ROM Driver Parameters"
The IDE driver accepts a number of parameters, which range from disk
.B "Syquest's EZ* removable disks"
.IP
.BI ez= iobase[,irq[,rep[,nybble]]]
-.SS "IBM MCA bus devices"
+.SS IBM MCA bus devices
See also
.IR /usr/src/linux/Documentation/mca.txt .
.TP
\&'SoundBlaster', 'LaserMate', or 'SPEA'.
The I/O base is that of the
CD-ROM interface, and not that of the sound portion of the card.
-.SS "Ethernet devices"
+.SS Ethernet devices
Different drivers make use of different parameters, but they all at
least share having an IRQ, an I/O port base value, and a name.
In its most generic form, it looks something like this:
of the param_n values where used.
Interested readers should refer to
the section in that document on their particular card.
-.SS "The floppy disk driver"
+.SS The floppy disk driver
There are many floppy driver options, and they are all listed in
.I Documentation/floppy.txt
(or
be an interaction between video and floppy.
The unexpected interrupts
only affect performance, and can safely be ignored.)
-.SS "The sound driver"
+.SS The sound driver
The sound driver can also accept boot args to override the compiled in
values.
This is not recommended, as it is rather complex.
in your own personal values as recommended.
Using a boot arg of
\&'sound=0' will disable the sound driver entirely.
-.SS "ISDN drivers"
+.SS ISDN drivers
.TP
.B "The ICN ISDN driver"
Syntax:
where iobase is the i/o port address of the card, membase is the
shared memory base address of the card, irq is the interrupt channel
the card uses, and teles_id is the unique ASCII string identifier.
-.SS "Serial port drivers"
+.SS Serial port drivers
.TP
.B "The RISCom/8 Multiport Serial Driver ('riscom8=')"
Syntax:
The mode parameter is a string with syntax hw:modem,
where hw is one of sbc, wss, wssfdx and modem is one of
afsk1200, fsk9600.
-.SS "The line printer driver"
+.SS The line printer driver
.TP
.B "'lp='"
Syntax:
Syntax:
.IP
wdt=io,irq
-.SS "Mouse drivers"
+.SS Mouse drivers
.TP
.B "'bmouse=irq'"
The busmouse driver only accepts one parameter, that being the
Otherwise, the first argument
is the x-threshold, and the second the y-threshold.
These values must lie between 1 and 20 (inclusive); the default is 2.
-.SS "Video hardware"
+.SS Video hardware
.TP
.B "'no-scroll'"
This option tells the console driver not to use hardware scroll
that the thread does not currently have).
.IP 4.
The new effective set must be a subset of the new permitted set.
-.SS The """securebits"" flags: establishing a capabilities-only environment
+.SS The securebits flags: establishing a capabilities-only environment
.\" For some background:
.\" see http://lwn.net/Articles/280279/ and
.\" http://article.gmane.org/gmane.linux.kernel.lsm/5476/
characters.
So Thai, Sioux and any other script needing combining
characters can't be handled on the console.
-.SS "ISO 2022 and ISO 4873"
+.SS ISO 2022 and ISO 4873
The ISO 2022 and 4873 standards describe a font-control model
based on VT100 practice.
This model is (partially) supported
or when the process has the
.B CAP_NET_RAW
capability.
-.SS "Address format"
+.SS Address format
An Appletalk socket address is defined as a combination of a network number,
a node number, and a port number.
.PP
is a link
local broadcast address.
.\" FIXME this doesn't make sense [johnl]
-.SS "Socket options"
+.SS Socket options
No protocol-specific socket options are supported.
.SS /proc interfaces
IP supports a set of
.BR mmap (2),
via shared memory segments or because they share memory space,
in which case the application is commonly called multithreaded.
-.SS "Semantics"
+.SS Semantics
.PP
Any futex operation starts in user space,
but it may necessary to communicate with the kernel using the
that will perform this function for a user program.
The rules are as follows (POSIX.2, 3.13).
-.SS "Wildcard matching"
+.SS Wildcard matching
A string is a wildcard pattern if it contains one of the
characters \(aq?\(aq, \(aq*\(aq or \(aq[\(aq.
Globbing is the operation
this character must be matched explicitly.
(Thus, \fIrm\ *\fP will not remove .profile, and \fItar\ c\ *\fP will not
archive all your files; \fItar\ c\ .\fP is better.)
-.SS "Empty lists"
+.SS Empty lists
The nice and simple rule given above: "expand a wildcard pattern
into the list of matching pathnames" was the original UNIX
definition.
When you get an IPv4 connection
or packet to a IPv6 socket, its source address will be mapped
to v6 and it will be mapped to v6.
-.SS "Address format"
+.SS Address format
.in +4n
.nf
struct sockaddr_in6 {
for IPv4-mapped-on-IPv6.
.PP
The port space of IPv6 is shared with IPv4.
-.SS "Socket options"
+.SS Socket options
IPv6 supports some protocol-specific socket options that can be set with
.BR setsockopt (2)
and read with
.P
Note that the ISO 8859-1 characters are also the first 256 characters
of ISO 10646 (Unicode).
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-1 characters"
+.SS ISO 8859-1 characters
The following table displays the characters in ISO 8859-1 (Latin-1),
which are printable and unlisted in the
.BR ascii (7)
.\" (Though in my system with glibc-2.8-20080929
.\" I found only lg_UG using this charset, and certainly UG
.\" is not a "Nordic" country!).
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-10 characters"
+.SS ISO 8859-10 characters
The following table displays the characters in ISO 8859-10, which
are printable and unlisted in the
.BR ascii (7)
The ISO 8859 standard includes several 8-bit extensions to the ASCII
character set (also known as ISO 646-IRV).
ISO 8859-11 encodes the characters used in the Thai language.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-11 characters"
+.SS ISO 8859-11 characters
The following table displays the characters in ISO 8859-11, which
are printable and unlisted in the
.BR ascii (7)
ISO 8859-13 encodes the characters used in Baltic Rim languages.
.\" In my system with glibc-2.8-20080929 is used for
.\" Lithuanian, Latvian and the Maori language in New Zealand.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-13 characters"
+.SS ISO 8859-13 characters
The following table displays the characters in ISO 8859-13, which
are printable and unlisted in the
.BR ascii (7)
The ISO 8859 standard includes several 8-bit extensions to the ASCII
character set (also known as ISO 646-IRV).
ISO 8859-14 encodes the characters used in Celtic languages.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-14 characters"
+.SS ISO 8859-14 characters
The following table displays the characters in ISO 8859-14, which
are printable and unlisted in the
.BR ascii (7)
Frisian, Galician, German, Greenlandic, Icelandic, Irish Gaelic,
Italian, Latin, Luxemburgish, Norwegian, Portuguese, Rhaeto-Romanic,
Scottish Gaelic, Spanish, and Swedish.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-15 characters"
+.SS ISO 8859-15 characters
The following table displays the characters in ISO 8859-15 (Latin-9),
which are printable and unlisted in the
.BR ascii (7)
.P
Also note that the following Cyrillic-based languages have one-to-one
transliterations to Latin 10: Macedonian and Serbian.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-16 characters"
+.SS ISO 8859-16 characters
The following table displays the characters in ISO 8859-16 (Latin-10),
which are printable and unlisted in the
.BR ascii (7)
.P
Also note that the following Cyrillic-based languages have one-to-one
transliterations to Latin 2: Macedonian and Serbian.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-2 characters"
+.SS ISO 8859-2 characters
The following table displays the characters in ISO 8859-2 (Latin-2),
which are printable and unlisted in the
.BR ascii (7)
ISO 8859-3 encodes the characters used in Southeast European languages.
.\" (Though in my system with glibc-2.8-20080929
.\" I found only mt_MT (Malta) using this charset).
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-3 characters"
+.SS ISO 8859-3 characters
The following table displays the characters in ISO 8859-3, which
are printable and unlisted in the
.BR ascii (7)
character set (also known as ISO 646-IRV).
ISO 8859-4 encodes the characters used in
Scandinavian and Baltic languages (Latin-4).
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-4 characters"
+.SS ISO 8859-4 characters
The following table displays the characters in ISO 8859-4, which
are printable and unlisted in the
.BR ascii (7)
The ISO 8859 standard includes several 8-bit extensions to the ASCII
character set (also known as ISO 646-IRV).
ISO 8859-5 encodes the Cyrillic alphabet as used in Russian and Macedonian.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-5 characters"
+.SS ISO 8859-5 characters
The following table displays the characters in ISO 8859-5, which
are printable and unlisted in the
.BR ascii (7)
The ISO 8859 standard includes several 8-bit extensions to the ASCII
character set (also known as ISO 646-IRV).
ISO 8859-6 encodes the characters used in the Arabic language.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-6 characters"
+.SS ISO 8859-6 characters
The following table displays the characters in ISO 8859-6, which
are printable and unlisted in the
.BR ascii (7)
character set (also known as ISO 646-IRV).
ISO 8859-7 encodes the
characters used in modern monotonic Greek.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-7 characters"
+.SS ISO 8859-7 characters
The following table displays the characters in ISO 8859-7, which
are printable and unlisted in the
.BR ascii (7)
characters used in Modern Hebrew (or Ivrit).
Neither short vowels nor diacritical marks are included,
and Yiddish is not provided for.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-8 characters"
+.SS ISO 8859-8 characters
The following table displays the characters in ISO 8859-8, which
are printable and unlisted in the
.BR ascii (7)
character set (also known as ISO 646-IRV).
ISO 8859-9, also known as
the "Latin Alphabet No. 5", encodes the characters used in Turkish.
-.SS "ISO 8859 alphabets"
+.SS ISO 8859 alphabets
The full set of ISO 8859 alphabets includes:
.TS
l l.
ISO 8859-15 West European languages (Latin-9)
ISO 8859-16 Romanian (Latin-10)
.TE
-.SS "ISO 8859-9 characters"
+.SS ISO 8859-9 characters
The following table displays the characters in ISO 8859-9 (Latin-5),
which are printable and unlisted in the
.BR ascii (7)
.PP
A more complete set of Cyrillic characters is also defined by the
ISO-8859-5 character set.
-.SS "KOI8-R characters"
+.SS KOI8-R characters
The following table displays the characters in KOI8-R, which
are printable and unlisted in the
.BR ascii (7)
for all Russian letters, and extends KOI8-R with four
Ukrainian letters (in both upper and lower case)
in locations that are compliant with ISO-IR-111.
-.SS "KOI8-U characters"
+.SS KOI8-U characters
The following table displays the characters in KOI8-U, which
are printable and unlisted in the
.BR ascii (7)
punctuation in Roman.
If no arguments are given, the command is applied to the following line
of text.
-.SS "Other macros and strings"
+.SS Other macros and strings
.PP
Below are other relevant macros and predefined strings.
Unless noted otherwise, all macros
try to use ens or ems as units for
indents, since these will automatically adjust to font size changes.
The other key macro definitions are:
-.SS "Normal paragraphs"
+.SS Normal paragraphs
.TP 9m
.B \&.LP
Same as
.TP
.B \&.PP
Begin a new paragraph and reset prevailing indent.
-.SS "Relative margin indent"
+.SS Relative margin indent
.TP 9m
.BI \&.RS " i"
Start relative margin indent: moves the left margin
.B \&.RE
End relative margin indent and
restores the previous value of the prevailing indent.
-.SS "Indented paragraph macros"
+.SS Indented paragraph macros
.TP 9m
.BI \&.HP " i"
Begin paragraph with a hanging indent
its results are like those of the
.B \&.IP
command.
-.SS "Hypertext link macros"
+.SS Hypertext link macros
(Feature supported with
.B groff
only.)
See
.BR groff_www (7)
for more details.
-.SS "Miscellaneous macros"
+.SS Miscellaneous macros
.TP 9m
.B \&.DT
Reset tabs to default tab values (every 0.5 inches);
(like
.BR \&.SH ,
but used for a subsection inside a section).
-.SS "Predefined strings"
+.SS Predefined strings
The
.B man
package has the following predefined strings:
Left angled double quote: \*(lq
.IP \e*(rq
Right angled double quote: \*(rq
-.SS "Safe subset"
+.SS Safe subset
Although technically
.B man
is a troff macro package, in reality a large number of other tools
However, applications should normally use the interface provided by
.IR libnuma ;
see "Library Support" below.
-.SS /proc/[number]/numa_maps " (since Linux 2.6.14)"
+.SS /proc/[number]/numa_maps (since Linux 2.6.14)
.\" See also Changelog-2.6.14
This file displays information about a process's
NUMA memory policy and allocation.
.SH DESCRIPTION
Some UNIX/Linux system calls have as parameter one or more filenames.
A filename (or pathname) is resolved as follows.
-.SS "Step 1: start of the resolution process"
+.SS Step 1: start of the resolution process
If the pathname starts with the \(aq/\(aq character,
the starting lookup directory
is the root directory of the calling process.
Pathnames starting with a \(aq/\(aq character are called absolute pathnames.
Pathnames not starting with a \(aq/\(aq are called relative pathnames.
-.SS "Step 2: walk along the path"
+.SS Step 2: walk along the path
Set the current lookup directory to the starting lookup directory.
Now, for each nonfinal component of the pathname, where a component
is a substring delimited by \(aq/\(aq characters, this component is looked up
.\" presently: max recursion depth during symlink resolution: 5
.\" max total number of symbolic links followed: 40
.\" _POSIX_SYMLOOP_MAX is 8
-.SS "Step 3: find the final entry"
+.SS Step 3: find the final entry
The lookup of the final component of the pathname goes just like
that of all other components, as described in the previous step,
with two differences: (i) the final component need not be a
The details on the treatment
of the final entry are described in the manual pages of the specific
system calls.
-.SS ". and .."
+.SS . and ..
By convention, every directory has the entries "." and "..",
which refer to the directory itself and to its parent directory,
respectively.
actually present in the physical file system.
One cannot walk down past the root: "/.." is the same as "/".
-.SS "Mount points"
+.SS Mount points
After a "mount dev path" command, the pathname "path" refers to
the root of the file system hierarchy on the device "dev", and no
longer to whatever it referred to earlier.
One can walk out of a mounted file system: "path/.." refers to
the parent directory of "path",
outside of the file system hierarchy on "dev".
-.SS "Trailing slashes"
+.SS Trailing slashes
If a pathname ends in a \(aq/\(aq, that forces resolution of the preceding
component as in Step 2: it has to exist and resolve to a directory.
Otherwise a trailing \(aq/\(aq is ignored.
(Or, equivalently, a pathname with a trailing \(aq/\(aq is equivalent to
the pathname obtained by appending \(aq.\(aq to it.)
-.SS "Final symlink"
+.SS Final symlink
If the last component of a pathname is a symbolic link, then it
depends on the system call whether the file referred to will be
the symbolic link or the result of path resolution on its contents.
will operate on the symlink, while
.BR stat (2)
operates on the file pointed to by the symlink.
-.SS "Length limit"
+.SS Length limit
There is a maximum length for pathnames.
If the pathname (or some
intermediate pathname obtained while resolving symbolic links)
is too long, an
.B ENAMETOOLONG
error is returned ("Filename too long").
-.SS "Empty pathname"
+.SS Empty pathname
In the original UNIX, the empty pathname referred to the current directory.
Nowadays POSIX decrees that an empty pathname must not be resolved
successfully.
Linux returns
.B ENOENT
in this case.
-.SS "Permissions"
+.SS Permissions
The permission bits of a file consist of three groups of three bits, cf.\&
.BR chmod (1)
and
See
.BR setfsgid (2).
.\" FIXME say something about file system mounted read-only ?
-.SS "Bypassing permission checks: superuser and capabilities"
+.SS Bypassing permission checks: superuser and capabilities
On a traditional UNIX system, the superuser
.RI ( root ,
user ID 0) is all-powerful, and bypasses all permissions restrictions
although FIFOs have a pathname in the file system,
I/O on FIFOs does not involve operations on the underlying device
(if there is one).
-.SS "I/O on pipes and FIFOs"
+.SS I/O on pipes and FIFOs
The only difference between pipes and FIFOs is the manner in which
they are created and opened.
Once these tasks have been accomplished,
It is not possible to apply
.BR lseek (2)
to a pipe.
-.SS "Pipe capacity"
+.SS Pipe capacity
A pipe has a limited capacity.
If the pipe is full, then a
.BR write (2)
.BR write (2)
to see how many bytes were actually written),
and these bytes may be interleaved with writes by other processes.
-.SS "Open file status flags"
+.SS Open file status flags
The only open file status flags that can be meaningfully applied to
a pipe or FIFO are
.B O_NONBLOCK
On Linux,
.B O_ASYNC
is supported for pipes and FIFOs only since kernel 2.6.
-.SS "Portability notes"
+.SS Portability notes
On some systems (but not Linux), pipes are bidirectional:
data can be transmitted in both directions between the pipe ends.
According to POSIX.1-2001, pipes only need to be unidirectional.
a very short description.
Much more precise detail can be found in the POSIX standard itself,
versions of which can nowadays be accessed freely on the web.
-.SS "ADV - _POSIX_ADVISORY_INFO - _SC_ADVISORY_INFO"
+.SS ADV - _POSIX_ADVISORY_INFO - _SC_ADVISORY_INFO
The following advisory functions are present:
.br
.nf
.br
.in -4
.fi
-.SS "AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO"
+.SS AIO - _POSIX_ASYNCHRONOUS_IO - _SC_ASYNCHRONOUS_IO
The header
.I <aio.h>
is present.
.br
.in -4
.fi
-.SS "BAR - _POSIX_BARRIERS - _SC_BARRIERS"
+.SS BAR - _POSIX_BARRIERS - _SC_BARRIERS
This option implies the
.B _POSIX_THREADS
and
.\" Batch environment.
.\" .SS "CD"
.\" C development.
-.SS "--- - POSIX_CHOWN_RESTRICTED"
+.SS --- - POSIX_CHOWN_RESTRICTED
If this option is in effect (as it always is under POSIX.1-2001)
then only root may change the owner of a file, and nonroot can only
set the group of a file to one of the groups it belongs to.
.IR chown (),
.IR fchown ().
.\" What about lchown() ?
-.SS "CS - _POSIX_CLOCK_SELECTION - _SC_CLOCK_SELECTION"
+.SS CS - _POSIX_CLOCK_SELECTION - _SC_CLOCK_SELECTION
This option implies the
.B _POSIX_TIMERS
option.
is changed by the function
.IR clock_settime (),
then this affects all timers set for an absolute time.
-.SS "CPT - _POSIX_CPUTIME - _SC_CPUTIME"
+.SS CPT - _POSIX_CPUTIME - _SC_CPUTIME
The clockID CLOCK_PROCESS_CPUTIME_ID is supported.
The initial value of this clock is 0 for each process.
This option implies the
.\" Fortran development
.\" .SS "FR"
.\" Fortran runtime
-.SS "--- - _POSIX_FILE_LOCKING - _SC_FILE_LOCKING"
+.SS --- - _POSIX_FILE_LOCKING - _SC_FILE_LOCKING
This option has been deleted.
Not in final XPG6.
-.SS "FSC - _POSIX_FSYNC - _SC_FSYNC "
+.SS FSC - _POSIX_FSYNC - _SC_FSYNC
The function
.IR fsync ()
is present.
-.SS "IP6 - _POSIX_IPV6 - _SC_IPV6"
+.SS IP6 - _POSIX_IPV6 - _SC_IPV6
Internet Protocol Version 6 is supported.
-.SS "--- - _POSIX_JOB_CONTROL - _SC_JOB_CONTROL"
+.SS --- - _POSIX_JOB_CONTROL - _SC_JOB_CONTROL
If this option is in effect (as it always is under POSIX.1-2001)
then the system implements POSIX-style job control,
and the following functions are present:
.IR tcsetpgrp ().
.in -4
.fi
-.SS "MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES"
+.SS MF - _POSIX_MAPPED_FILES - _SC_MAPPED_FILES
Shared memory is supported.
The include file
.I <sys/mman.h>
.IR mmap (),
.IR msync (),
.IR munmap ().
-.SS "ML - _POSIX_MEMLOCK - _SC_MEMLOCK"
+.SS ML - _POSIX_MEMLOCK - _SC_MEMLOCK
Shared memory can be locked into core.
The functions
.IR mlockall (),
.IR munlockall ()
are present.
-.SS "MR/MLR - _POSIX_MEMLOCK_RANGE - _SC_MEMLOCK_RANGE"
+.SS MR/MLR - _POSIX_MEMLOCK_RANGE - _SC_MEMLOCK_RANGE
More precisely, ranges can be locked into core.
The functions
.IR mlock (),
.IR munlock ()
are present.
-.SS "MPR - _POSIX_MEMORY_PROTECTION - _SC_MEMORY_PROTECTION"
+.SS MPR - _POSIX_MEMORY_PROTECTION - _SC_MEMORY_PROTECTION
The function
.IR mprotect ()
is present.
-.SS "MSG - _POSIX_MESSAGE_PASSING - _SC_MESSAGE_PASSING"
+.SS MSG - _POSIX_MESSAGE_PASSING - _SC_MESSAGE_PASSING
The include file
.I <mqueue.h>
is present.
.br
.in -4
.fi
-.SS "MON - _POSIX_MONOTONIC_CLOCK - _SC_MONOTONIC_CLOCK"
+.SS MON - _POSIX_MONOTONIC_CLOCK - _SC_MONOTONIC_CLOCK
.B CLOCK_MONOTONIC
is supported.
This option implies the
.IR timer_create ().
.in -4
.fi
-.SS "--- - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS"
+.SS --- - _POSIX_MULTI_PROCESS - _SC_MULTI_PROCESS
This option has been deleted.
Not in final XPG6.
.\" .SS "MX"
.\" IEC 60559 Floating-Point Option.
-.SS "--- - _POSIX_NO_TRUNC"
+.SS --- - _POSIX_NO_TRUNC
If this option is in effect (as it always is under POSIX.1-2001)
then pathname components longer than
.B NAME_MAX
are not truncated,
but give an error.
This property may be dependent on the path prefix of the component.
-.SS "PIO - _POSIX_PRIORITIZED_IO - _SC_PRIORITIZED_IO"
+.SS PIO - _POSIX_PRIORITIZED_IO - _SC_PRIORITIZED_IO
This option says that one can specify priorities for asynchronous I/O.
This affects the functions
.br
.IR aio_write ().
.in -4
.fi
-.SS "PS - _POSIX_PRIORITY_SCHEDULING - _SC_PRIORITY_SCHEDULING"
+.SS PS - _POSIX_PRIORITY_SCHEDULING - _SC_PRIORITY_SCHEDULING
The include file
.I <sched.h>
is present.
.IR posix_spawnattr_setschedpolicy ().
.in -4
.fi
-.SS "RS - _POSIX_RAW_SOCKETS"
+.SS RS - _POSIX_RAW_SOCKETS
Raw sockets are supported.
Affected functions are
.IR getsockopt (),
.IR setsockopt ().
-.SS "--- - _POSIX_READER_WRITER_LOCKS - _SC_READER_WRITER_LOCKS"
+.SS --- - _POSIX_READER_WRITER_LOCKS - _SC_READER_WRITER_LOCKS
This option implies the
.B _POSIX_THREADS
option.
.IR pthread_rwlockattr_init ().
.in -4
.fi
-.SS "RTS - _POSIX_REALTIME_SIGNALS - _SC_REALTIME_SIGNALS"
+.SS RTS - _POSIX_REALTIME_SIGNALS - _SC_REALTIME_SIGNALS
Realtime signals are supported.
The following functions are present:
.br
.br
.in -4
.fi
-.SS "--- - _POSIX_REGEXP - _SC_REGEXP"
+.SS --- - _POSIX_REGEXP - _SC_REGEXP
If this option is in effect (as it always is under POSIX.1-2001)
then POSIX regular expressions are supported
and the following functions are present:
.br
.in -4
.fi
-.SS "--- - _POSIX_SAVED_IDS - _SC_SAVED_IDS"
+.SS --- - _POSIX_SAVED_IDS - _SC_SAVED_IDS
If this option is in effect (as it always is under POSIX.1-2001)
then a process has a saved set-user-ID and a saved set-group-ID.
Affected functions are
.fi
.\" .SS "SD"
.\" Software development
-.SS "SEM - _POSIX_SEMAPHORES - _SC_SEMAPHORES"
+.SS SEM - _POSIX_SEMAPHORES - _SC_SEMAPHORES
The include file
.I <semaphore.h>
is present.
.br
.in -4
.fi
-.SS "SHM - _POSIX_SHARED_MEMORY_OBJECTS - _SC_SHARED_MEMORY_OBJECTS"
+.SS SHM - _POSIX_SHARED_MEMORY_OBJECTS - _SC_SHARED_MEMORY_OBJECTS
The following functions are present:
.br
.nf
.br
.in -4
.fi
-.SS "--- - _POSIX_SHELL - _SC_SHELL"
+.SS --- - _POSIX_SHELL - _SC_SHELL
If this option is in effect (as it always is under POSIX.1-2001),
the function
.IR system ()
is present.
-.SS "SPN - _POSIX_SPAWN - _SC_SPAWN"
+.SS SPN - _POSIX_SPAWN - _SC_SPAWN
This option describes support for process creation in a context where
it is difficult or impossible to use
.IR fork (),
.IR posix_spawnattr_setschedpolicy ().
.in -4
.fi
-.SS "SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS"
+.SS SPI - _POSIX_SPIN_LOCKS - _SC_SPIN_LOCKS
This option implies the
.B _POSIX_THREADS
and
.in -4
.br
.fi
-.SS "SS - _POSIX_SPORADIC_SERVER - _SC_SPORADIC_SERVER"
+.SS SS - _POSIX_SPORADIC_SERVER - _SC_SPORADIC_SERVER
The scheduling policy
.B SCHED_SPORADIC
is supported.
.in -4
.br
.fi
-.SS "SIO - _POSIX_SYNCHRONIZED_IO - _SC_SYNCHRONIZED_IO"
+.SS SIO - _POSIX_SYNCHRONIZED_IO - _SC_SYNCHRONIZED_IO
Affected functions are
.IR open (),
.IR msync (),
.IR fsync (),
.IR fdatasync ().
-.SS "TSA - _POSIX_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKADDR"
+.SS TSA - _POSIX_THREAD_ATTR_STACKADDR - _SC_THREAD_ATTR_STACKADDR
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TSS - _POSIX_THREAD_ATTR_STACKSIZE - _SC_THREAD_ATTR_STACKSIZE"
+.SS TSS - _POSIX_THREAD_ATTR_STACKSIZE - _SC_THREAD_ATTR_STACKSIZE
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TCT - _POSIX_THREAD_CPUTIME - _SC_THREAD_CPUTIME"
+.SS TCT - _POSIX_THREAD_CPUTIME - _SC_THREAD_CPUTIME
The clockID CLOCK_THREAD_CPUTIME_ID is supported.
This option implies the
.B _POSIX_TIMERS
.in -4
.br
.fi
-.SS "TPI - _POSIX_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_INHERIT"
+.SS TPI - _POSIX_THREAD_PRIO_INHERIT - _SC_THREAD_PRIO_INHERIT
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TPP - _POSIX_THREAD_PRIO_PROTECT - _SC_THREAD_PRIO_PROTECT"
+.SS TPP - _POSIX_THREAD_PRIO_PROTECT - _SC_THREAD_PRIO_PROTECT
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TPS - _POSIX_THREAD_PRIORITY_SCHEDULING - _SC_THREAD_PRIORITY_SCHEDULING"
+.SS TPS - _POSIX_THREAD_PRIORITY_SCHEDULING - _SC_THREAD_PRIORITY_SCHEDULING
If this option is in effect, the different threads inside a process
can run with different priorities and/or different schedulers.
Affected functions are
.in -4
.br
.fi
-.SS "TSH - _POSIX_THREAD_PROCESS_SHARED - _SC_THREAD_PROCESS_SHARED"
+.SS TSH - _POSIX_THREAD_PROCESS_SHARED - _SC_THREAD_PROCESS_SHARED
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TSF - _POSIX_THREAD_SAFE_FUNCTIONS - _SC_THREAD_SAFE_FUNCTIONS"
+.SS TSF - _POSIX_THREAD_SAFE_FUNCTIONS - _SC_THREAD_SAFE_FUNCTIONS
Affected functions are
.br
.nf
.in -4
.br
.fi
-.SS "TSP - _POSIX_THREAD_SPORADIC_SERVER - _SC_THREAD_SPORADIC_SERVER"
+.SS TSP - _POSIX_THREAD_SPORADIC_SERVER - _SC_THREAD_SPORADIC_SERVER
This option implies the
.B _POSIX_THREAD_PRIORITY_SCHEDULING
option.
.in -4
.br
.fi
-.SS "THR - _POSIX_THREADS - _SC_THREADS"
+.SS THR - _POSIX_THREADS - _SC_THREADS
Basic support for POSIX threads is available.
The following functions are present:
.br
.in -4
.br
.fi
-.SS "TMO - _POSIX_TIMEOUTS - _SC_TIMEOUTS"
+.SS TMO - _POSIX_TIMEOUTS - _SC_TIMEOUTS
The following functions are present:
.br
.nf
.in -4
.br
.fi
-.SS "TMR - _POSIX_TIMERS - _SC_TIMERS"
+.SS TMR - _POSIX_TIMERS - _SC_TIMERS
The following functions are present:
.br
.nf
.in -4
.br
.fi
-.SS "TRC - _POSIX_TRACE - _SC_TRACE"
+.SS TRC - _POSIX_TRACE - _SC_TRACE
POSIX tracing is available.
The following functions are present:
.br
.in -4
.br
.fi
-.SS "TEF - _POSIX_TRACE_EVENT_FILTER - _SC_TRACE_EVENT_FILTER"
+.SS TEF - _POSIX_TRACE_EVENT_FILTER - _SC_TRACE_EVENT_FILTER
This option implies the
.B _POSIX_TRACE
option.
.in -4
.br
.fi
-.SS "TRI - _POSIX_TRACE_INHERIT - _SC_TRACE_INHERIT"
+.SS TRI - _POSIX_TRACE_INHERIT - _SC_TRACE_INHERIT
Tracing children of the traced process is supported.
This option implies the
.B _POSIX_TRACE
.in -4
.br
.fi
-.SS "TRL - _POSIX_TRACE_LOG - _SC_TRACE_LOG"
+.SS TRL - _POSIX_TRACE_LOG - _SC_TRACE_LOG
This option implies the
.B _POSIX_TRACE
option.
.in -4
.br
.fi
-.SS "TYM - _POSIX_TYPED_MEMORY_OBJECTS - _SC_TYPED_MEMORY_OBJECT"
+.SS TYM - _POSIX_TYPED_MEMORY_OBJECTS - _SC_TYPED_MEMORY_OBJECT
The following functions are present:
.br
.nf
.in -4
.br
.fi
-.SS "--- - _POSIX_VDISABLE"
+.SS --- - _POSIX_VDISABLE
Always present (probably 0).
Value to set a changeable special control
character to indicate that it is disabled.
.IP \- 3
CPU affinity
.RB ( sched_setaffinity (2))
-.SS "Pthreads function return values"
+.SS Pthreads function return values
Most pthreads functions return 0 on success, and an error number of failure.
Note that the pthreads functions do not set
.IR errno .
In all pthreads functions that accept a thread ID as an argument,
that ID by definition refers to a thread in
the same process as the caller.
-.SS "Thread-safe functions"
+.SS Thread-safe functions
A thread-safe function is one that can be safely
(i.e., it will deliver the same results regardless of whether it is)
called from multiple threads at the same time.
.\" vscanf
.\" vsyslog
.\" vwscanf
-.SS "Compiling on Linux"
+.SS Compiling on Linux
On Linux, programs that use the Pthreads API should be compiled using
.IR "cc \-pthread" .
-.SS "Linux implementations of POSIX threads"
+.SS Linux implementations of POSIX threads
Over time, two threading implementations have been provided by
the GNU C library on Linux:
.TP
shell built-in command
.RI ( "limit stacksize"
in the C shell).
-.SS "Determining the threading implementation"
+.SS Determining the threading implementation
Since glibc 2.3.2, the
.BR getconf (1)
command can be used to determine
Native POSIX Threads Library by Ulrich Drepper et al
.in
.fi
-.SS "Selecting the threading implementation: LD_ASSUME_KERNEL"
+.SS Selecting the threading implementation: LD_ASSUME_KERNEL
On systems with a glibc that supports both LinuxThreads and NPTL
(i.e., glibc 2.3.\fIx\fP), the
.B LD_ASSUME_KERNEL
Since kernel 2.6.4, BSD-style pseudoterminals are considered deprecated
(they can be disabled when configuring the kernel);
UNIX 98 pseudoterminals should be used in new applications.
-.SS "UNIX 98 pseudoterminals"
+.SS UNIX 98 pseudoterminals
An unused UNIX 98 pseudoterminal master is opened by calling
.BR posix_openpt (3).
(This function opens the master clone device,
indicates how many pseudoterminals are currently in use.
For further details on these two files, see
.BR proc (5).
-.SS "BSD pseudoterminals"
+.SS BSD pseudoterminals
BSD-style pseudoterminals are provided as precreated pairs, with
names of the form
.I /dev/ptyXY
.BR netlink (7)
for more information.
.\" FIXME ? all these macros could be moved to rtnetlink(3)
-.SS "Routing attributes"
+.SS Routing attributes
Some rtnetlink messages have optional attributes after the initial header:
.in +4n
.SH DESCRIPTION
Linux supports both POSIX reliable signals (hereinafter
"standard signals") and POSIX real-time signals.
-.SS "Signal dispositions"
+.SS Signal dispositions
Each signal has a current
.IR disposition ,
which determines how the process behaves when it is delivered
The buffer returned by
.BR read (2)
contains a structure describing the signal.
-.SS "Signal mask and pending signals"
+.SS Signal mask and pending signals
A signal may be
.IR blocked ,
which means that it will not be delivered until it is later unblocked.
initially has an empty pending signal set;
the pending signal set is preserved across an
.BR execve (2).
-.SS "Standard signals"
+.SS Standard signals
Linux supports the standard signals listed below.
Several signal numbers
are architecture-dependent, as indicated in the "Value" column.
.\" parisc is the only exception: SIGSYS is 12, SIGUNUSED is 31
.B SIGSYS
on most architectures.
-.SS "Real-time signals"
+.SS Real-time signals
Linux supports real-time signals as originally defined in the POSIX.1b
real-time extensions (and now included in POSIX.1-2001).
The range of supported real-time signals is defined by the macros
signals; see
.BR setrlimit (2)
for further details.
-.SS "Async-signal-safe functions"
+.SS Async-signal-safe functions
.PP
A signal handler function must be very careful,
since processing elsewhere may be interrupted
.SH NAME
time \- overview of time and timers
.SH DESCRIPTION
-.SS "Real time and process time"
+.SS Real time and process time
.I "Real time"
is defined as time measured from some fixed point,
either from a standard point in the past
.BR getrusage (2),
or
.BR clock (3).
-.SS "The hardware clock"
+.SS The hardware clock
Most computers have a (battery-powered) hardware clock which the kernel
reads at boot time in order to initialize the software clock.
For further details, see
.BR rtc (4)
and
.BR hwclock (8).
-.SS "The software clock, HZ, and jiffies"
+.SS The software clock, HZ, and jiffies
The accuracy of various system calls that set timeouts,
(e.g.,
.BR select (2),
.\" glibc gets this info with a little help from the ELF loader;
.\" see glibc elf/dl-support.c and kernel fs/binfmt_elf.c.
.\"
-.SS "High-resolution timers"
+.SS High-resolution timers
Before Linux 2.6.21, the accuracy of timer and sleep system calls
(see below) was also limited by the size of the jiffy.
HRTs are not supported on all hardware architectures.
(Support is provided on x86, arm, and powerpc, among others.)
-.SS "The Epoch"
+.SS The Epoch
UNIX systems represent time in seconds since the
.IR Epoch ,
1970-01-01 00:00:00 +0000 (UTC).
nearest second.
The system time can be changed using
.BR settimeofday (2).
-.SS "Broken-down time"
+.SS Broken-down time
Certain library functions use a structure of
type
.I tm
.BR strftime (3),
and
.BR strptime (3).
-.SS "Sleeping and setting timers"
+.SS Sleeping and setting timers
Various system calls and functions allow a program to sleep
(suspend execution) for a specified period of time; see
.BR nanosleep (2),
that exceed the interface MTU.
However, disabling it is not recommended
for performance and reliability reasons.
-.SS "Address format"
+.SS Address format
UDP uses the IPv4
.I sockaddr_in
address format described in
.BR ip (7).
-.SS "Error handling"
+.SS Error handling
All fatal errors will be passed to the user as an error return even
when the socket is not connected.
This includes asynchronous errors
even if total pages of UDP sockets exceed
.I udp_mem
pressure.
-.SS "Socket options"
+.SS Socket options
To set or get a UDP socket option, call
.BR getsockopt (2)
to read or
.BR udp (7),
i.e., it shares the same API and API behaviour, and in addition
offers two socket options to control the checksum coverage.
-.SS "Address format"
+.SS Address format
UDP-Litev4 uses the
.I sockaddr_in
address format described in
.I sockaddr_in6
address format described in
.BR ipv6 (7).
-.SS "Socket options"
+.SS Socket options
To set or get a UDP-Lite socket option, call
.BR getsockopt (2)
to read or
character set and the characters in the range 0x0000 to 0x00ff
are identical to those in
.BR "ISO 8859-1 Latin-1" .
-.SS "Combining characters"
+.SS Combining characters
Some code points in
.B UCS
have been assigned to
Combining characters are essential for instance for encoding the Thai
script or for mathematical typesetting and users of the International
Phonetic Alphabet.
-.SS "Implementation levels"
+.SS Implementation levels
As not all systems are expected to support advanced mechanisms like
combining characters, ISO 10646-1 specifies the following three
.I implementation levels
They provide guidelines and algorithms for
editing, sorting, comparing, normalizing, converting and displaying
Unicode strings.
-.SS "Unicode under Linux"
+.SS Unicode under Linux
Under GNU/Linux, the C type
.I wchar_t
is a signed 32-bit integer type.
general precomposed characters should be preferred where available
(Unicode calls this
.BR "Normalization Form C" ).
-.SS "Private area"
+.SS Private area
In the
.BR BMP ,
the range 0xe000 to 0xf8ff will never be assigned to any characters by
(e.g., urn:ietf:... would identify IETF documents); at this time
URNs are not widely implemented.
Not all tools support all schemes.
-.SS "Character encoding"
+.SS Character encoding
.PP
URIs use a limited number of characters so that they can be
typed in and used in a variety of situations.
.IP 2.
use the URI escaping mechanism, that is,
use the %HH encoding for unsafe octets.
-.SS "Writing a URI"
+.SS Writing a URI
When written, URIs should be placed inside double quotes
(e.g., "http://www.kernelnotes.org"),
enclosed in angle brackets (e.g., <http://lwn.net>),
.RS
11100010 10001001 10100000 = 0xe2 0x89 0xa0
.RE
-.SS "Application notes"
+.SS Application notes
Users have to select a
.B UTF-8
locale, for example with