与`mknod`相反的是什么?

mer*_*011 35 command-line kernel-module linux-device-driver linux-kernel mknod

我正在学习从内核模块编程指南编写字符设备驱动程序,并用于mknod创建一个节点/dev以与我的驱动程序通信.

但是,在检查联机帮助页并观察这rmnod是一个不存在的命令之后,我找不到任何明显的删除方法.

什么是扭转效果mknod并正确删除创建的节点的正确方法/dev

100*_*tes 37

正确的命令只是rm:)

创建的设备节点mknod只是一个包含设备主要和次要编号的文件.当您第一次访问该文件时,Linux会查找一个广告主要/次要的驱动程序并加载它.然后,您的驱动程序将处理该文件的所有I/O.

当您删除设备节点时,通常的Un*x文件行为适用:Linux将等待,直到没有对该文件的更多引用,然后它将从磁盘中删除.

你的司机并没有真正注意到这一点.Linux不会自动卸载模块.您的驱动程序将不再接收任何请求.但是,如果有人重新创建设备节点,它就会准备就绪.