linux裝置驅動的學習是一項浩大的工程,讀者需要首先掌握以下基礎:
1.良好的硬體基礎,懂得sram,flash,sdram,硬碟的讀寫方式,uart,i2c,usb等裝置接 口,輪詢,中斷,dma的原理,pci匯流排的工作方式以及cpu的記憶體管理單元(mmu)等.
2.良好的c語言基礎,能靈活地運動c語言的結構指標,函式指標及記憶體動態申請和釋放等.
3 .有一定的linux核心基礎,至少要了解裝置驅動與核心的介面,尤其是對於塊裝置,網路裝置,flash裝置,串列埠裝置等複雜裝置.
4.良好的多工併發控制和同步的基礎,應為在裝置驅動中會大量使用自旋鎖,
互斥,訊號量,等待佇列等併發與同步機制,
linux裝置驅動學習
華清遠見嵌入式培訓中心 講師。通常,核心的公升級對從事linux應用程式開發的人員來說影響較小,因為系統呼叫基本保持相容,影響比較大的是驅動開發人員。每次核心的更新都可能導致許多核心函式原型上的變化,其中既有核心本身提供的函式,也有硬體平台 提供的函式,後者變化的更加頻繁。這一點從許多經典書籍就可驗...
Linux驅動學習 Linux裝置驅動概述
linux裝置驅動概述 以點亮led為例 包括應用程式 庫 作業系統 核心 驅動程式。而開發人員中 只要關注自己的那一層,相鄰層只關注介面就可以了 應用程式使用庫提供的open函式開啟led的裝置檔案 庫根據open函式傳入的引數執行 swi 指令,這是軟中斷,這條指令會引起 cpu異常,進入核心 ...
如何學習linux裝置驅動
面對不斷公升級的核心,如何學習linux裝置驅動 面對不斷公升級的linux核心 gnu開發工具 linux環境下的各種圖形庫,很多linux應用程式開發人員和linux裝置驅動開發人員即興奮,又煩躁。興奮的是新的軟體軟體 工具給我提供了更強大的功能,煩躁的是適應新軟體的特性 搭建新環境是一項非常繁...