第八节、驱动模块传参数
本节用于介绍驱动模块传参数
1、什么是驱动传参驱动传参就是传递参数给我们的驱动。
举例:
insmod beep.ko a=1
2、驱动传参数有什么作用呢?
- 设置驱动的相关参数,比如设置缓冲区的大小
- 设置安全校验,防止我们写的驱动被入盗用
3、怎么给驱动传参数?
传递普通的参数
比如char,int类型的
文件位置路径:include/linux/moduleparam.h
1 |
|
加载模块测试
1 | root@localhost:~# insmod parameter.ko a=3 |
加载完模块之后可以在sys/module下面生成对应模块名称的目录,在该目录下面的parameters目录内可以看到我们给驱动传递的参数
可以查看权限以及值
1 | root@localhost:~# ls -l /sys/module/parameter/parameters/ |
传递数组
文件位置路径:include/linux/moduleparam.h
1 |
|
加载模块测试
1 | root@localhost:~# insmod parameter.ko b=1,2,3,4,5 |
3、如果我们多传递进去参数,会发什么什么?
会报错