linux-kernel之cdev_add() 实际上是做什么的在向内核注册设备方面

rubylouvre 阅读:21 2025-06-02 22:19:02 评论:0

cdev_add() 实际上是做什么的?我问的是向内核注册设备的条款。

它是否在某个由主要和次要编号索引的映射中添加指向 cdev 结构的指针?当您说设备已添加/注册到内核时,这究竟是如何发生的。我想知道 cdev_add 采取哪些步骤在正在运行的内核中注册设备。我们使用 mknod 命令为用户空间创建一个节点。甚至这个命令也使用主要和次要编号进行映射。注册也做类似的事情吗?

请您参考如下方法:

您可以阅读 Linux Device Driver 。它有点旧,但主要思想是相同的。很难用几行代码来解释像 cdev_add() 这样的简单操作以及周围的所有内容。

我建议你阅读本书和源代码。如果您在浏览源代码时遇到困难,可以使用一些标记系统,如 etags + emacs 或 eclipse 索引器。


标签:linux
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号