图 16–1 显示了用来定义块设备驱动程序结构的数据结构和例程。设备驱动程序通常包括以下元素:
可装入设备的驱动程序段
设备配置部分
设备访问部分
下图中涂有阴影的设备访问部分列出了块驱动程序入口点。
对于每个设备驱动程序,都有一个 dev_ops(9S) 结构与之关联,该结构进而又引用 cb_ops(9S) 结构。有关驱动程序数据结构的详细信息,请参见第 6 章。
块设备驱动程序提供下列入口点:
open(9E)
close(9E)
strategy(9E)
print(9E)
可根据需要将其中一些入口点替换为 nodev(9F) 或 nulldev(9F)。