原文链接:https://www.cnblogs.com/nerohwang/p/3621316.html

hello.c 文件:

#include <linux/kernel.h> /*Needed by all modules*/
#include <linux/module.h> /*Needed for KERN_* */
#include <linux/init.h> /* Needed for the macros */ MODULE_LICENSE("GPL"); static int year=; static int hello_init(void)
{
printk(KERN_WARNING "Hello kernel, it's %d!\n",year);
return ;
} static void hello_exit(void)
{
printk("Bye, kernel!\n");
} /* main module function*/
module_init(hello_init);
module_exit(hello_exit);

Makefile文件:

obj-m := hello.o

all :
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) modules clean:
$(MAKE) -C /lib/modules/$(shell uname -r)/build M=$(PWD) clean

测试结果:

[root@controller test]# make CONFIG_STACK_VALIDATION=
make -C /lib/modules/3.10.-.el7.x86_64/build M=/root/test modules
make[]: Entering directory `/usr/src/kernels/3.10.-.el7.x86_64'
CC [M] /root/test/hello.o
Building modules, stage .
MODPOST modules
CC /root/test/hello.mod.o
LD [M] /root/test/hello.ko
make[]: Leaving directory `/usr/src/kernels/3.10.-.el7.x86_64'

查看编译后文件:

[root@controller test]# ll
total
-rw-r--r-- root root Nov : hello.c
-rw-r--r-- root root Nov : hello.ko
-rw-r--r-- root root Nov : hello.mod.c
-rw-r--r-- root root Nov : hello.mod.o
-rw-r--r-- root root Nov : hello.o
-rw-r--r-- root root Nov : Makefile
-rw-r--r-- root root Nov : modules.order
-rw-r--r-- root root Nov : Module.symvers

最新文章

  1. 10月24日下午PHP封装
  2. ✡ leetcode 169. Majority Element 求出现次数最多的数 --------- java
  3. 兼容IE,Firefox,Opera等浏览器的添加到收藏夹js代码实现
  4. iOS Instruments内存检测使用
  5. jwplayer去Logo、自定义公司信息、限制拖动
  6. “_In_opt_z_”: 未声明的标识符
  7. JUnit4在Eclipse中的使用
  8. 如何开发webpack plugin
  9. Java 多线程 - Synchronized关键字
  10. Codechef CNTL Counting is life 生成函数
  11. 【转】python模块分析之typing(三)
  12. Python 模块collections
  13. Eclipse导入jdk的源码
  14. Shell中while循环的done 后接一个重定向&lt;
  15. python day 07-数据类型补充,集合,深浅拷贝
  16. HttpClient 通信工具类
  17. 从本机IIS中管理 远程服务器 IIS
  18. js 注意点
  19. JavaScript父子页面之间的相互调用
  20. IIs8 svc

热门文章

  1. PHP代码实现二分法查找
  2. C++中string类型的find 函数
  3. 02_HTML02
  4. PHP str_word_count() 函数
  5. UOJ 422 [集训队作业2018] 小Z的礼物 min-max容斥 期望 轮廓线dp
  6. 6.18 省选模拟赛 树 倍增 LCT
  7. Golang SQL连接池梳理
  8. MR程序的几种提交运行模式
  9. SpringBoot之多模块项目
  10. .NETCore中实现ObjectId反解