您的位置:首页 > 其它

内核模块参数设计

2015-08-26 15:26 218 查看
通过module_param指定模块参数,模块参数用于在加载模块时传递参数给模块

module_param(name, type, perm)

name:名字

type:类型

perm:权限

#include <linux/module.h>

#include <linux/init.h>

MODULE_LICENSE("GPL");

MODULE_AUTHOR("EmbedSky");

MODULE_DESCRIPTION("Hello world module");

static char *name = "Guwhao";

static int age = 30;

module_param(age, int, S_IRUGO);

module_param(name, charp, S_IRUGO);

static int hello_init(void)

{

    printk("<0>"" Name:%s\n", name);

    printk(KERN_EMERG" Age:%d\n", age);

    printk(KERN_ERR "hello world!\n");

    return 0;

}

static void hello_exit(void)

{

    printk(KERN_EMERG "hello exit!\n");

}

module_init(hello_init);

module_exit(hello_exit);

在输入的时候加上  age=12 将改变age的值

导出内核模块符号

EXPORT_SYMBOL(*****);

EXPORT_SYMBOL_GPL(*****);

那么其他模块可以使用这个符号

uname -r 查看当前运行的内核版本
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: