The second part of this guide provides design information that is specific to the type of driver.
Drivers for Character Devices describes drivers for character-oriented devices.
Drivers for Block Devices describes drivers for block-oriented devices.
SCSI Target Drivers outlines the Sun Common SCSI Architecture (SCSA) and the requirements for SCSI target drivers.
SCSI Host Bus Adapter Drivers explains how to apply SCSA to SCSI Host Bus Adapter (HBA) drivers.
Drivers for Network Devices describes the Generic LAN driver (GLD). The GLDv3 framework is a function-call-based interface of MAC plugins and MAC driver service routines and structures.
USB Drivers describes how to write a client USB device driver by using the USBA 2.0 framework.
SR-IOV Drivers describes the SR-IOV device driver and the interfaces available to write an SR-IOV driver.
A character device does not have physically addressable storage media, such as tape drives or serial ports, where I/O is normally performed in a byte stream. This chapter describes the structure of a character device driver, focusing in particular on entry points for character drivers. In addition, this chapter describes the use of physio(9F) and aphysio(9F) in the context of synchronous and asynchronous I/O transfers.
This chapter provides information about the following subjects: