文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>在一个模块中调用另外一个模块中的函数【实例】

在一个模块中调用另外一个模块中的函数【实例】

时间:2009-04-07  来源:wxju168

最简单的示例程序,写两个模块,分别为A和B,在A中导出了一些函数,而在B中使用A导出的函数。模块都使用GPL。
两个模块的源码如下:
C/C++ code
 // Module A (mod_a.c) #include<linux/init.h> #include<linux/module.h> #include<linux/kernel.h> static int func1(void) { printk("In Func: %s...\n",__func__); return 0; } // Export symbol func1 EXPORT_SYMBOL(func1); static int __init hello_init(void) { printk("Module 1,Init!\n"); return 0; } static void __exit hello_exit(void) { printk("Module 1,Exit!\n"); } module_init(hello_init); module_exit(hello_exit);  


C/C++ code
 // Module B (mod_b.c) #include<linux/init.h> #include<linux/kernel.h> #include<linux/module.h> static int func2(void) { extern int func1(void); func1(); printk("In Func: %s...\n",__func__); return 0; } static int __init hello_init(void) { printk("Module 2,Init!\n"); func2(); return 0; } static void __exit hello_exit(void) { printk("Module 2,Exit!\n"); } module_init(hello_init); module_exit(hello_exit);  


Makefile for Module A
BatchFile code
 obj-m += mod1.o mod1-y := mod_a.o KVERSION = $(shell uname -r) all: make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules clean: make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean rm -f *.o *.ko *.cmd  


Makefile for Module B
BatchFile code
 obj-m += mod2.o mod2-y := mod_b.o KVERSION = $(shell uname -r) all: make -C /lib/modules/$(KVERSION)/build M=$(PWD) modules clean: make -C /lib/modules/$(KVERSION)/build M=$(PWD) clean rm -f *.o *.ko *.cmd  

相关阅读 更多 +
排行榜 更多 +
木头人挑战游戏

木头人挑战游戏

休闲益智 下载
荒野神枪手

荒野神枪手

休闲益智 下载
步步通行

步步通行

学习教育 下载