第1章android體系結構及開發環境_第1頁
第1章android體系結構及開發環境_第2頁
第1章android體系結構及開發環境_第3頁
第1章android體系結構及開發環境_第4頁
第1章android體系結構及開發環境_第5頁
已閱讀5頁,還剩48頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、 教材: 胡文,寧世勇.Android嵌入式系統程序開發(基于Cortex-A8) 主要參考書: 1李善平等.Linux與嵌入式系統M.北京:清華大學出版社,2008. 2馬忠梅,徐英慧.ARM 嵌入式處理器結構與應用基礎M.北京:北京航空航天大學出版社,2007.p什么是嵌入式系統嵌入式系統是以應用為中心,以計算機技術為基礎,且軟硬件可裁剪,適應應用系統對功能、可靠性、成本、體積、功耗有嚴格要求的專用計算機系統。一般由以下幾部分組成:l 嵌入式微處理器l 外圍硬件設備l 嵌入式操作系統l 特定的應用程序p嵌入式系統的特點l 應用的特定性和廣泛性l 技術、知識、資金的密集型l 高效性l 較長的

2、生命周期l 高可靠性l 軟硬一體,軟件為主p嵌入式系統的應用領域p嵌入式系統的應用領域p嵌入式系統的產品l 網絡設備:交換機、路由器;l 消費電子:手機、MP4、電視機頂盒、數字電視、數碼照相機;l 辦公設備:打印機、傳真機、掃描儀;l 汽車電子:ABS(防死鎖剎車系統)、車載GPSl 工業控制:各種自動控制設備p嵌入式系統的應用領域p幾種主流的嵌入式操作系統l Vxworksl Windows Embeddedl Palm OSl 嵌入式Linux:層次結構及內核完全開放;強大的網絡支持功能;具備一整套工具鏈;廣泛的硬件支持特性。p嵌入式系統的開發流程pARM的產品pARM的產品l ARM公

3、司在經典處理器ARM11以后的產品改用Cortex命名,并分成A、R和M三類,為各種不同的市場提供服務。l 由于應用領域不同,基于v7架構的Cortex處理器系列所采用的技術也不相同,基于v7A的稱為Cortex-A系列,基于v7R的稱為Cortex-R系列,基于v7M的稱為Cortex-M系列。pARM的產品l ARM Cortex-A 系列應用型處理器可向托管豐富OS平臺和用戶應用程序的設備提供全方位的解決方案,從超低成本手機、智能手機、移動計算平臺、數字電視和機頂盒到企業網絡、打印機和服務器解決方案。l Cortex-A 系列專用于具有復雜軟件操作系統(需使用虛擬內存管理)的面向用戶的應

4、用。pARM的產品 ARM Cortex-R實時處理器為要求可靠性、高可用性、容錯功能、可維護性和實時響應的嵌入式系統提供高性能計算解決方案。 ARM Cortex-M處理器系列是一系列可向上兼容的高能效、易于使用的處理器,Cortex-M 系列針對成本和功耗敏感的MCU和終端應用(如智能測量、人機接口設備、汽車和工業控制系統、大型家用電器、消費性產品和醫療器械)的混合信號設備進行過優化。 昨日皇者昨日皇者Symbian(塞班)(塞班) 對硬件的水平低,操作簡單,省電,軟件資源多是Symbian系統手機的重要特點。 高貴華麗高貴華麗iOS iOS作為蘋果移動設備iPhone和iPad的操作系統

5、,在App Store的推動之下,成為了世界上引領潮流的操作系統之一。 Windows Phone昔日諾基亞昔日諾基亞 高端商務高端商務Blackberry OS(黑莓)(黑莓) Blackberry是加拿大Research In Motion(簡稱RIM)公司推出的一種無線手持郵件解決終端設備的操作系統,由RIM自主開發。 Android 2007年,Google公司推出了一款無與倫比的移動智能設備系統Android,這是一種建立在Linux基礎之上的為手機、平板等移動設備提供的軟件解決方案。 強有力的業界支持強有力的業界支持 Android系統基于Linux內核,是一款開源的手機操作系統。

6、正是因為如此,在Android剛剛嶄露頭角,各大手機廠商和電信部門紛紛加入到了Android聯盟當中。 研發陣容強大研發陣容強大 包括摩托羅拉、Google、HTC(宏達電子)、PHILIPS、T-Mobile、高通、魅族、三星、LG以及中國移動在內的34家企業。 為開發人員為開發人員“精心定制精心定制”(1)保證開發人員可以迅速轉型為Android應用開發。(2)定期召開獎金豐厚的Android大賽。(3)開發人員可以利用自己的作品賺錢。 開源開源 開源意味著對開發人員和手機廠商來說是完全無償免費使用的,所以吸引了全世界各地無數程序員的熱情。于是很多手機廠商都紛紛采用Android作為自己產

