上层应用通过设备节点访问对应的设备。
部分驱动要和上层通信,都需要生成设备节点,上层应用通过一套标准的接口函数调用设备节点就可以控制底层以及和底层通信。本文就给大家介绍最简单易用的杂项设备节点如何生成。
在虚拟机的 Ubuntu 系统上,如下图所示,使用命令“cat /proc/misc”,可以查看到 PC机 Ubuntu 系统的杂项设备。
Linux系统中主设备号只有 256 个,设备又非常多,所以引入了子设备号。其中杂项设备的主设备号是 10,在任何 Linux 系统中它都是固定的。
生成设备节点流程:
1、添加头文件;
2、定义hello_open、hello_ioctl、hello_release等函数;
3、定义file_operations结构体hello_ops;
4、定义miscdevice结构体hello_dev;