新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 嵌入式Linux設備驅動開發之:設備驅動概述

        嵌入式Linux設備驅動開發之:設備驅動概述

        作者: 時間:2013-09-13 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/257112.htm

        11.1.5程序與外界的接口

        每種類型的驅動程序,不管是字符設備還是塊設備都為內核提供相同的調用接口,因此內核能以相同的方式處理不同的設備。Linux為每種不同類型的程序維護相應的數據結構,以便定義統一的接口并實現驅動程序的可裝載性和動態性。Linux程序與外界的接口可以分為如下3個部分。

        n 驅動程序與內核的接口:這是通過數據結構file_operations(在本書后面會有詳細介紹)來完成的。

        n 驅動程序與系統引導的接口:這部分利用驅動程序對設備進行初始化。

        n 驅動程序與設備的接口:這部分描述了驅動程序如何與設備進行交互,這與具體設備密切相關。

        它們之間的相互關系如圖11.2所示。

        圖11.2設備驅動程序與外界的接口

        11.1.6設備驅動程序的特點

        綜上所述,Linux中的設備驅動程序有如下特點。

        (1)內核代碼:設備驅動程序是內核的一部分,如果驅動程序出錯,則可能導致系統崩潰。

        (2)內核接口:設備驅動程序必須為內核或者其子系統提供一個標準接口。比如,一個終端驅動程序必須為內核提供一個文件I/O接口;一個SCSI設備驅動程序應該為SCSI子系統提供一個SCSI設備接口,同時SCSI子系統也必須為內核提供文件的I/O接口及緩沖區。

        (3)內核機制和服務:設備驅動程序使用一些標準的內核服務,如內存分配等。

        (4)可裝載:大多數的Linux設備驅動程序都可以在需要時裝載進內核,在不需要時從內核中卸載。

        (5)可設置:Linux設備驅動程序可以集成為內核的一部分,并可以根據需要把其中的某一部分集成到內核中,這只需要在系統編譯時進行相應的設置即可。

        (6)動態性:在系統啟動且各個設備驅動程序初始化后,驅動程序將維護其控制的設備。如果該設備驅動程序控制的設備不存在也不影響系統的運行,那么此時的設備驅動程序只是多占用了一點系統內存罷了。

        linux操作系統文章專題:linux操作系統詳解(linux不再難懂)

        linux相關文章:linux教程



        上一頁 1 2 3 下一頁

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 黄龙县| 阳信县| 迁安市| 沭阳县| 康定县| 新密市| 左贡县| 营山县| 琼结县| 遂宁市| 岗巴县| 札达县| 天祝| 辰溪县| 会同县| 哈尔滨市| 延庆县| 治多县| 西平县| 焉耆| 霍城县| 建水县| 泉州市| 淮阳县| 通渭县| 安溪县| 平远县| 平定县| 温州市| 册亨县| 天水市| 大田县| 巴彦县| 福鼎市| 嘉荫县| 灵寿县| 新龙县| 周口市| 逊克县| 中江县| 登封市|