1.模块参数
/*
*
* 说明:用于演示模块参数的基本使用方法,加载该模块
* 时,在命令行中添加val=xxx,则在控制台中将会
* 打印出对应的参数值,否则打印0。
*/
#include <linux/init.h>
#include <linux/kernel.h>
#include <linux/module.h>
static int val = 0;
/*
* 模块的入口函数没有参数,要在模块加载时指定某些特定
* 的参数,需要通过module_param宏来进行相应处理。后面
* 的0表示权限,通常设为0即可。
*/
module_param(val, int, 0);
static int __init fsmod_init(void)
{
printk(KERN_INFO "Hello, Farsight!\n");
printk(KERN_INFO "val = %d\n", val);
return 0;
}
static void __exit fsmod_exit(void)
{
printk(KERN_INFO "Goodbye, Farsight!\n");
}
module_init(fsmod_init);
module_exit(fsmod_exit);
MODULE_LICENSE("Dual BSD/GPL");
MODULE_AUTHOR("xxxx <[email protected]>");
MODULE_DESCRIPTION("This is an example for linux driver module");/*
*
* 说明:用于演示模块参数的基本使用方法,加载该模块