Android裝置的開發(fā)挑戰(zhàn):軟硬件如何巧妙整合
♦ Linux核心(Linux Kernel):以Linux開發(fā)提供最底層的核心系統(tǒng)服務(wù),包括安全性 (Security)、內(nèi)存管理(Memory Management)、進(jìn)程管理(Process Management)、網(wǎng)絡(luò)堆棧(Network Stack)與驅(qū)動(dòng)程序模型(Driver Model)。
本文引用地址:http://m.butianyuan.cn/article/146728.htm♦ Android執(zhí)行環(huán)境(Android Runtime):透過(guò)Core Libraries(核心函式庫(kù))以及緩存器型態(tài)的Dalvik Virtual Machine(Dalvik虛擬機(jī)器)來(lái)執(zhí)行程序。
♦ 系統(tǒng)函式庫(kù)(Library):使用C/C++函式庫(kù)的系統(tǒng)組件以供呼叫使用,開發(fā)者可透過(guò)上層的應(yīng)用程序框架來(lái)運(yùn)用這些功能,這也是主要Android裝置的效能關(guān)鍵。
♦ 應(yīng)用程序框架(Application Framework):被設(shè)計(jì)來(lái)簡(jiǎn)化組件的再運(yùn)用,開發(fā)者能完整存取使用與核心應(yīng)用程序(Core Application)相同的API,應(yīng)用程序可以發(fā)布功能并為其它應(yīng)用程序所使用(需受限于其安全性限制),開發(fā)者也可運(yùn)用同樣的機(jī)制來(lái)新增與置換組件。
♦ 應(yīng)用程序(Application):所有Android應(yīng)用程序皆是以Java程序語(yǔ)言編寫,原始就會(huì)包含像是Email、簡(jiǎn)訊、日歷、地圖、瀏覽器、聯(lián)絡(luò)人等其它應(yīng)用程序,讓使用者一開始就擁有這些基本功能,開發(fā)者也可在此客制其使用接口。
廠商越想要設(shè)計(jì)出與原始設(shè)定不同且增強(qiáng)效能的產(chǎn)品,便越需要對(duì)這五層架構(gòu)進(jìn)行修改。譬如像是多任務(wù)處理能力(multi-tasking),便可能需要修改包括Linux核心與應(yīng)用程序框架的設(shè)計(jì);而應(yīng)用程序的開發(fā)者更可能需要針對(duì)應(yīng)用程序與框架進(jìn)行調(diào)整。由此可見,對(duì)Android裝置而言,任何一個(gè)功能的置入或是對(duì)硬件設(shè)定的細(xì)微更動(dòng),都需要對(duì)Android系統(tǒng)進(jìn)行從下到上的調(diào)整以達(dá)到最優(yōu)化的效能,而這正是最為困難與需要驗(yàn)證的一環(huán)。
Android裝置軟硬件整合的五大技術(shù)環(huán)節(jié)
如前所述,對(duì)眾家開發(fā)廠商而言最大的挑戰(zhàn)其實(shí)在于,如何將自己理想的產(chǎn)品訴求,與Android系統(tǒng)巧妙結(jié)合成一個(gè)功能完整并使用流暢順手的產(chǎn)品,這其中牽涉了不同技術(shù)間的整合與運(yùn)用。在此我們便根據(jù)其多年的測(cè)試與研究經(jīng)驗(yàn),歸納出五大Android相關(guān)裝置在技術(shù)整合上的重要環(huán)節(jié):
一、Linux驅(qū)動(dòng)程序的導(dǎo)入
由于Android是根源于Linux所延伸出來(lái)的操作系統(tǒng),因此各種關(guān)鍵功能的驅(qū)動(dòng)程序也必須要能順利的寫入其中,舉凡像是字符裝置、內(nèi)存的空間配置、中斷處理、網(wǎng)絡(luò)通訊、屏幕顯示或是連接接口像是USB與PCI的驅(qū)動(dòng)程序,這些可能是自行撰寫、或是來(lái)自不同組件廠商的驅(qū)動(dòng)程序,都必須要能被導(dǎo)入到Android系統(tǒng),并維持良好穩(wěn)定的效能表現(xiàn)。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評(píng)論