3.11 Devices and Device Nodes

A device is a term used mostly for hardware-related activities in a system, including disks, printers, graphics cards, and keyboards. When FreeBSD boots, the majority of what FreeBSD displays are devices being detected. You can look through the boot messages again by viewing /var/run/dmesg.boot.

For example, acd0 is the first IDE CDROM drive, while kbd0 represents the keyboard.

Most of these devices in a UNIX® operating system must be accessed through special files called device nodes, which are located in the /dev directory.

3.11.1 Creating Device Nodes

When adding a new device to your system, or compiling in support for additional devices, you may need to create one or more device nodes for the new devices.

3.11.1.1 MAKEDEV Script

On systems without DEVFS (this concerns all FreeBSD versions before 5.0), device nodes are created using the MAKEDEV(8) script as shown below:

# cd /dev
# sh MAKEDEV ad1
   

This example would make the proper device nodes for the second IDE drive when installed.

3.11.1.2 DEVFS (DEVice File System)

The device file system, or DEVFS, provides access to kernel's device namespace in the global file system namespace. Instead of having to create and modify device nodes, DEVFS maintains this particular file system for you.

See the devfs(5) manual page for more information.

DEVFS is used by default in FreeBSD 5.0 and above.

This, and other documents, can be downloaded from ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

For questions about FreeBSD, read the documentation before contacting <[email protected]>.
For questions about this documentation, e-mail <[email protected]>.