關(guān)于嵌入式設(shè)備使用Android或者Linux 的一些討論
曾幾何時(shí) “嵌入式 Linux” 這個(gè)詞被以懷疑的眼光看待。這個(gè)小型、低功耗、基于 Linux 并且具備軟件開源能力的設(shè)備,如今已經(jīng)發(fā)展成了一個(gè)產(chǎn)業(yè);現(xiàn)在不是問“為什么選擇 Linux 而是“為什么不選擇 Linux”?
本文引用地址:http://cafeforensic.com/article/201612/342276.htm隨著嵌入式設(shè)備的性能和圖形處理能力日益增強(qiáng),以及支持圖形化界面的觸摸設(shè)備在眾多領(lǐng)域扎根,從小型控制面板到大型娛樂設(shè)備,Android,曾經(jīng)被當(dāng)做純粹的消費(fèi)級(jí) OS,現(xiàn)在正在吸引越來越多的注意。
在本博文中,Toradex 的長(zhǎng)期合作伙伴以及為用戶和 Toradex 模塊的 Android 軟件和產(chǎn)品研發(fā)服務(wù)提供商,將會(huì)闡述兩個(gè)操作系統(tǒng)的異同。
這么多年來,我們已經(jīng)開發(fā)過許多軟件解決方案和完整的產(chǎn)品,無論是行業(yè)的還是消費(fèi)類,運(yùn)行 Linux 或者 Android,我們始終相信沒有永遠(yuǎn)對(duì)的準(zhǔn)則,哪一種操作系統(tǒng)更適合你的應(yīng)用這取決于應(yīng)用本身以及您設(shè)備的預(yù)計(jì)生命周期。
TAQ (Toradex, Antmicro, Qt) 自平衡機(jī)器人:異構(gòu)架構(gòu),Antmicro 在 Toradex Colibri i.MX7 模塊上用 Linux 開發(fā)
對(duì)于絕大多數(shù)嵌入式應(yīng)用,Linux 是正確的選擇。Linux 編譯系統(tǒng),例如 Buildroot 和 OpenEmbedded,能夠創(chuàng)建定制化的 BSP,裁剪到任意的大小,并且提供豐富的應(yīng)用和 SDK,從 gstreamer、Python 到 node.js 等。基于 OpenEmbedded/Yocto 的 Linux 是 Toradex 支持的默認(rèn)發(fā)行版本,開發(fā)社區(qū)還提供多種開發(fā)語言環(huán)境和框架?,F(xiàn)在的 GUI 可以使用 Qt、HTML5 來開發(fā),以至于有點(diǎn)難于選擇。當(dāng)你在編譯支持必要的軟件組件、更新方式和 API 的基本操作系統(tǒng)鏡像的時(shí)候,你可以有大量的選擇,當(dāng)然,這個(gè)任務(wù)你也可以借助服務(wù)提供商例如 Antmicro,并且在必要的時(shí)候,你也能夠在中途改變你的想法。
Android 則是為了符合標(biāo)準(zhǔn),放棄了部分操作系統(tǒng)級(jí)別的自由:為了獲得這種操作系統(tǒng)帶來的好處,需要采用一套 Android 的方法來行事。于是,你可以得到統(tǒng)一的 GUI、J**a 編程規(guī)范和熟悉的開發(fā)體驗(yàn)(Android 智能手機(jī)/消費(fèi)設(shè)備所帶來的結(jié)果)。這個(gè)在你的應(yīng)用中將是至關(guān)重要的,特別是你的設(shè)備中帶有觸摸屏,并且設(shè)計(jì)為給許多人使用。
例如,你已經(jīng)擁有一個(gè)現(xiàn)成的智能手機(jī)/平板應(yīng)用,您的用戶也習(xí)慣了這個(gè)應(yīng)用 - 無論這是一個(gè)智能家居控制中心還是便攜式行業(yè)測(cè)量設(shè)備 - 您計(jì)劃開發(fā)一個(gè)專門的設(shè)備來替代或者完善它們,Android 將是一個(gè)很好的選擇。無需重新從底層構(gòu)建你的用戶界面,您可以節(jié)省大量的工作和用戶調(diào)查來優(yōu)化 UI,用戶主要關(guān)心他們所見到的和交互的。您需要一個(gè)行業(yè)級(jí) Android 鏡像(例如單應(yīng)用鎖定、定制的品牌以及外設(shè)接口的抽象)來實(shí)現(xiàn),但是相對(duì)于在 Linux 重新構(gòu)建用戶體驗(yàn),這或許是更小的開支。
即使你沒有現(xiàn)成的應(yīng)用,你也或許有自己的 Android 應(yīng)用開發(fā)團(tuán)隊(duì)(或者十分了解 Android 應(yīng)用開發(fā))他們可以為您開發(fā) UI。借助于更加廣泛的應(yīng)用開發(fā)社區(qū)、大量的案例應(yīng)用、標(biāo)準(zhǔn)化應(yīng)用封包和模擬器,在 Android 中開發(fā)終端應(yīng)用是相對(duì)容易的。由于標(biāo)準(zhǔn)的 API 可以清晰的分離 OS 和應(yīng)用層(在 Android 中你可以使用不同的的 API 級(jí)別來表示兼容性),這意味著你能夠重復(fù)利用現(xiàn)有的移動(dòng)端應(yīng)用,或者組建獨(dú)立的團(tuán)隊(duì),一個(gè)負(fù)責(zé)針對(duì)目標(biāo)用戶測(cè)試和調(diào)整 UI,而嵌入式團(tuán)隊(duì)則確保您需要的功能在 Android 得到支持。
選擇 Android,特別是包括大量、各種用戶群體的應(yīng)用場(chǎng)景,將是很好的案例。這不僅包括典型的消費(fèi)設(shè)備如可穿戴設(shè)備或者智能家居 IoT,也有大量行業(yè)專業(yè)人員使用的企業(yè)設(shè)備 - 從助理設(shè)備到現(xiàn)場(chǎng)網(wǎng)絡(luò)設(shè)施。即使不論了應(yīng)用開發(fā)體驗(yàn),熟悉的用戶界面、手勢(shì)和交互,Android 也更勝 Linux。
正如上面提到的,Android - 盡管是基于 Linux 內(nèi)核 - 由于其獨(dú)特的方式,包括相對(duì)復(fù)雜的編譯系統(tǒng)(和其巨大的 codebase 有關(guān)),以及需要在 OS 層導(dǎo)出你內(nèi)核的插件才能使其在應(yīng)用中工作。在硬件方面也有更多的要求,由于 Android 需要圖形加速和虛擬機(jī)使用的內(nèi)存,你基本無法在內(nèi)存小于 512 MB 或者沒有 GPU 的設(shè)備上運(yùn)行新的 Android 版本。正如其他的選擇一樣,在嵌入式設(shè)備中使用 Android 需要取決于其提供的優(yōu)勢(shì)。
Antmicro 工業(yè) Android 運(yùn)行于 Toradex Apalis Tegra K1
Antmicro 已經(jīng)幫助大量的客戶在基于 Toradex 平臺(tái)選擇正確的操作系統(tǒng),針對(duì) Toradex T30/i.MX6 和 TK1 模塊提供 Android 5.1/6.0 演示鏡像和開發(fā)服務(wù),加速產(chǎn)品上市。
如果您需要獲得您下一個(gè)款嵌入式設(shè)備采購(gòu)建議,Antmicro 很高興可能進(jìn)一步幫助您。更多的信息請(qǐng)聯(lián)系 mgielda@antmicro.com ,或者訪問 www.antmicro.com .
評(píng)論