如何从用户空间访问动态字符设备



内核中的 register_chrdev()函数登记一个字符设备:

int register_chrdev(unsigned  int  major,  const  char*name,
 struct file_operations*ops));

如果major0,则可以动态分配一个主要数字,并且寄存器功能将其返回。

现在,假设一个模块foo.ko想要使用具有动态主要数字的/dev/foo。用户空间如何学习将什么主要数字传递给mknod创建/dev/foo

一旦字符设备被动态主要编号注册,相应的信息将在/proc/devices中出现,因此可以通过用户空间应用程序/脚本检索,以创建适当的节点。

有关更好的示例,您可以参考Linux设备驱动程序(第三版),例如,在此页面上显示了要读取/proc/devices的脚本。

相关内容

  • 没有找到相关文章

最新更新