man(1) Manual page archive


     INTRO(4)                                                 INTRO(4)

     NAME
          intro - introduction to devices, line disciplines, and file
          systems

     DESCRIPTION
          This section describes drivers for devices, stream line
          disciplines, and file systems.

          Devices are accessed through special files of type `S_IFBLK'
          (block devices) or `S_IFCHR' (character devices); see
          stat(2). Block devices use a block buffering scheme within
          the system, so that sectored devices like disks may be
          accessed a byte at a time.  Character devices don't use the
          block buffers.  Only block devices may be mounted as disk
          file systems.  Most block devices have associated `raw'
          character devices that bypass all buffering for fast direct
          I/O.

          The device associated with a special file is identified by a
          pair of numbers: a major device number naming the driver,
          and a minor device number picking some particular device or
          subunit.  Major numbers are listed in mknod(8). Minor num-
          bers are specific to each driver; see the writeups in this
          section.  Minor numbers are stored in a single unsigned
          byte; they are chosen from the range 0-255.

          Some character devices are also stream devices.  These use a
          different internal buffering mechanism to allow data to flow
          asynchronously.  Various special operations are possible on
          streams; see stream(4).

          Line disciplines are processing modules that may be inserted
          into streams.  They are identified by integers passed to the
          calls that insert and remove them.  The C library contains
          global variables initialized to the numbers for various line
          disciplines; stream(4) has a list.

          There are several different types of file system: conven-
          tional disk volumes, remote file systems accessed by the
          system sending messages though a stream to a server as
          described in netfs(8), a file system containing a file rep-
          resenting each process in the system, and so on.  All of
          these appear the same to ordinary processes, except that not
          all file systems implement all operations; for example, a
          process file has a name, and may be opened, read, and writ-
          ten like an ordinary file, but may not be renamed because
          proc(4) doesn't allow that.

          File system types are identified by integers, used by and
          listed in fmount(2). They are just magic numbers at present.

     INTRO(4)                                                 INTRO(4)

     SEE ALSO
          fmount(2), stream(4), mknod(8)