內核熱patch

以下代碼是一個內核patchhtml

#include <linux/init.h>
#include <linux/module.h>
#include <linux/moduleparam.h>

MODULE_LICENSE("Dual BSD/GPL");

static char *who= "world";
static int times = 1;

module_param(times,int,S_IRUSR);
module_param(who,charp,S_IRUSR);

static int hello_init(void)
{
    int i;
    for(i=0;i<times;i++)
        printk(KERN_ALERT "(%d) hello, %s!\n",i,who);
    return 0;
}

static void hello_exit(void)
{
    printk(KERN_ALERT"Goodbye, %s!\n",who);
}

module_init(hello_init);
module_exit(hello_exit);

編譯後,加載該代碼用命令linux

insmod hello who="world" times=5

卸載該代碼用學習

rmmod hello

TODOcode

學習如何編譯
閱讀 http://tldp.org/LDP/lkmpg/2.6/html/lkmpg.htmlhtm

相關文章
相關標籤/搜索