1、通过proc filesystem
2、通过sysfs
3、ioctol
4、通过module_param(debug, int, 0644);
demo如下
#include <linux/module.h>
#include <linux/init.h>
static int debug = 1;
module_param(debug, int, 0644);
MODULE_PARM_DESC(debug, "enable debugging information");
#define dprintk(args...) \
if (debug) { \
printk(KERN_DEBUG args); \
}
static int mytest = 100;
module_param(mytest, int, 0644);
MODULE_PARM_DESC(mytest, "test for module parameter");
static int __init my_test_init(void)
{
dprintk("my first kernel module init\n");
dprintk("module parameter=%d\n", mytest);
return 0;
}
static void __exit my_test_exit(void)
{
printk("goodbye\n");
}
module_init(my_test_init);
module_exit(my_test_exit);
MODULE_LICENSE("GPL");
MODULE_AUTHOR("XXXX");
MODULE_DESCRIPTION("my test kernel module");
MODULE_ALIAS("mytest");