如何设置Linux模块的module_param默认值

avatar
作者
筋斗云
阅读量:0

在Linux内核模块中,module_param宏用于定义模块参数

  1. 首先,在模块源代码中包含必要的头文件:
#include<linux/module.h> #include<linux/kernel.h> 
  1. 定义一个变量,该变量将存储模块参数的值。例如,我们可以定义一个名为my_param的整数变量,并为其分配一个默认值:
static int my_param = 42; 
  1. 使用module_param宏将此变量导出为模块参数。为了设置默认值,我们已经在第2步中为变量分配了一个值。module_param宏的第一个参数是变量名,第二个参数是变量类型,第三个参数是权限(通常为S_IRUGO,表示只读):
module_param(my_param, int, S_IRUGO); 
  1. 编译并加载模块。现在,当模块加载时,my_param将具有默认值42。

  2. 若要在加载模块时更改my_param的值,可以在insmod命令后面添加my_param=<new_value>。例如,要将my_param设置为100,可以运行以下命令:

sudo insmod your_module.ko my_param=100 

这样,在模块加载时,my_param将具有值100,而不是默认值42。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!