歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> 關於Linux >> Ubuntu 12.04 LTS建立內核樹

Ubuntu 12.04 LTS建立內核樹

日期:2017/3/1 14:44:27   编辑:關於Linux
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