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