以Android為例,我們來深入剖析一下這個目前全球移動市場用戶占有率最高的“移動智能系統(tǒng)”。Android是一個以Linux為基礎(chǔ)的 半開源操作系統(tǒng),一切源代碼都是公開免費的。然而實際上,Android操作系統(tǒng)的內(nèi)核只屬于Linux內(nèi)核的一個分支,只是具備典型的Linux周期和 功能而已。
Android操作系統(tǒng)中的應(yīng)用程序大部分都是由Java編寫的,但是Android卻是以轉(zhuǎn)換為Dalvik executables的文件在Dalvik虛擬機(支持已轉(zhuǎn)換為.dex即Dalvik Executable格式的Java應(yīng)用程序的運行)上運行的。由于Android中并不自帶Java虛擬機,因此無法直接運行Java程序。不過 Android平臺上提供了多個Java虛擬機供用戶下載使用,安裝了Java虛擬機的Android系統(tǒng)可以運行J2ME的程序。這里額外提一個比較特 別的阿里云,其完全基于云端的應(yīng)用架構(gòu)為了能夠兼容apk文件包,而自行搭建了虛擬機。
截止至2012年7月2日,不同的Android操作系統(tǒng)版本的用戶比例
(圖片來自Wikipedia)
從這一部分的闡述來看,即便是基于同一個內(nèi)核,也可以開發(fā)出不同的接口庫(如可編程接口API等),不同的外圍,進而開發(fā)出與之匹配的驅(qū)動程序。簡言之,諸多同樣基于Linux內(nèi)核的平臺,在某種意義上來說,可以稱呼它們?yōu)椴煌牟僮飨到y(tǒng)。