【Linux操作系统】Linux内核插入卸载模块

来源:互联网 发布:淘宝现金红包怎么领取 编辑:程序博客网 时间:2024/05/15 23:44
  • 打开终端
  • 输入:mkdir moduleTest,创建一个放置文件的文件夹
  • 进入文件夹,cd moduleTest
  • 创建文件:nano hello.c,文件内容如下:
#include <linux/init.h>#include <linux/module.h>MODULE_LICENSE("Dual BSD/GPL");static int hello_init(void){    printk(KERN_ALERT"Hello, xiaoming\n");    return 0;}static void hello_exit(void){    printk(KERN_ALERT"Goodbye, xiaoming\n");}module_init(hello_init);module_exit(hello_exit);
  • 创建Makefile文件:nano Makefile,代码如下:
obj-m := hello.oKERNELBUILD :=/usr/src/linux-headers-3.11.0-12-genericdefault:    make -C $(KERNELBUILD) M=$(shell pwd) modulesclean:    rm -rf *.o  *.ko *.mod.c .*.cmd .tmp_versions *.order *.symvers

里面的路径因Linux版本而异,可以自己去对应路径查看一下

  • 编译,输入 make,编译过程:
    这里写图片描述

  • 插入模块:sudo insmod hello.ko

  • 删除模块:sudo rmmod hello.ko

  • 查看结果:dmesg | grep “xiaoming”
    这里写图片描述
    dmesg查看系统内核模块信息

1 0
原创粉丝点击