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.
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.
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.