艺术的追求从编程开始

C/C++/UNIX/PYTHON/ALGORITHM

导航

linux如何添加内核模块

1.编写模块代码:

  简单例子:

#include<linux/kernel.h>
#include<linux/module.h>
#Inlcude<linux/init.h>
static int __init hello_init(void)
{
  printk(KERN_INFO "Hello world\n");
  return 0;
}
static void __exit hello_exit(void);
{
  printk(KERN_INFO "Goodbye world\n");
}
module_init(hello_init);
module_exit(hello_exit);

2.编写Makefile

obj-m:=hello.o
all:
  make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) modules
  make -C /lib/modules/$(shell uname -r)/build M=$(shell pwd) clean

3.运行make all 生成hello.ko文件

4.运行命令insmod ./hello.ko装载模块,运行lsmod查看已经装载的模块

5.运行rmmod hello 卸载模块

6.printk()函数有8个日志级别,运行dmesg命令查看printk的输出缓冲区

 

posted on 2012-05-01 15:53  Rambo.Wang  阅读(706)  评论(0编辑  收藏  举报