標籤:unix c語言 linux linux核心 驅動開發
1. openSUSE是一款優秀的linux。
2.選擇預設虛擬機器
3.選擇稍後安裝作業系統
4.選擇linux opensuse
5. 選擇預設虛擬機器名稱
6.設定處理器為雙核。
7.記憶體設定為2G
8. 選擇網路位址轉譯
9.設定IO控制器
10. 選擇預設磁碟類型
11.建立一個新的虛擬磁碟
12.設定磁碟大小
13.選擇路徑儲存虛擬磁碟
14. 完成虛擬機器建立
15.設定虛擬機器
16.選擇opensuse鏡像
17.開啟虛擬機器
18.虛擬機器啟動
19.安裝opensuse
20.安裝程式載入
21.系統啟動中
22.系統初始化中
23.選擇中文,開始安裝
24.同意協議
25.單擊下一步,這兩步後續完成
26.單擊下一步
27.同步NTP伺服器
28.單擊下一步
29.選擇KDE案頭
30.設定賬戶密碼
31.開始分析系統
32.開始安裝軟體
33.全選所有的選項
C/C++開發
Linux核心驅動開發
34.開始安裝
35.安裝中
36.安裝進行時
37.安裝完成進入介面
38.寫一個C語言的helloworld
39.啟動終端
40.進入路徑
41.編譯執行
42.寫一個C++的代碼1,cc
43. 列印語句,C++
44.列印出結果
45. 驅動的helloworld
#include <linux/init.h> //驅動初始化
#include <linux/module.h>//驅動模組
MODULE_LICENSE("Dual BSD/GPL");//遵循linux協議
static int hello_init(void)
{
printk(KERN_ALERT "Hello, world\n");//列印驅動資訊
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, cruel world\n");//列印驅動資訊
}
module_init(hello_init);//列印驅動初始化資訊
module_exit(hello_exit);//列印驅動結束資訊
46.q驅動的編譯選項,注意all,clean下面的操作前面都要加tab鍵
pwd = $(shell pwd)
KERNEL_SRC = /lib/modules/$(shell uname-r)/build
obj-m := hello.o
module-objs := hello.o
all:
$(MAKE) -C $(KERNEL_SRC) M=$(PWD) modules
clean:
rm *.ko
rm *.o
47.編譯驅動
48 超級管理員載入驅動
49 看到驅動輸出
50 卸載驅動,並查看
51驅動退出。
52遍曆所有驅動
53. 驅動程式list
54.
這個時候openSUSE CCPP以及Linux核心驅動開發環境搭建完成,希望大家認真實踐。