驅動實戰基礎

2021-08-13 11:39:52 字數 876 閱讀 8817

驅動學習實戰一:

編寫簡單的驅動:

利用:lsmod  rmmod insmode這個三個常見命令

驅動學習實戰二:

register_chrdev詳解(#include )  老介面的函式    

static inline int register_chrdev(unsigned int major, const char *name,const struct file_operations *fops)

引數: 1.major主裝置號    

引數2:    名字   總結: 主次裝置號 +name = 人 +名字

引數3:          struct file_operations *fops這個是應用和驅動的介面 也就是核心

主要的作用是核心驅動人員向核心提供的介面。

寫檔案之前先看。

lsmod 檢視當前註冊的驅動

cat /proc/devices  虛擬檔案系統

驅動學習是實戰三:

register_chrdev內部將我們要註冊的驅動的資訊,儲存在對應的位置

cat /proc/deviecs 檢視核心中已經註冊過的字元裝置驅動(塊裝置驅動)

/proc檔案系統是核心 利用資料結構虛擬出來的檔案系統

驅動學習實戰:學驅動的思維

1.在自己的思想中建立整體的框架

2.整體是乙個什麼樣子的 ,誰呼叫誰,誰被誰呼叫 誰的作用是什麼

3.在核心中找到相應的核心源**,自己進行修改

4.你寫的每一句**心裡必須清楚明白,不能似懂非懂

5.自己寫的**首先會先猜測,到底是那種可能,然後實驗來驗證這種可能

6.驅動人員的主要工作量:file_operations及其元素填充,註冊驅動

http基礎實戰

了解http的基礎知識,能看懂chrome下網路的情況 下面是tcp ip協議的一些東西,今天就只用了解應用層的http就夠了。我們在網上瀏覽網頁,會傳送乙個http請求給伺服器,服務端識別了這個http請求會返回乙個http響應給客戶端。就是乙個請求,響應的模式。那麼,http請求和http響應包...

測試驅動開發 TDD 實戰體驗

環境 需求 我們有這樣子的乙個需求 客戶需要乙個長方形,能夠給長方形設定寬和高,並且能夠計算面積 1.編寫測試用例class rectangle public void setheight double height public class rectangletest 2.執行測試用例 就會看到測...

Linux驅動開發實戰的步驟

對於乙個嵌入式工程師來說,正確的開發驅動的步驟是什麼?總結如下 1.閱讀裝置的datasheet spec和開發板的原理圖,重點搞清楚裝置的連線,驅動電源,驅動時鐘,資料的讀寫方式,初始化流程。2.寫驅動程式,分兩步分 1 參考linux的其他驅動原始碼,充分借鑑和復用。如果沒有復用的原始碼,先想清...