DID 是用户可配置的伪设备驱动程序,提供对基础磁盘、磁带和 CDROM 设备的访问权限。设备支持唯一的设备 ID 时,到设备的多个路径是根据该设备的设备 ID 确定的。即使多个路径可用于同一个设备 ID,也只能将一个 DID 名称指定给实际设备。
在群集环境中,无论特定物理设备与多个主机或控制器的连接如何,它都具有相同的 DID 名称。但这仅适用于支持全局唯一设备标识符的设备(如物理磁盘)。
对于 DID 在 /dev/did 下管理的每种类型的设备,DID 都为其维护并行目录。这些目录中的设备的行为与相应的非 DID 对象的行为相同。其中包括维护磁盘和 CD-ROM 设备的分片以及不同磁带设备行为的名称。通过 /dev/did/dsk 和 /dev/did/rdsk 还支持磁盘的原始设备和块设备访问权限。
在任何时间点,I/O 仅支持一个设备路径。当前不通过 DID 提供任何多路径支持。
在可以使用 DID 设备之前,该设备必须先通过 scdidadm(1M) 命令进行初始化。
DID 驱动程序维护管理节点以及每个 DID 次要设备的节点。
管理节点不支持任何用户 IOCtl。
针对 DID 设备节点(如 /dev/did/rdsk/d0s2)调用DKIOCINFO ioctl 时才支持该 ioctl。
所有其他 IOCtl 已直接传递给以下驱动程序。
块磁盘或 CD-ROM 设备,其中 n 是设备编号,m 是分片编号
原始磁盘或 CD-ROM 设备,其中 n 是设备编号,m 是分片编号
磁带设备,其中 n 是设备编号
管理设备
驱动程序模块
驱动程序配置文件
非群集系统的 cldevice 配置文件
cldevice(1CL) 维护群集系统 CCR 中的配置
Intro(1CL)、cldevice(1CL)、devfsadm(1M)
为了能够减少在设备热插拔期间的开销,DID 为组中的设备创建名称。对于磁盘,设备名称是在 /dev/did/dsk 和 /dev/did/rdsk 中创建的,一次 100 个磁盘(作为一组)。对于磁带,设备名称是在 /dev/did/rmt 中创建的,一次 10 个磁盘(作为一组)。如果添加到群集中的设备比当前名称处理的设备多,则将创建另一个组。