91精品一区二区三区久久久久久_欧美一级特黄大片色_欧美一区二区人人喊爽_精品一区二区三区av

位置:51電子網 » 技術資料 » 嵌入式系統

Linux設備驅動程序的函數跳轉表

發布時間:2009/2/18 0:00:00 訪問次數:2189

  直接面向設各硬件的程序叫做設各驅動程序。設各驅動程序的作用就是在設各硬件寄存器的基礎上來實現系統上層的各項操作命令。這些函數雖然是直接面向設備的硬件編程,有一部分代碼是用匯編語言來編寫的,但通常都會提供一個高級語言的接口,因此,它們的外觀看起來與一般的c函數沒有區別,例如read()、write()、open()、close()等。

  在linux中,常用一個結構作為調用上述設各驅動程序中各個函數的跳轉表,即把指向上述設備驅動程序函數的指針集中在一個結構中。這個結構就是我們已經熟悉的file_opera_tions。為了清楚起見。把在文件系統中介紹的結構file opcrattons的部分內容列舉如下:

  其實,計算機的信息最終還是要落實到某個實際物理設備或裝置上的。當然,文件作為一個具有邏輯關系的數據集合是存儲到磁盤這個物理設各中的。如果把磁盤中的數據塊看成是一個沒備·那么上面這個結構中的各函數指針落實到具體文件i節點中的文件操作函數集,實質上就是磁盤這個設備的驅動程序,所以前面也曾經把i節點叫做設備文件。

  原則上,作為不是以存儲數據為目的的諸如鼠標、鍵盤、顯示器、打印機等其他設備,file_operations結構中函數指針的名稱可以由程序設計人員任意命名.例如,write()實質上就是處理器向設備輸出數據,把它改為output()也未嘗不可。但由于將來要用文件系統來管理設備,也就是要把設各也要看做一種文件.所以這里還是應該遵循文件系統的命名方法。

  歡迎轉載,信息來自維庫電子市場網(www.dzsc.com)



  直接面向設各硬件的程序叫做設各驅動程序。設各驅動程序的作用就是在設各硬件寄存器的基礎上來實現系統上層的各項操作命令。這些函數雖然是直接面向設備的硬件編程,有一部分代碼是用匯編語言來編寫的,但通常都會提供一個高級語言的接口,因此,它們的外觀看起來與一般的c函數沒有區別,例如read()、write()、open()、close()等。

  在linux中,常用一個結構作為調用上述設各驅動程序中各個函數的跳轉表,即把指向上述設備驅動程序函數的指針集中在一個結構中。這個結構就是我們已經熟悉的file_opera_tions。為了清楚起見。把在文件系統中介紹的結構file opcrattons的部分內容列舉如下:

  其實,計算機的信息最終還是要落實到某個實際物理設備或裝置上的。當然,文件作為一個具有邏輯關系的數據集合是存儲到磁盤這個物理設各中的。如果把磁盤中的數據塊看成是一個沒備·那么上面這個結構中的各函數指針落實到具體文件i節點中的文件操作函數集,實質上就是磁盤這個設備的驅動程序,所以前面也曾經把i節點叫做設備文件。

  原則上,作為不是以存儲數據為目的的諸如鼠標、鍵盤、顯示器、打印機等其他設備,file_operations結構中函數指針的名稱可以由程序設計人員任意命名.例如,write()實質上就是處理器向設備輸出數據,把它改為output()也未嘗不可。但由于將來要用文件系統來管理設備,也就是要把設各也要看做一種文件.所以這里還是應該遵循文件系統的命名方法。

  歡迎轉載,信息來自維庫電子市場網(www.dzsc.com)



相關IC型號

熱門點擊

 

推薦技術資料

DFRobot—玩的就是
    如果說新車間的特點是“靈動”,FQPF12N60C那么... [詳細]
版權所有:51dzw.COM
深圳服務熱線:13751165337  13692101218
粵ICP備09112631號-6(miitbeian.gov.cn)
公網安備44030402000607
深圳市碧威特網絡技術有限公司
付款方式


 復制成功!
舞钢市| 葵青区| 白玉县| 藁城市| 方城县| 临邑县| 响水县| 太仓市| 双鸭山市| 台南市| 普格县| 武义县| 吉安市| 馆陶县| 上饶县| 勐海县| 黄冈市| 舟曲县| 贵溪市| 宁陕县| 灵寿县| 松江区| 凤城市| 广东省| 鲁山县| 凤山县| 小金县| 泾源县| 岚皋县| 井研县| 郁南县| 海伦市| 肃宁县| 镇宁| 龙南县| 永吉县| 元阳县| 三门峡市| 漳州市| 洛隆县| 奉贤区|