linux驅動開發--內核模塊參數
內核模塊參數,驗證小例子:
/** *Copyright (c) 2013.TianYuan *All rights reserved. * *文件名稱: Modparma.c *文件標識: 模塊參數的驗證 * *當前版本:1.0 *作者:wuyq * *取代版本:xxx *原作者:xxx *完成日期:2013-11-18 */ #include <linux/init.h> #include <linux/module.h> /*內核提供的機製:在用戶空間修改內核模塊中全局變量的值*/ /*安裝模塊的時候,可以指定參數的值:\ 如insmod modparam.ko mpshort=100 mpint=200 mpstring="nihao" mparray=300,400*/ /*ls /sys/module/modparam/parameters*/ /*cat mparray; 有權限的能夠寫echo 55 > mpshort;cat mpshort*/ MODULE_LICENSE("GPL"); /* 定義全局變量*/ static short mpshort = 1; static int mpint = 10; static char *mpstring = "hello"; static int mparray[2] = {100, 200}; /*模塊參數的聲明*/ module_param(mpshort ,short, S_IRWXU); module_param(mpint, int , S_IRUSR); module_param(mpstring, charp, 00400);/*char* */ module_param_array(mparray, int, NULL, 00400); static int __init modparam_init(void) { printk("mpshort = %d\n", mpshort); printk("mpint = %d\n", mpint); printk("mpstring = %s\n", mpstring); printk("mparray = %d, %d\n", mparray[0], mparray[1]); return 0; } static void __exit modparam_exit(void) { printk("mpshort = %d\n", mpshort); printk("mpint = %d\n", mpint); printk("mpstring = %s\n", mpstring); printk("mparray = %d, %d\n", mparray[0], mparray[1]); } module_init(modparam_init); module_exit(modparam_exit);
最後更新:2017-04-03 12:53:57