INTRO(4) Device and Network Interfaces INTRO(4)
NAME
Intro,
intro - introduction to special files
DESCRIPTION
This section describes various device and network interfaces available
on the system. The types of interfaces described include character and
block devices,
STREAMS modules, network protocols, file systems, and
ioctl requests for driver subsystems and classes.
This section contains the following major collections:
(
4D) The system provides drivers for a variety of hardware devices,
such as disk, magnetic tapes, serial communication lines, mice,
and frame buffers, as well as virtual devices such as pseudo-
terminals and windows.
This section describes special files that refer to specific
hardware peripherals and device drivers.
STREAMS device drivers
are also described. Characteristics of both the hardware device
and the corresponding device driver are discussed where
applicable.
An application accesses a device through that device's special
file. This section specifies the device special file to be used
to access the device as well as application programming
interface (API) information relevant to the use of the device
driver. All device special files are located under the
/devices directory. The
/devices directory hierarchy attempts to mirror
the hierarchy of system busses, controllers, and devices
configured on the system. Logical device names for special
files in
/devices are located under the
/dev directory.
Although not every special file under
/devices will have a
corresponding logical entry under
/dev, whenever possible, an
application should reference a device using the logical name for
the device. Logical device names are listed in the
FILES section of the page for the device in question.
This section also describes driver configuration where
applicable. Many device drivers have a driver configuration
file of the form
driver_name.conf associated with them (see
driver.conf(5)). The configuration information stored in the
driver configuration file is used to configure the driver and
the device. Driver configuration files are located in
/kernel/drv and
/usr/kernel/drv. Driver configuration files for
platform dependent drivers are located in
/platform/`uname -i`/kernel/drv where
`uname -i` is the output
of the
uname(1) command with the
-i option.
Some driver configuration files may contain user configurable
properties. Changes in a driver's configuration file will not
take effect until the system is rebooted or the driver has been
removed and re-added (see
rem_drv(8) and
add_drv(8)).
(
4FS) This section describes the programmatic interface for several
file systems supported by SunOS.
(
4I) This section describes ioctl requests which apply to a class of
drivers or subsystems. For example, ioctl requests which apply
to most tape devices are discussed in
mtio(4I). Ioctl requests
relevant to only a specific device are described on the man page
for that device. The page for the device in question should
still be examined for exceptions to the ioctls listed in section
4I.
(
4M) This section describes
STREAMS modules. Note that
STREAMS drivers are discussed in section 4D.
streamio(4I) contains a
list of ioctl requests used to manipulate
STREAMS modules and
interface with the
STREAMS framework.
ioctl(2) requests
specific to a
STREAMS module will be discussed on the man page
for that module.
(
4P) This section describes various network protocols available in
SunOS. SunOS supports both socket-based and
STREAMS-based
network communications.
The Internet protocol family, described in
inet(4P), is the
primary protocol family supported by SunOS, although the system
can support a number of others. The raw interface provides low-
level services, such as packet fragmentation and reassembly,
routing, addressing, and basic transport for socket-based
implementations. Facilities for communicating using an
Internet-family protocol are generally accessed by specifying
the AF_INET address family when binding a socket; see
socket(3SOCKET) for details.
Major protocols in the Internet family include:
+o The Internet Protocol (IP) itself, which supports the
universal datagram format, as described in
ip(4P).
This is the default protocol for SOCK_RAW type sockets
within the AF_INET domain.
+o The Transmission Control Protocol (TCP); see
tcp(4P).
This is the default protocol for SOCK_STREAM type
sockets.
+o The User Datagram Protocol (UDP); see
udp(4P). This
is the default protocol for SOCK_DGRAM type sockets.
+o The Address Resolution Protocol (ARP); see
arp(4P).
+o The Internet Control Message Protocol (ICMP); see
icmp(4P).
SEE ALSO
ioctl(2),
Intro(3),
socket(3SOCKET),
st(4D),
mtio(4I),
streamio(4I),
arp(4P),
icmp(4P),
inet(4P),
ip(4P),
tcp(4P),
udp(4P),
driver.conf(5),
add_drv(8),
rem_drv(8) System Administration Guide: IP Services STREAMS Programming Guide Writing Device Driversillumos March 10, 2023 illumos