歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

Ubuntu 12.04 LTS建立內核樹

Ubuntu 12.04 LTS建立內核樹    本人的系統為ubuntu 12.04 LTS,具體建立的步驟如下:   (1) 查看自身系統的內核版本,指令為:uname -r,輸出的信息:         **3.8.0-29-generic**        說明內核版本為3.8.0。   (2) 在目錄/usr/src目錄下發現有一下文件:         **linux-headers-3.8.0-29        linux-headers-3.8.0-29-generic**        從文件名可以看出,這兩個目錄下只有代碼的頭文件。   (3) 測試只有頭文件是否可以動態加載自己的helloworld模塊(生成方法可以參考《linux 設備驅動開發》)。   (4) hello.c文件內容:                 #include <linux/init.h>                 #include <linux/module.h>                   MODULE_LICENSE("Dual BSD/GPL");                   static int hello_init(void)                 {                     printk(KERN_EMERG "Hello world\n");                     return 0;                 }                   static int hello_exit(void)                 {                     printk(KERN_EMERG "Goodbye, hello world!\n");                     return 0;                 }                 module_init(hello_init);                 module_exit(hello_exit);            Makefile文件內容:                 ifneq ($(KERNELRELEASE),)                 obj-m :=hello.o                 else                        KDIR := /lib/modules/3.8.0-29-generic/build                 all:                        make -C $(KDIR) M=$(PWD) modules                 clean:                         rm -f *.ko *.o *.mod *.mod.c *sysmvers                 endif          (5)  運行:sudo insmod hello.ko    sudo rmmod hello.ko 終端沒有反應,但是在查看 /var/log/syslog中發現了輸出信息:說明模塊已經被內核成功加載。  
Copyright © Linux教程網 All Rights Reserved