嵌入式linux系统中设备驱动程序
生活随笔
收集整理的這篇文章主要介紹了
嵌入式linux系统中设备驱动程序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
嵌入式linux系統中設備驅動程序是內核的一部分,完成對設備初始、讀寫操作和控制等功能。驅動程序隱藏了
硬件設備的具體細節,對不同的設備提供一致的接口,這些接口通過file_Operation結構來定義,設計驅動程序的大部分工作就是
根據硬件結構來“填寫”結構體中定義的函數。主要的函數包括open(),read(),ioctl,release等。?Open函數的主要功能是提供
給驅動程序初始化的能力,為以后的設備操作做好準備。read函數的主要功能是讀取設備數據。Write函數的主要功能是寫設備數據。
Ioctl函數的功能主要是執行讀、寫之外的操作,如:配置設備.release函數功能與open函數相反。
除以上幾個函數之外,還有2個非常重要的函數module_init()和module_exit().驅動程序時從module_init()函數開始執行,它是在
加載模塊時執行的,它的功能是:將初始化函數加入內核全局初始化函數列表中,在內核初始化時執行驅動的初始化函數,從而完成驅動的初始化
和注冊,之后驅動便停止等待被應用軟件調用。
http://wenku.baidu.com/view/b2f173610b1c59eef8c7b4da.html
硬件設備的具體細節,對不同的設備提供一致的接口,這些接口通過file_Operation結構來定義,設計驅動程序的大部分工作就是
根據硬件結構來“填寫”結構體中定義的函數。主要的函數包括open(),read(),ioctl,release等。?Open函數的主要功能是提供
給驅動程序初始化的能力,為以后的設備操作做好準備。read函數的主要功能是讀取設備數據。Write函數的主要功能是寫設備數據。
Ioctl函數的功能主要是執行讀、寫之外的操作,如:配置設備.release函數功能與open函數相反。
除以上幾個函數之外,還有2個非常重要的函數module_init()和module_exit().驅動程序時從module_init()函數開始執行,它是在
加載模塊時執行的,它的功能是:將初始化函數加入內核全局初始化函數列表中,在內核初始化時執行驅動的初始化函數,從而完成驅動的初始化
和注冊,之后驅動便停止等待被應用軟件調用。
http://wenku.baidu.com/view/b2f173610b1c59eef8c7b4da.html
總結
以上是生活随笔為你收集整理的嵌入式linux系统中设备驱动程序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: web中使用阿里巴巴矢量库作为图标管理
- 下一篇: 微信小程序会改变大世界吗?