Linux设备文件的创建

1. 创建设备文件的两种方式

(1)手动创建:mknod命令

在驱动程序insmod成功之后,通过mknod命令手动创建设备文件至/dev目录下:mknod /dev/xxx c 主设备号 次设备号。("c"表示字符设备、"b"表示块设备、"p"表示网络设备)

mknod

mknod -m 600 /dev/spidev1.0 c 153 0

上面这条命令创建了spidev1.0设备,-m 参数指定所创建设备的基本权限,spidev1.0是设备名称,c代表是字符设备,相应的块设备用b表示,153是主编号,0是次编号。
Linux设备文件的创建_第1张图片

(2)自动创建设备文件:mdev

在设备驱动注册到系统后,调用class_create为该设备在/sys/class目录下创建一个设备类,再调用device_create函数为每个设备创建对应的设备,并通过uevent机制调用mdev(嵌入式linux由busybox提供)来调用mknod创建设备文件至/dev目录下。

2. 自动创建设备文件过程分析

struct class和struct device则通过sysfs向用户层提供信息。

class_private是class的私有结构,class通

你可能感兴趣的:(驱动开发,linux)