LDD读书笔记第六章-高级字符驱动程序操作(一)
ioctl
ioctl是用于控制设备的公共接口,设备除了需要处理读取写入之外还需要一些相关控制信息。这些控制信息就是由ioctl调用来完成
用户空间的ioctl原型为
1 | int ioctl(int fd,unsigned long cmd,...); |
后面的“…“表示函数的参数个数是可变的(如printf)。
内核空间的ioctl原型
1 2 | int (*ioctl)(struct inode *inode,struct file *filp. unsigned int cmd,unsigned long arg); |
cmd 为指令编号,后面讲述。
arg 为参数。可以是整数也可以是指针,但是内核会以unsigned long形式传送导函数里。
[阅读全文] »
LDD读书笔记第一章-设备驱动程序简介
第一章介绍性的东西。
没有什么知识点。
上传ldd3(linux device drivers 3)的全部配套源码
