Linux驱动开发
zhengqijun_
You can do it! No can no BB!
展开
-
Linux 字符设备驱动结构(一)—— cdev 结构体、设备号相关知识解析[转载]
一、字符设备基础知识1、设备驱动分类 linux系统将设备分为3类:字符设备、块设备、网络设备。使用驱动程序:字符设备:是指只能一个字节一个字节读写的设备,不能随机读取设备内存中的某一数据,读取数据需要按照先后数据。字符设备是面向流的设备,常见的字符设备有鼠标、键盘、串口、控制台和LED设备等。块设备:是指可以从设备的任意位置读取一定长度数据的设备。块设备包括硬盘、磁盘、U盘和SD卡等。...转载 2018-07-09 00:05:06 · 400 阅读 · 0 评论 -
Linux 字符设备驱动结构(二)—— 自动创建设备节点[转载]
上一篇我们介绍到创建设备文件的方法,利用cat /proc/devices查看申请到的设备名,设备号。第一种是使用mknod手工创建:mknod filename type major minor第二种是自动创建设备节点:利用udev(mdev)来实现设备文件的自动创建,首先应保证支持udev(mdev),由busybox配置。 具体udev相关知识这里不详细阐述,可以移步L...转载 2018-07-09 00:09:26 · 236 阅读 · 0 评论 -
Linux 字符设备驱动结构(三)—— file、inode结构体及chardevs数组等相关知识解析[转载]
前面我们学习了字符设备结构体cdev Linux 字符设备驱动开发 (一)—— 字符设备驱动结构(上) 下面继续学习字符设备另外几个重要的数据结构。 先看下面这张图,这是Linux 中虚拟文件系统、一般的设备文件与设备驱动程序值间的函数调用关系; 上面这张图展现了一个应用程序调用字符设备驱动的过程, 在设备驱动程序的设计中,一般而言,会关心 file 和 ...转载 2018-07-09 00:12:11 · 444 阅读 · 0 评论 -
Linux 字符设备驱动结构(四)—— file_operations 结构体知识解析[转载]
前面在 Linux 字符设备驱动开发基础 (三)—— 字符设备驱动结构(中) ,我们已经介绍了两种重要的数据结构 struct inode{...}与 struct file{...} ,下面来介绍另一个比较重要数据结构struct _file_operationsstruct _file_operations在Fs.h这个文件里面被定义的,如下所示:struct file_ope...转载 2018-07-09 00:14:04 · 354 阅读 · 0 评论