本文目的:在Linux驱动学习中,记录一些怕遗忘的东东
实验环境:Ubuntu14.04LTS
1. Linux 设备号分配
内核源代码中,Documents/devices.txt文件中描述Linux设备号分配情况,最新版本在
根据Ubuntu上实验,cat /proc/devices后,对照devices.txt描述发现:devices.txt中最左面的数字为majoy设备号,且可以有重复(比如7既可以是char也可以是block),而使用
dev_t devno = MKDEV(majoy, minor);
后再使用
if ( majoy )
ret = register_chrdev_region(devno, DEVICE_NUM, "name");
else
ret = alloc_chrdev_region(&devno, 0, DEVICE_NUM, "name");
注册char设备时,注册的主设备号majoy会出现在/proc/devices的Character devices上