Android裝置的開發挑戰:軟硬件如何巧妙整合
♦ Linux核心(Linux Kernel):以Linux開發提供最底層的核心系統服務,包括安全性 (Security)、內存管理(Memory Management)、進程管理(Process Management)、網絡堆棧(Network Stack)與驅動程序模型(Driver Model)。
本文引用地址:http://www.104case.com/article/146728.htm♦ Android執行環境(Android Runtime):透過Core Libraries(核心函式庫)以及緩存器型態的Dalvik Virtual Machine(Dalvik虛擬機器)來執行程序。
♦ 系統函式庫(Library):使用C/C++函式庫的系統組件以供呼叫使用,開發者可透過上層的應用程序框架來運用這些功能,這也是主要Android裝置的效能關鍵。
♦ 應用程序框架(Application Framework):被設計來簡化組件的再運用,開發者能完整存取使用與核心應用程序(Core Application)相同的API,應用程序可以發布功能并為其它應用程序所使用(需受限于其安全性限制),開發者也可運用同樣的機制來新增與置換組件。
♦ 應用程序(Application):所有Android應用程序皆是以Java程序語言編寫,原始就會包含像是Email、簡訊、日歷、地圖、瀏覽器、聯絡人等其它應用程序,讓使用者一開始就擁有這些基本功能,開發者也可在此客制其使用接口。
廠商越想要設計出與原始設定不同且增強效能的產品,便越需要對這五層架構進行修改。譬如像是多任務處理能力(multi-tasking),便可能需要修改包括Linux核心與應用程序框架的設計;而應用程序的開發者更可能需要針對應用程序與框架進行調整。由此可見,對Android裝置而言,任何一個功能的置入或是對硬件設定的細微更動,都需要對Android系統進行從下到上的調整以達到最優化的效能,而這正是最為困難與需要驗證的一環。
Android裝置軟硬件整合的五大技術環節
如前所述,對眾家開發廠商而言最大的挑戰其實在于,如何將自己理想的產品訴求,與Android系統巧妙結合成一個功能完整并使用流暢順手的產品,這其中牽涉了不同技術間的整合與運用。在此我們便根據其多年的測試與研究經驗,歸納出五大Android相關裝置在技術整合上的重要環節:

一、Linux驅動程序的導入
由于Android是根源于Linux所延伸出來的操作系統,因此各種關鍵功能的驅動程序也必須要能順利的寫入其中,舉凡像是字符裝置、內存的空間配置、中斷處理、網絡通訊、屏幕顯示或是連接接口像是USB與PCI的驅動程序,這些可能是自行撰寫、或是來自不同組件廠商的驅動程序,都必須要能被導入到Android系統,并維持良好穩定的效能表現。
linux操作系統文章專題:linux操作系統詳解(linux不再難懂)
評論