This section reviews the special device driver files required for file system support.
If your target is an NFS client only (all its files are physically located on another system, such as the host workstation), you can skip this section.
The ChorusOS system requires you to use special(7S) device driver files to access the hardware devices where file systems reside. This means that disk labelling and other operations on uninitialized and unmounted file systems must be done using special files.
Each disk partition corresponds to at least one special file. Unless you plan to use a raw partition directly, without a file system, you must be able to access each partition in both block (buffered) mode and raw (character) mode, so you must create not just one special file per partition, but two. Each special file:
Refers to either a block or a raw device. Block devices are used by file systems. Raw devices are used primarily for file system administration.
Has a major number. Major numbers are used by the system to select the corresponding device driver when several devices are configured. Major numbers are the same for all devices managed by a given device driver and a given access method (raw or block). For example, all devices corresponding to hard disk partitions using raw mode have the same major number.
Has a minor number. Minor numbers are not used directly by the system, but by the selected device driver. Minor numbers are different for each partition on a device. Their scope is limited to the device described by the major number, so special files with different major numbers may share the same minor number. One minor number corresponds to one partition.
Special files normally reside in the /dev directory, which is mounted at boot time. By convention, special file names follow the form /dev/rsuffix for raw (character) mode and /dev/suffix for buffered (block) mode.
A string of letters referring to the device driver name, such as sd for a SCSI disk, rd for a RAM disk, hd for an IDE disk or flash for flash,
Followed by a digit representing the disk unit number, such as 0, 1, 2 and so forth (except for special files not related to file systems, such as tty device files),
Terminated by a single letter referring to the partition, such as a, b, ... h.
Special care must be taken with partition c. Partition c represents the whole disk and therefore must not be used to support a file system.
As file systems are based on BSD 4.4
as implemented in FreeBSD 2.2.7
,
the same limitations found in FreeBSD 2.2.7
apply to ChorusOS file system management. According to limitations
imposed by FreeBSD
, a disk can
be divided into a maximum of eight different partitions for IDE
and SCSI devices, two partitions for RAM
and flash devices. Partitions can be left undefined. Partitions are named
using a single character in the range from a to h, each letter corresponding to one of the eight partitions for IDE and SCSI devices. For RAM
and flash devices, only partitions a and c
are available.