Linux多文件的内核模块程序Hello World
///start.c#include <linux/module.h>
#include <linux/kernel.h>MODULE_LICENSE("GPL");int init_module(void) { printk("<1>Hello World!"); return 0; }///stop.c/#include <linux/module.h> #include <linux/kernel.h> #define __NO_VERSION__ #include <linux/version.h>MODULE_LICENSE("GPL"); void cleanup_module(void) { printk("<1>Good Bye!"); } ///makefileCC=gcc MODCFLAGS := -Wall -DMODULE -D__KERNEL__ -DLINUXhello.o:start.o stop.o ld -m elf_i386 -r -o hello.o start.o stop.o start.o:start.c $(CC) $(MODCFLAGS) -c start.cstop.o:stop.c $(CC) $(MODCFLAGS) -c stop.c /// /// 问题:若是在图形界面下注册模块,可能看不到printk输出的信息 这可以用dmesg的方法来输出查看 |
Linux多文件的内核模块程序Hello World
最新推荐文章于 2023-07-02 09:53:55 发布