具體見1-4部。點開看看
如果你想要動態載入的組建的話,直接跳過1就可以了。
#include
#include
#include
#include
module_license("gpl");
static
struct completion comp;
static
struct task_struct *t;
static
int hello_thread(void *arg)
int __init hello_completion_init(void)
void __exit hello_completion_eixt(void)
module_init(hello_completion_init);
module_exit(hello_completion_eixt);
obj-m = test.o
all:
make -c /lib/modules/$(shell uname -r)/build m=$(pwd) modules
clean:
rm -rf *.o *.ko *.mod
.c *.mod
.o modules.* mod*
注意檔案的書寫規則。
規則
tab 命令
/usr/src/linux-source-3.2.0/linux-source-3.2.0,這個是核心解壓後的檔案路徑。
make
insmod hello.ko
lsmod
檢視模組資訊:dmesg
列印輸出最近一次的資訊:
dmesg | tail -f
dmesg|grep action
注意需要開個tmux,先啟動檢視,因為安裝後程式會立即執行。
root@ubuntu-ts:~/linux-module
# cat /proc/kmsg
<4>[15467.560074] done!
Linux核心編譯測試
核心編譯 make menuconfigmake mrpropermake cleanmake bzimage 編譯核心 make modules 編譯各核心模組,如驅動等。make modules install 將編譯好的模組安裝至 lib modules x.xx.x 資料夾下。cd linu...
Linux 測試環境如何搭建?
如何搭建測試環境 搭建測試環境準備 j a 和 tomcat 的環境準備參考這篇 以 jenkins 搭建為例 web 搭建都是乙個套路 前言 通常做自動化測試,需要用到 jenkins 來做持續整合,那麼 linux 系統裡面如何 使用 tomcat 安裝 jenkins 環境呢?環境準備 1.一...
vscode搭建linux核心開發環境
souce insight是乙個閱讀 開發linux核心驅動模組的好工具,但是source insight是收費的軟體,而且沒有原生linux版本,要是想在純linux環境下進行linux驅動開發,就只能wine source insight,而wine版的不好用容易卡死而且cpu占用還高,我就想到...