Ubuntu10 10下動態載入模組驅動的方法

2021-05-27 10:03:44 字數 930 閱讀 8296

放假就是舒服,可以隨心做點自己有興趣的東西。今天抽空玩了玩在ubuntu下動態載入模組,雖然這只是linux核心驅動學習中最最基礎的入門部分,但俗話說萬事開頭難,還是花費了我好一會兒時間才找到點頭緒。

1.在工作目錄下建立兩個檔案hello.c和makefile。

makefile:

ifneq ($(kernelrelease),)

obj-m := hello.o

else

kerneldir ?= /lib/modules/$(shell uname -r)/build

pwd := $(shell pwd)

default:

$(make) -c $(kerneldir) m=$(pwd) modules

endif

hello.c:

#include

#include

module_license("dual bsd/gpl");

static int hello_init(void)

static void hello_exit(void)

module_init(hello_init);

module_exit(hello_exit);

2. 在工作目錄下執行命令"make",注意執行許可權。這時就生成了hello.ko模組。

3.在工作目錄下執行載入模組命令"insmod ./hello.ko",這時printk的資訊並不會顯示,因為printk只在核心態起作用,但是可以檢視printk的列印資訊,命令是:"dmesg -c",這時就可以看到「hello world!」了,模組載入成功。

4.在工作目錄下執行解除安裝模組命令"rmmod hello",同樣再輸入:"dmesg -c",這時就可以看到"goodbye world!"了,模組解除安裝成功。

ubuntu10 10下搭建minigui平台

libminigui 1.6.10.tar.gz 這是minigui的原始碼 minigui res 1.6.10.tar.gz 這是minigui的資源包 在 home下建立minigui資料夾 將這倆個檔案複製到這個資料夾,解壓 安裝資源檔案 進入minigui res下 make instal...

修復ubuntu10 10啟動

我開啟磁碟管理工具,看看硬碟使用情況,發現有個1g大小的分割槽。覺得有這麼小的分割槽存在很不爽的。索性就刪了這個分割槽,我想把它合併到其他大的分割槽中,結果不能合併,應該是磁碟空間位址不連續造成的。真的有些掃興。重新開機,問題來了,系統不能引導了,提示grub rescue 不管輸入什麼命令,均提示...

Ubuntu 10 10 下硬碟自動掛載 方法

重灌了系統,將原先windows下除c盤外的盤全都保留,新裝是的ubuntu 10.10,想把在windows 下用的硬碟分割槽全部掛載到ubunut下。我在網上找一些,但都有一定的問題,所以自己在這裡寫了下,全當是自己的學習筆記了。首先,得知道自己要掛臷的盤的id是什麼,用ls al dev di...