【问题标题】:OracleSolaris 11.2 -- character device in /dev/*Oracle Solaris 11.2 -- /dev/* 中的字符设备
【发布时间】:2015-07-09 03:29:57
【问题描述】:

通常在 Linux PCI 驱动程序中可能会向用户空间公开一个控制接口 通过字符设备,例如/dev/drv_ctl,用户应用程序可以 在打开的文件描述符上使用ioctl() 读/写 I/O 控制命令。

在 Linux 中,我们使用 register_chrdev() 内核 API 创建它。

我希望在 Solaris 上具有相同或相似的机制和行为,但似乎在 Solaris 上它的工作方式略有不同; DDI 例程ddi_create_minor_node() 需要一个节点类型来指示音频、块、网络等设备,这对我来说看起来很模糊,例如加密 PCI 设备属于什么类型?

另外,ddi_create_minor_node() 似乎在/devices/* 下而不是/dev/* 下创建了一个节点

如果有人能澄清我的疑问并指出正确的方向,我将不胜感激。

谢谢。

【问题讨论】:

    标签: solaris device-driver opensolaris


    【解决方案1】:

    通常您自己在 /dev 下创建一个符号链接,使用对您有用的名称。这将指向您通过调用ddi_create_minor_node() 创建的实际/devices 路径。您将在<sys/sunddi.h> 中找到 ddi 节点类型列表;对于加密设备(那是什么?),您可能需要 DDI_PSEUDO。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-12-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-24
      • 2016-01-11
      相关资源
      最近更新 更多