2.3 摄像头驱动_摄像头驱动程序分析

学习目标:熟悉vivi的调用过程,分析vivi程序源码的ioctl函数;

一、vivi虚拟视频驱动测试方法

当我们接上usb摄像头设备时,系统会自动给我们安装对应的usb设备驱动程序。如果下次直接测试vivi驱动或者使用自己编译的vivi驱动时,可能会提示缺少其它函数。因此,可以使用以下测试方法:

1. 先安装系统自带的vivi驱动和它所有依赖的所有驱动:# sudo modprobe vivi ;
2. 卸载原有的vivi驱动 :# sudo rmmod vivi ;
3.装载自己的驱动 :# sudo insmod ./vivi.ko ;
之后,可以使用命令:# ls /dev/video* ,看到vivi虚拟出来的视频设备设备节点 /dev/video0 。

二、分析vivi驱动的过程

方法一:通过使用source insight从xawtv源码的main函数开始分析。但由于程序中还执行了许多无关的功能,分析过程会比较漫长;

方法二:使用strace命令跟踪调用过程 # strace -o xawtv.txt xawtv  生成了调用过程的描述摘要,保存在:xawtv.txt。

打开文档可以看到:

通过搜索/dev/video0设备节点,查看关于vivi调用部分:

猜你喜欢

转载自www.cnblogs.com/lxl-lennie/p/10281276.html