Johannes 《Linux内核模块与设备驱动开发:编写Linux驱动程序》(4) devicefile 设备号相关

视频资料:https://www.bilibili.com/video/BV18SE26cEjn?spm_id_from=333.788.videopod.sections&vd_source=92b7efa4daa5bb4fdcdc9f2db97c307b&p=4

There is no C files in lesson4.

查看 Linux 系统的 /dev/ 文件夹,查看设备文件和文本文件的不同。实际上 /dev/ 下的设备文件大多都是虚拟文件,关闭树莓派之后,PC 查 SD 卡可以看到 /dev/ 文件夹大多是空的。

ls -lh 查看文件属性,第一个 d/c/b 代表不同意思。

c 代表字符设备文件,b 代表块设备文件,d 则是文件夹。在 Linux 中一切设备都是文件,系统用文件的开关读写抽象了设备的操作,所以 <linux/fs.h> 中的 file_operation 至关重要。

然后设备号,包括主设备号和次设备号。举例 /dev/gpiochip0 的主设备号 254,次设备号 0。cat /proc/devices 可以查看系统所有的设备的设备号。

Linux 内核驱动和设备是通过设备号来联系的,不是通过设备的名字。实际上也可以通过设备树 probe 来联系。

mknod 生成设备节点,

mknod 实际上是较早版本的设备文件的方法,现在已经不推荐了。故而个人建议了解即可。

整个视频涉及的都是 Linux 的基本概念,不复杂,但是要记住概念。

相关推荐
Chenyu_3105 小时前
DPDK、TC 和 XDP:Linux 高性能网络到底在优化什么
linux·服务器·网络·缓存
qqxiaoxingxing5 小时前
HR重复性工作自动化落地指南:先梳理任务边界,再选工具
运维·自动化
王琦03186 小时前
持续集成持续交付企业示例
运维·ci/cd
Lsetea6 小时前
SSL证书指纹相同但文件哈希不同:PEM、DER与公钥摘要怎么比
运维·https·ssl证书·openssl·证书链
wtblszn6 小时前
废气处理余热回收设备远程运维系统方案
运维
陈让然6 小时前
WSL 桥接设置静态IP(快速)
linux·网络·ubuntu
乔旭伟6 小时前
Linux 服务器备份实战:一致性快照、日志归档与恢复演练
linux·运维·服务器
乔旭伟7 小时前
Linux 服务器安全加固实战:SSH、防火墙、补丁与入侵排查
linux·服务器·安全
cpolar技术支持7 小时前
把配置发出去怕带出密钥?先把含凭据配置转成脱敏只读快照,用 cpolar 给同事核对差异
运维·python·内网穿透·cpolar·配置脱敏
我不会起名字3227 小时前
Redis 突然只能读不能写:MISCONF 报错的 3 类触发条件与 4 步恢复
运维·redis·持久化·排查·misconf