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