第 8 章。中层,统一层

目录
8.1. 启动参数
8.2. 模块参数
8.3. proc 接口

SCSI 中层对于 SCSI 子系统的所有用法都是通用的。可能它最重要的作用是定义所有其他 SCSI 驱动程序使用的内部接口和服务。本文档未讨论这些内部机制 [参见参考文献:W2]。

主要的内核配置参数 “CONFIG_SCSI” 决定了中层是内置的(当 “=y” 时)还是一个模块(当 “=m” 时)。如果 “CONFIG_SCSI=m”,则所有其他 SCSI 子系统驱动程序也必须是模块。

当中层作为模块构建时,它可能永远不需要显式加载,因为使用 'modprobe' 加载任何其他 SCSI 子系统模块将导致首先加载中层(如果尚未加载)。

如果某些上层和下层驱动程序没有要控制的设备,则它们不会(完全)加载。有时报告很明显,例如控制连接到并行端口的 zip 驱动器的 imm 驱动程序的情况

$ modprobe imm                                 
   imm.o: init_module: No such device
lsmod 将不会显示 “imm” 模块已加载。在其他情况下,结果更微妙。例如,如果 sg 驱动程序在没有(真实或伪)scsi 设备的系统中加载,则/proc/scsi/sg目录将不会出现。[当第一个 scsi 设备被识别时,它将被创建。]