7、品的系統,這當然也包括包括很多山寨廠商。因為免費,所以降低了成本,提高了利潤。 常見的常見的Android智能設備智能設備(1)智能電視(2)機頂盒(3)游戲機(4)智能手表(5)智能家居 新興熱點新興熱點可穿戴設備可穿戴設備 可穿戴設備的發展前景分析可穿戴設備的發展前景分析(1)智能手機推動力(2)跨國公司推動力(3)用戶推動力 Android對穿戴設備的支持對穿戴設備的支持Android Wear 北京時間2014年3月19日早間消息,谷歌在官方博客中公布了可穿戴設備操作系統Android Wear的細節。應用程序(應用程序(Application)應用程序框架(應用程序框架(Applic

8、ation Framework)函數庫(函數庫(Libraries)和)和Android運行時(運行時(Android Runtime)Linux內核(內核(Linux Kernel)應用程序(應用程序(Application)Android應用程序是基于應用程序是基于Java語言編寫的,為使用者提供操作語言編寫的,為使用者提供操作接口。使用者直接操作應用程序,實現一定的功能。接口。使用者直接操作應用程序,實現一定的功能。Android系統提供了計算器、聯系人(系統提供了計算器、聯系人(Contacts)、電話()、電話(Phone)、)、瀏覽器(瀏覽器(Browser)、)、E-mail客戶

9、端、客戶端、SMS短消息程序、日歷短消息程序、日歷、地圖等內核應用程序。、地圖等內核應用程序。應用程序(應用程序(Application)開發者還可以使用開發者還可以使用Android提供的組件編寫滿足特定功能的應提供的組件編寫滿足特定功能的應用程序。用程序。由用戶開發的由用戶開發的Android應用程序和應用程序和Android內核應用程序是統內核應用程序是統一層次的,它們都是基于一層次的,它們都是基于Android系統的系統的API構建的。構建的。API(Application Programming Interface)應用程序編程接口,是應用程序編程接口,是一些預先定義的函數。一些預先

10、定義的函數。應用程序框架(應用程序框架(Application Framework)開發人員可以訪問內核應用程序所使用的開發人員可以訪問內核應用程序所使用的API框架。應用程序框架。應用程序體系結構設計簡化了組件的重用,任何一個應用程序都可以體系結構設計簡化了組件的重用,任何一個應用程序都可以發布其功能塊,并且任何其他的應用程序都可以使用應用程發布其功能塊,并且任何其他的應用程序都可以使用應用程序體系結構所發布的功能塊(不過要遵循框架的安全性限制序體系結構所發布的功能塊(不過要遵循框架的安全性限制)。同樣,應用程序重組機制也使使用者可以方便地替換程)。同樣,應用程序重組機制也使使用者可以方便地

11、替換程序組件。序組件。應用程序框架(應用程序框架(Application Framework)隱藏在每個應用后面的是一系列的系統的服務,這些系統服隱藏在每個應用后面的是一系列的系統的服務,這些系統服務包括:務包括: 豐富且擴展的視圖(豐富且擴展的視圖(View System),可以用來構建應用程),可以用來構建應用程序,這些視圖包括列表(序,這些視圖包括列表(List)、網格()、網格(Grid)、文本塊()、文本塊(Text Box)、按鈕()、按鈕(Button),甚至可嵌入),甚至可嵌入Web瀏覽器。瀏覽器。應用程序框架(應用程序框架(Application Framework) 內容提

12、供器(內容提供器(Content Provider)使應用程序可以訪問另一)使應用程序可以訪問另一個應用程序的數據(如聯系人數據庫),或者共享它們自個應用程序的數據(如聯系人數據庫),或者共享它們自己的數據。己的數據。 資源管理器(資源管理器(Resource Manager)提供非程序代碼資源的)提供非程序代碼資源的訪問,如本地字符串、圖形和布局文件(訪問,如本地字符串、圖形和布局文件(Layout File)。)。應用程序框架(應用程序框架(Application Framework) 通知管理器(通知管理器(Notification Manager)使得應用程序可以在)使得應用程序可以在

13、狀態列中顯示自定義的提示信息。狀態列中顯示自定義的提示信息。 活動管理器(活動管理器(Activity Manager)用來管理應用程序生命周)用來管理應用程序生命周期并提供常用的導航回退功能。期并提供常用的導航回退功能。 窗口管理器(窗口管理器(Window Manager)管理所有窗口程序。)管理所有窗口程序。應用程序框架(應用程序框架(Application Framework) 包管理器(包管理器(Package Manager)管理)管理Android系統內的程序系統內的程序 通信管理器(通信管理器(Telephony Manager)管理)管理Android系統的通系統的通信功能。

14、信功能。 定位管理器(定位管理器(Location Manager)提供)提供Android系統的定位系統的定位等相關服務。等相關服務。函數庫(函數庫(Libraries)Android包括含一些包括含一些C/C+函數庫,這些函數庫能被函數庫,這些函數庫能被Android系系統中不同的組件使用。它們通過統中不同的組件使用。它們通過Android應用程序框架為開發應用程序框架為開發者提供服務。這些內核函數庫包括:者提供服務。這些內核函數庫包括: Libc:標準:標準C系統函數庫,它是專門為基于系統函數庫,它是專門為基于Embedded Linux的設備定制的。的設備定制的。函數庫(函數庫(Lib

15、raries) Media Framework:基于基于PacketVideo OpenCORE,該函數庫,該函數庫支持多種常用的音效、視頻格式回放和錄制,同時支持靜支持多種常用的音效、視頻格式回放和錄制,同時支持靜態影像文件。編碼格式包括態影像文件。編碼格式包括MPEG4、H.264、MP3、AAC、AMR、JPG以及以及PNG。 Surface Manager: 顯示子系統的管理,并且為多個應用程顯示子系統的管理,并且為多個應用程序提供了序提供了2D和和3D圖層的無縫融合。圖層的無縫融合。函數庫(函數庫(Libraries) Webkit: 提供提供Web瀏覽引擎的支持。瀏覽引擎的支持。

16、SGL:底層的底層的2D圖形引擎。圖形引擎。 OpenGL ES: 基于基于OpenGL ES 1.0 APIs實現,該函數庫可以使實現,該函數庫可以使用硬件用硬件3D加速(如果可用)或者使用高度優化的加速(如果可用)或者使用高度優化的3D軟加速軟加速 FreeType: 位圖(位圖(bitmap)和向量()和向量(vector)字體顯示。)字體顯示。函數庫(函數庫(Libraries) SQLite: 一個對于所有應用程序可用、功能強大的輕量級關一個對于所有應用程序可用、功能強大的輕量級關系型數據庫引擎。系型數據庫引擎。 SSL:安全套接層(:安全套接層(Secure Sockets Lay

17、er)是為網絡通信提)是為網絡通信提供安全及數據完整性的一種安全協議。供安全及數據完整性的一種安全協議。Linux內核內核Android的內核系統服務如安全管理、內存管理、進程管理、的內核系統服務如安全管理、內存管理、進程管理、網絡通信和驅動模型依賴于網絡通信和驅動模型依賴于Linux內核,內核,Linux內核也同時作為內核也同時作為硬件和軟件堆棧之間的抽象層。硬件和軟件堆棧之間的抽象層。Android對對Linux內核的修改,內核的修改,這里講兩個:這里講兩個: Binder(IPC)Driver:提供高效率的進程間通信(提供高效率的進程間通信(Inter-Process Communica

18、tion)。)。Linux內核內核 Binder(IPC)Driver:提供高效率的進程間通信(提供高效率的進程間通信(Inter-Process Communication)。)。Android上層的應用程序經常要取用上層的應用程序經常要取用Android系統中的服務,系統中的服務,Android幾乎重新制作了一套自己幾乎重新制作了一套自己的的IPC,稱一般,稱一般IPC會造成額外資源花費和安全問題。會造成額外資源花費和安全問題。Linux內核內核 Power Mangerment:與臺式計算機或筆記本電腦不同,手與臺式計算機或筆記本電腦不同,手持設備的電源一向相當有限,必須想盡一切辦法省電

19、,而持設備的電源一向相當有限,必須想盡一切辦法省電,而又不能影響順暢的使用體驗。又不能影響順暢的使用體驗。Android在此采取了頗為積極在此采取了頗為積極的做法:如果不使用,就關掉。如播放的做法:如果不使用,就關掉。如播放MP3,如果與此同,如果與此同時沒有執行其他程序,那么時沒有執行其他程序,那么LCD顯示器就可能被關閉,以顯示器就可能被關閉,以便省電。便省電。p 安裝JDK環境變量的設置: 配置三個系統變量 CLASSPATH JAVA_HOME Pathp 安裝JDK環境變量的設置: 配置三個系統變量 CLASSPATH:java加載類的路徑,設為.;%JAVA_HOME%lib;%JAVA_HOME%libtools.jar; JAVA_HOME:JAVA_HOME指明JDK的安裝路徑 Path:使得系統可以在任何路徑下識別java命令,設為%JAVA_HOME%bin;%JAVA_HOME%jrebin;p 安裝JDKp 安裝JDK環境變量的設置 測試安裝是否成功::在命令提示符中輸入下列命令(開始運行cmd) java -version java javacp 安裝JDKp 安裝JDKp 安裝JDKp 安裝JDKp 安裝Eclips

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論