Linux驱动开发流程
生活随笔
收集整理的這篇文章主要介紹了
Linux驱动开发流程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
實現一個嵌入式Linux設備驅動程序的大致流程如下:
(1) 查看原理圖,理解設備的工作原理。
(2) 定義主設備號。設備由一個主設備號和一個次設備號來標識。主設備號唯一標識了設備類型,即設備驅動程序類型,它是塊設備表或字符設備表中設備表項的索引。次設備號僅由設備驅動程序解釋,區分被一個設備驅動控制下的某個獨立的設備。
(3)實現初始化函數。在驅動程序中實現驅動的注冊和卸載。
(4)設計所要實現的文件操作,定義file–operations結構。
(5)實現所需的文件操作調用,如read,write等。
(6)實現中斷服務,并用request–irq向內核注冊,中斷并不是每個設備驅動所必需的。
(7)編譯該驅動程序到內核中,或者用insmod命令加載模塊。
(8)測試該設備,編寫應用程序,對驅動程序進行測試。
典型字符設備驅動編寫框架:
1 編寫硬件接口函數
2 建立文件系統與設備驅動程序間的接口,如:struct file_operations結構體
3 注冊設備到chrdevfs全局數組中,注冊或注銷設備可以在任何時候,但一般在模塊加載時注冊設備,在模塊退出時注銷設備。
( module_init(); module_exit(); )
4 以模塊方式編譯驅動源碼,并將其加載到內核中
5 創建設備節點,mknode
6 編寫應用程序訪問底層設備
總結
以上是生活随笔為你收集整理的Linux驱动开发流程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Scala(1) -- Scala下载
- 下一篇: WinRAR 6.0 永久去除广告