既然有了Android 谷歌為何還要從零開始開發(fā)新操作系統(tǒng)
導語:《快公司》雜志周末刊文稱,谷歌近期宣布正開發(fā)一款全新的操作系統(tǒng)Fuchsia。那么,在Android系統(tǒng)早已發(fā)展壯大的情況下,谷歌為何要從頭開始開發(fā)又一款操作系統(tǒng)?
本文引用地址:http://butianyuan.cn/article/201608/295786.htm以下為文章全文:
上周,谷歌員工做了一件讓人看不明白的事:他們低調(diào)地宣布正在開發(fā)一款操作系統(tǒng),從理論上來說,這款操作系統(tǒng)將成為谷歌Android的競爭對手。
這款開源操作系統(tǒng)代號為Fuchsia,可以搭載在各種輕量級、單一目的的設(shè)備上,例如ATM機和GPS設(shè)備,同時也支持PC。不過與Android不同,F(xiàn)uchsia沒有基于Linux內(nèi)核,也并非衍生于當代其他PC或手機操作系統(tǒng)。實際上,這是從頭開始的一項工作。
谷歌并未透露,將利用Fuchsia去做些什么。Fuchsia仍處于早期發(fā)展階段,有可能只是一次嘗試。不過,谷歌有著充分的理由,“重啟”一個沉寂數(shù)十年的軟件開發(fā)領(lǐng)域。
“外殼堅硬”的內(nèi)核
你可能不太清楚自己手機、平板電腦和筆記本的某些方面:這些設(shè)備操作系統(tǒng)的“內(nèi)核”非常古老。Android使用了Linux內(nèi)核,這一內(nèi)核起源于1991年。Mac OS X、iOS,以及其他蘋果平臺基于Unix內(nèi)核,Unix于1969年發(fā)源于AT&T貝爾實驗室。Windows計算機采用的是可以追溯至1993年的Windows NT內(nèi)核。
內(nèi)核的目的是管理操作系統(tǒng)的最底層。內(nèi)核處理來自鍵盤等硬件設(shè)備的請求,調(diào)度計算任務(wù),以及管理文件系統(tǒng)和內(nèi)存。由于內(nèi)核的存在,如果一款應(yīng)用想要調(diào)用打印功能,那么開發(fā)者并不需要知道打印機的具體型號。
對于一個追求完美的行業(yè)來說,Unix、Linux和Windows NT等內(nèi)核的存在很矛盾。不過業(yè)內(nèi)知名分析師霍拉斯·德迪烏(Horace Dediu)指出,在最底層,計算方式與數(shù)十年前相比并沒有不同。例如,當前Windows計算機采用的芯片與第一代IBM PC中的英特爾處理器一脈相承。從這種意義上來說,內(nèi)核是通用的。
德迪烏表示:“我們?nèi)栽谑褂猛瑯拥募軜?gòu),計算的概念沒有變化:寄存器、門電路、晶體管。因此,我們沒必要研究更好的內(nèi)核。內(nèi)核已得到充分的發(fā)展。”
或許,這就是大部分業(yè)內(nèi)人士的想法。然而目前,我們正在將傳感器和計算元件集成至更多設(shè)備,例如將普通家居設(shè)備變?yōu)橹悄芗揖?,讓所有一切都?lián)網(wǎng)(即物聯(lián)網(wǎng))。Fuchsia背后的邏輯或許在于,古老的內(nèi)核,例如Linux,不適用于這些新生設(shè)備。因此,開發(fā)者正在構(gòu)想更現(xiàn)代化的內(nèi)核。(這里的內(nèi)核本身名為Magenta,而Magenta又基于谷歌的另一項實驗LittleKernel。)
來自Particle的扎赫·蘇帕拉(Zach Supalla)指出,Linux給這些小型計算設(shè)備帶來了問題。Particle提供物聯(lián)網(wǎng)硬件套裝和開發(fā)者工具。
一方面,對這些應(yīng)用來說,Linux的規(guī)模太大。盡管Linux內(nèi)核是模塊化的,開發(fā)者可以剝離不需要的組件,但最終這仍需要以MB計算的存儲空間。這意味著,Linux內(nèi)核很難被用在廉價的微控制器上。如果想要使用Linux內(nèi)核,那么開發(fā)者必須選擇尺寸更大、價格更貴、能耗更高的處理器。
蘇帕拉表示:“市場需要質(zhì)量更好、價格更低的產(chǎn)品,但這樣的需求尚未被滿足。”
另一方面的問題在于,Linux并不是“實時”操作系統(tǒng)。與ATM機、醫(yī)療產(chǎn)品,以及其他單一目的設(shè)備中的嵌入式操作系統(tǒng)相比,Linux采用調(diào)度算法來管理多任務(wù)。盡管這可以使通用目的設(shè)備的性能最大化,但也給需要精確定時的設(shè)備,例如3D打印機,以及汽車發(fā)動機控制,帶來了問題。
蘇帕拉指出:“如果你想要確保,這些任務(wù)有著微秒級的時間精度,那么你不會希望讓計算機來決定何時處理哪一任務(wù)。”
對物聯(lián)網(wǎng)設(shè)備來說,類似Linux的通用目的操作系統(tǒng)也不太安全。這樣的操作系統(tǒng)代碼很多,這意味著很可能有更多信息安全漏洞需要解決,或是需要通過防火墻和VPN進行鎖定。
蘇帕拉表示:“運行實時操作系統(tǒng)或嵌入式操作系統(tǒng)的價值之一在于,你不需要做任何鎖定。你不需要太擔心這些系統(tǒng)。除了自己編寫的軟件之外,這些操作系統(tǒng)無法運行任何東西。”
蘇帕拉猜測,F(xiàn)uchsia的目標是將Linux的優(yōu)點和當前嵌入式系統(tǒng),例如FreeRTOS和ThreadX,結(jié)合在一起。在支持應(yīng)用和硬件通過操作系統(tǒng)去通信方面,Linux仍要好于絕大多數(shù)系統(tǒng)。
他表示:“他們或許希望借鑒Linux的某些抽象概念,以及RTOS的性能、大小和實時性。這將很有價值,我認為從理論這是可以做到的,只是之前沒有人去做。”
谷歌正開發(fā)新操作系統(tǒng)Fuchsia
規(guī)模的擴大
如果Fuchsia僅瞄準小型設(shè)備,那么可能不是那么值得關(guān)注。不過,F(xiàn)uchsia的開發(fā)者有著更遠大的目標。他們表示,這一操作系統(tǒng)也將可以用于智能手機和PC。從理論上來說,這將成為谷歌Android和Chrome OS的直接競爭對手。
那么,這樣做的動機是什么?蘇帕拉認為,從頭開始開發(fā)將帶來更高效的操作系統(tǒng),而這樣的操作系統(tǒng)也可以提升服務(wù)器的效率。這是谷歌長期以來一直關(guān)注的問題。他還表示,對PC的支持意味著,開發(fā)者可以同時模擬運行大量小型設(shè)備,確保這些設(shè)備的規(guī)?;\轉(zhuǎn)。
蘇帕拉表示:“你可以搭建數(shù)千臺服務(wù)器,每臺服務(wù)器都同時運行軟件應(yīng)用的數(shù)千個拷貝。因此,對PC的支持意味著更適合測試。”
德迪烏則有著不同看法。谷歌這一新操作系統(tǒng)將解決困擾谷歌已久的Android知識產(chǎn)權(quán)授權(quán)問題。他表示:“由于這是全新的設(shè)計,因此不會存在有爭議的知識產(chǎn)權(quán)。這是個合理的假設(shè),因為Linux的知識產(chǎn)權(quán)問題很復雜。”
不過,這一切都還停留在理論上。Fuchsia的開發(fā)者表示,他們最終將發(fā)布這一操作系統(tǒng)及相關(guān)文檔,不過這可能還有遙遠的距離。目前尚不清楚,谷歌是否會向這項工作投入資源。Android生態(tài)系統(tǒng)已非常龐大(并且正在與Chromebook融合)。與此同時,谷歌也在基于Android開發(fā)物聯(lián)網(wǎng)操作系統(tǒng),即Brillo。這正在形成一個完整的平臺,而不僅是簡單的操作系統(tǒng)。
最初,Unix只是貝爾實驗室的志愿者項目,沒有得到任何組織的認可。而林納斯·托瓦爾德斯(Linus Torvalds)最初開發(fā)Linux時也只是將其當作一個副業(yè)?;蛟S未來幾十年后,我們也可以對Fuchsia如何發(fā)源于谷歌侃侃而談。
評論