阅读背景:

linux驱动开发——模块基础知识

来源:互联网 

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");/*
 *
 * 说明:用于演示模块参数的基本使用方法,加载该模块
 



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: