2.4內核動態模塊基本使用方式

 module.c

#define MODULE    //一定要定義此宏
#include <linux/kmod.h>
#include <linux/module.h>
#include <linux/init.h>
#include <linux/kernel.h>

static int __init hello_init(void)
{
    printk("***************\n");
    return 0;

}

static void __exit hello_exit(void)
{
   return;
}

module_init(hello_init);
module_exit(hello_exit);

MODULE_LICENSE("GPL");

Makefile:

CC=gcc
VERSION := $(shell uname -r)
CFLAG := -I/usr/src/linux-$(VERSION)/include   -D__KERNEL__ -D__MODULE -O -Wall
OBJ=module

$(OBJ).o:$(OBJ).c
        $(CC) $(CFLAG) -c $(OBJ).c -o module.o

 

編譯生成的是module.o 注意和2.6的ko的區別

然後insmod module.o就可以將內核模塊加載上

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章