module_param_array


对module_param_array(name,type,num,perm)产生疑问,尤其对num参数的作用产生疑问,

搜索得到结果如下。

static int param_array [ ] = {0 ,0 ,0 ,0 } ;
  1. static int param_array_nr;
  2. module_param_array(param_array , int , &param_array_nr , S_IRUGO)
  3.   
  4.  for (i = 0; i < param_array_nr; i++)    {
  5.         printk(KERN_ALERT "param_array[%d] : %d \n", i, param_array[i]);
  1. root@tekkaman:~# insmod hello_linux.ko param_array=9,8,7,6
  2. Hello, Linux !
  3. (0) Hello, Tekkaman
  4. param_array[0] : 9
  5. param_array[1] : 8
  6. param_array[2] : 7
  7. param_array[3] : 6
  8. root@tekkaman:~# rmmod hello_linux.ko
  9. Goodbye, Linux !
  10. root@tekkaman:~# insmod hello_linux.ko param_array=9,8,7,6,5
  11. param_array: can only take 4 arguments
     
     module_param_array
(param_array , int , &param_array_nr , S_IRUGO);

&param_array_nr是用于保存模块加载时输 入数组参数的成员数目的。

以前我错误的以为这个是输入参数,

其实这个用于内核模块加载器输出的。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值