FreeBSD Architecture Handbook
Prev | Chapter 9 Writing FreeBSD Device Drivers | Next

# 9.3 Accessing a device driver

UNIX® provides a common set of system calls for user applications to use. The upper layers of the kernel dispatch these calls to the corresponding device driver when a user accesses a device node. The `/dev/MAKEDEV` script makes most of the device nodes for your system but if you are doing your own driver development it may be necessary to create your own device nodes with `mknod`.

## 9.3.1 Creating static device nodes

The `mknod` command requires four arguments to create a device node. You must specify the name of the device node, the type of device, the major number of the device, and the minor number of the device.

## 9.3.2 Dynamic device nodes

The device filesystem, or devfs, provides access to the kernel's device namespace in the global filesystem namespace. This eliminates the problems of potentially having a device driver without a static device node, or a device node without an installed device driver. Devfs is still a work in progress, but it is already working quite nicely.

Prev | Home | Next
Dynamic Kernel Linker Facility - KLD | Up | Character Devices

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

For questions about FreeBSD, read the documentation before contacting <questions@FreeBSD.org>.
For questions about this documentation, e-mail <doc@FreeBSD.org>.