创建设备文件


前言

具体步骤

和上一篇的区别仅仅体现在代码上。

第一步:头文件增多了:

LICENSE保持不变即可:

第二步:声明以及编写文件接口函数

查看一下file_operations在Linux源码中的定义:https://elixir.bootlin.com/linux/v5.16/source/include/linux/fs.h#L2069

这些函数以及参数的类型要写对了,下边给函数指针赋值的时候才不会报错。

第三步:创建file_ops函数表

第四步:在init函数中注册字符设备,在exit函数中销毁字符设备:

第五步:编译

效果测试

用我们得到的这个值248,创建设备文件:

之后便可以在/dev目录下找到这个设备文件:

cat一下这个文件:

可以看到我们成功触发了open和read接口:

自动生成设备

分四步走:

查看结果:

参考

https://zhuanlan.zhihu.com/p/420194002


文章作者: q1ming
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 q1ming !
  目录