1.想要在自己的設備上運行Android,必須為自己的設備開發特定軟體,這個為特定設備定製Android的過程被稱為“移植”。 2.Android的系統構架分為:最底層Linux內核,和其他Linux系統的差異很小;再上一層是C/C++代碼庫;再上一層是Android SDK API,這一層是用ja ...
1.想要在自己的設備上運行Android,必須為自己的設備開發特定軟體,這個為特定設備定製Android的過程被稱為“移植”。
2.Android的系統構架分為:最底層Linux內核,和其他Linux系統的差異很小;再上一層是C/C++代碼庫;再上一層是Android SDK API,這一層是用java編寫的Library;最上層是應用程式,這一層所有用戶都要接觸到,所有的Android應用程式。
3.Android移植分為應用移植和系統移植,主要工作是移植Linux驅動和移植HAL(硬體抽象層,Android SDK通過HAL直接訪問Linux驅動,應用程式不能直接訪問驅動)。
4.在終端中輸入uname -a或cat /proc/version命令就可查看內核的版本。
5.驅動針對的對象是存儲器和外設分為三大類:1>字元設備 2>塊設備 3>網路設備。
6.任何Linux驅動都有一個裝載函數和一個卸載函數即可,分別通過mobule_init和mobule_exit巨集指定。
學習Linux驅動與Linux系統無關,只與Linux內核有關。只要內核相同,就能把驅動程式直接使用。看完第一章,重新瞭解了Android系統移植和驅動開發的整體印象,使我學習時更有方向。Android使用的內核多加了一個HAL。學習驅動開發就能定製自己的設備,自己動手實現家裡電燈的等自動化和手機控制等功能,想想就讓人激動。