加载驱动时传参——讯为笔记
加载驱动传参
在加载驱动的时候传递给驱动的参数
例如:insmod beep.ko a=1
常见的用途:
- 设置驱动的相关参数,比如设置缓冲区的大小
- 设置安全校验,防止我们写的驱动被人盗用
传参方式
//普通类型的参数,char,int
module_param(name, type, perm);
//name 参数名称
//type 参数类型
//perm 参数的读写权限
//数组
module_param_array(name, type, nump, perm);
//name 参数名称
//type 参数类型
//nump 数组个数
//perm 参数的读写权限
示例
static int a;
module_param(a, int, S_IRUSR);
static int arrbuf[5];
static int counta;
module_param_array(arrbuf, int, &counta, S_IRUSR);
......//驱动其他代码
#传参时
insmod xxx.ko a=1 arrbuf=1,2,3
#驱动即可得到a的值,arrbuf的[0][1][2]值,counta的值为3
#数组参数可以少写,不能多于驱动代码中定义的数组长度,多写加载会报错
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术