千家信息网

如何给Linux内核代码传参数

发表于:2025-01-16 作者:千家信息网编辑
千家信息网最后更新 2025年01月16日,这篇文章给大家介绍Linux内核代码,传参数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。一、源代码1.1 temp_main.c#include #include #inclu
千家信息网最后更新 2025年01月16日如何给Linux内核代码传参数

这篇文章给大家介绍Linux内核代码,传参数,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

一、源代码

1.1 temp_main.c

#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define LOG_INFO(fmt,args...) printk(KERN_INFO fmt, ##args) static int int_var = 0;static const char *str_var = "default";static int int_arr[6];int narr;module_param(int_var, int, 0644);MODULE_PARM_DESC(int_var, "A integer variable");module_param(str_var, charp, 0644);MODULE_PARM_DESC(str_var, "A string variable");module_param_array(int_arr, int, &narr, 0644);MODULE_PARM_DESC(int_arr, "A integer array");static int init_marker(void){    int i;    LOG_INFO("int_var: %d.\n", int_var);    LOG_INFO("str_var: %s.\n", str_var);    for (i=0; i

1.2 Makefile

obj-m := temp.otemp-objs := temp_main.oKERNELDIR = /lib/modules/$(shell uname -r)/buildPWD := $(shell pwd)default:        $(MAKE) -C $(KERNELDIR) M=$(PWD) modulesclean:          $(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) cleaninstall:        cp temp.ko ../

二、运行

insmod temp.ko int_var=123 str_var=helloworld int_arr=100,200,300

三、运行结果

关于Linux内核代码,传参数就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

0