HAL——硬件抽象层读书笔记
本章介紹了——HAL(硬件抽象層),建立在linux驅動之上的一套程序庫。它并不屬于linux內核,而是屬于linux內核層之上的應用層。
Google為了滿足這些不想開源的linux驅動作者的要求,在android層次結構中的運行庫層增加了一個HAL,從而統一硬件的調用接口,解決了GPL版權問題并且針對一些特殊的要求。
在新的HAL架構中核心代碼仍然沒變,只是增加了新的入口代碼,使這些程序可以自動被android系統識別。Android HAL的原代碼存儲的位置并不固定,一般會存儲在<android源代碼目錄>/hardware目錄中。
在第七章實現的LED驅動并沒有添加HAL代碼,而是采用的多種測試方法都是直接通過直接訪問LED驅動的設備文件的方式與LED驅動交互。這節將對之前的經行一次改動,首先編寫linux驅動,然后編寫HAL Library,最后編寫Service library。最后對程序經行精簡和測試。
編寫HAL模塊的步驟和原理,第一步:定義結構體和宏,第二步:編寫HAL模塊的open函數,第三步:定義hw_module_methods_t結構體變量,第四步:定義HAL_MODULE_INFO_SYM變量,第五步:編寫HAL模塊的close函數,第六步:編寫控制LED的函數。
?
?
?
?
?
?
?
?
http://www.cnblogs.com/SJ-0325/
轉載于:https://www.cnblogs.com/SJ-0325/p/5649412.html
總結
以上是生活随笔為你收集整理的HAL——硬件抽象层读书笔记的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: piblog 0.1
- 下一篇: 验证登陆信息的合法性