一.理论分析
1.现实生活中,对一个设备除了能够读写之外,我们还希望能够对设备进行控制,比如说LED的亮灭,电机的转动等。
2.一般希望能从应用程序传递命令给内核从而使得能够调用控制函数实现不同的控制。
3.在用户空间,使用ioctl系统调用来控制设备:(应用程序接口)
int ioctl(int fd,unsigned long cmd,...);
4.重点是第二个参数cmd,他实质上就是一个整数。分成几块构成。
5.在内核空间,相应的设备函数应该是(设备驱动方法)
cmd是通过应用程序传递进来的。
二.定义命令
1.命令实质是一个整数
2.分为几块构成,类型,序号,参数传递方向,参数大小。
3.
4.一般unlocked_ioctl都是以一个switch case语句来进行命令的区分和实现相应的控制功能。
】
应用程序
时间: 2024-10-03 02:00:11