要比較嵌入式與安卓,首先要了解:什么是嵌入式?什么是安卓?
嵌入式是指:嵌入式到受控器件內部的,專用的計算機系統,軟硬件可剪裁,在功耗,體積,成本,可靠性,等方面有嚴格的要求。
安卓是指:以Linux為基礎的半開源操作系統,主要用于移動設備,由Google和開放手持設備聯盟開發與領導。
可以從以下幾點進行分析:
1、從定義上講:
兩者都是計算機系統,但專注作用領域卻不同:安卓主要用于移動手持設備,主要用于人機交互,也就是終端。更注重的是軟件以及用戶的交互體驗。直白的講,安卓就是軟件和人打交道。而嵌入式,更注重于軟件對于硬件的控制,對整個硬件的功能,效率,功耗,安全性,可靠性,等有特殊的要求,甚至使用的環境可能很惡劣,工作的硬件資源可能很有限,等等。直白的將嵌入式就是軟件和硬件打交道。
因此,安卓和嵌入式,他們專注的對象不同,也就決定了,安卓開發,主要就是人機交互,有圖形界面,有操作面板,大部分為軟件開發。而嵌入式開發,主要是與硬件打交道,要求開發者去了解硬件,甚至是了解硬件的工作原理,讓硬件變得有智慧,又或者讓硬件完成我們人類無法勝任的工作。
2、從編程的邏輯性上講:
安卓主要是軟件編程,與硬件關系不大,在Linux為內核基礎上,運行的一個圖形界面系統,主要為面向對象編程。而嵌入式編程則更貼近硬件底層,不同的硬件將導致軟件的相應的變化,主要為面向過程。一般嵌入式系統為嵌入式Linux系統,由正常的Linux系統上裁剪而來,有的嵌入式系統對實時性要求高而運行RTOS系統,如UCOS、Free RTOS等,而有的嵌入式產品甚至受成本、功耗、可靠性等的限制,甚至沒有操作系統,因此要求嵌入式開發人員具備知識面要更廣一些。
3、從使用面上講:
嵌入式的使用面相比于安卓要更廣泛一些。安卓大部分為應用軟件,主要為用戶交互界面,大多為手持設備。嵌入式則不僅應用在人機交互,所有需要底層硬件支持的微小型設備,基本都離不開嵌入式,他們或有系統,或沒有系統,都需要驅動硬件,控制硬件。因此不僅應用于手持設備更廣泛應用于軍事、醫療、化工、智能儀表、智能家居、航空航天、消費類電子產品等。
綜上所述:在有嵌入式基礎而有感興趣的話推薦從事嵌入式。不僅是因為嵌入式使用廣泛,而是因為他是基礎,就如同文字一樣,不論社會如何進步,文字始終具有無法替代的位置。