如何看待 Google 曝光的新 OS Fuchsia?

據傳Google正在從頭開發一款全新的操作系統,同時支持手機和PC。新操作系統代號Fuchsia。


Git代碼庫:https://fuchsia.googlesource.com/


介紹:https://fuchsia.googlesource.com/magenta/+/master/docs/mg_and_lk.md


Google的這個全新的操作系統Fuchsia是個非常有意思的東西,因為它是一個與之前的例如Android、Chrome OS、OSX、Windows 10等不同的一個操作系統。如果與已有操作系統類似的話Google就完全沒有必要去重新花大力氣從底層開發一個全新的操作系統了。不同點主要在兩個方面:第一,Fuchsia使用了一個實時操作系統的內核;第二,Fuchsia內置了一個叫做escher的基於物理的三維渲染器。

要想正確看待Google為什麼要開發Fuchsia這個操作系統的話就要從這兩個不同點入手。畢竟Google已經有了Android和Chrome OS兩個操作系統覆蓋移動和桌面兩大使用環境,而且這兩個操作系統發展的都還不錯,Android更是在移動平台佔有統治地位。所以Google開發新操作系統的目的就極有可能是為了彌補已有操作系統的不足以覆蓋新的使用環境。這個新的使用環境的新特性就是這兩個不同點——硬實時、基於物理的三維渲染。

目前來看主流的操作系統使用環境是不需要這兩個特性的,需要這兩個新特性的使用環境只有一個,那就是Mixed Reality混合現實。MR需要把虛擬的三維物體疊加到現實世界中,所以就需要一個三維的用戶界面,而且為了讓虛擬物體和現實世界無縫的融合起來,基於物理的渲染也是必不可少的。MR技術還需要的重要一點就是實時性,因為不管用戶在現實世界中怎麼運動、怎麼晃動頭部、操作系統在執行什麼應用程序,都要保證放置在現實世界中的虛擬物體和現實世界始終保持一個固定的位置關係。任何延遲都會破壞MR技術的使用體驗,所以MR需要一個硬實時低延遲的操作系統。這麼說Fuchsia就像是一個為了MR環境貼身打造的一個操作系統。因為即使是VR環境也對實時性沒有這麼高的要求。

從大環境上來說,Google目前正在發力VR/AR技術領域已是不爭的事實。Google已經有了Day Dream這個VR平台,Project Tango這個AR平台,而且Google在2014年就重金投資了Magic Leap這個MR技術的創業公司。所以Google為了未來全新的計算平台打造一款全新的操作系統也是大勢所趨。

另外最近的兩個事件也可以得出一些啟示。第一個就是微軟宣布將在明年讓所有的Win10電腦都支持holographic shell,也就是微軟的Hololens使用的全息用戶界面。Windows Holographic experience available for mainstream Windows 10 PCs next year

屆時微軟的全息用戶界面將統一桌面和移動使用環境。不管是台式機還是Hololens都將可以運行普通的平面應用程序和全息應用程序。所以Google的Fuchsia聲稱將支持移動和桌面兩大平台也就不難理解了,因為以後不管是什麼平台,用戶界面都只有一個。另外一個就是最近Magic Leap發布了大量的職位招聘信息,其中就包括操作系統的開發職位,相關的描述中有這麼一段內容

In this position, you will be developing the operating system for a mobile platform, specializing in low latency applications and rendering performance. A deep knowledge of OS development principles (hard and soft real-time, threading, resource management, security, etc...)

低延遲、高性能渲染、硬實時,聽起來是不是很像?Google重金投資了Magic Leap,Google的CEO就是Magic Leap的董事會成員。目前Magic Leap使用的操作系統就是Android操作系統改造出來的。所以極有可能Fuchsia將來就會使用在Magic Leap的混合現實設備上。

所以可以猜想,Fuchsia不是用來替代Android和Chrome OS的;Fuchsia將會支持全新的計算平台;這個計算平台將會有統一的用戶界面和用戶與數字世界交互的形式,無論在移動環境還是在桌面環境中。


我先舉一個例子。MacBook 2016 上的 touch bar,其實並不是作為一個簡單的顯示設備運行在 macOS 上,而是一個半獨立的設備。外界猜測,touch bar 運行在類似 watchOS 上。開發支持 touch bar 的功能的時候,第三方開發者的代碼仍然是運行在 macOS 上,只是通過類似 client-server 的方式去驅動 touch bar。

所以那些分析 Fuchsia 是為 VR/AR 特殊優化的理由有什麼問題呢?問題就是,如果是這樣的理由,Fuchsia 可以作為 VR/AR 的顯示子系統的專用系統軟體。但是,如果它和通用的 Unix-like 系統差別太大,就不可能擔當建立第三方軟體生態系統的重任。當 VR/AR 成為通用系統之後,與第三方開發者打交道的一定是和今天的 Unix-like 類似的通用 OS。而對於這類 OS,我看不出來任何在 Linux/BSD 之外另起爐灶的必要。

我同意隨著軟體複雜度的發展,原來計算機架構的某些假設並不成立。但是不要小看原有架構的彈性。比如說 GPU 的工作方式已經和原來操作系統的設計方式並不相同,但是設計整體架構的時候,只是盡量把適合 GPU 擔當的工作分離成為 GPU-driver 和 low-overhead graphics framework。並沒有完全替代原有通用 OS 的工作方式。

所以軟體業的「另起爐灶」面臨兩方面的壓力。第一,你永遠不要小看原有系統的 lossely-couple 的彈性。你可以替換某些單獨的模塊,但是你並沒有那麼多精力去替換整個系統。如果你用蠻力去替換整個系統,在競爭中你會被更有效率的對手擊敗。第二,你永遠不要低估挑戰整個幫助你建立軟體生態的業界的習慣的難度。採取更加穩健策略的對手會在融入業界習慣方面擊敗你。

RTOS 也是如此。只有火星車、路由器這類不需要建立第三方軟體生態的專有設備才是完全運行 RTOS 的。在更通用的設備中,需要 RTOS 擔當的部分永遠只是一個子系統。(而對於 VR/AR 類應用,我甚至看不出來現有的 GPU 架構有任何不能勝任的地方。我認為對於 VR/AR 系統,最多需要某種特別優化的 GPU-driver。)

我不知道 Google 對 Fuchsia 的具體定位是什麼。但是如果它是用來替代通用 OS,那一定會是一個錯誤。

(但凡這種涉及「另起爐灶」的問題,肯定有一堆莫名其妙就興奮不已的答案。通常都不能理解興奮點在哪裡。請問把渲染效率和內核架構放到一起說的人到底明白現代硬體渲染是怎麼執行的嗎?)


先膜拜下谷歌的取名套路,真不是一般公司能學的……

現在,外界對這款名字古怪的操作系統唯一能確定的僅有兩個信息:一是這是一個正在進行中的操作系統項目,二是這一項目並不是基於Linux開發,而是基於Magenta kernel。

由第二點能夠進一步推論出,「紫紅」(Fuchsia)很可能是用於物聯網方面,因為Linux對於嵌入式設備的操作系統開發來說並不是最佳的平台,與之相比,Magenta在針對嵌入式設備進行開發時,更容易擴容。

谷歌Fuchsia項目的Github頁面

另外從該項目的Github頁面上,也能夠發現兩位開發者Christopher Anderson 和Brain Swetland都是嵌入式系統方面的專家。

從谷歌方面關於此事最新的表態中也能夠推斷出,這一操作系統與安卓、Chrome OS沒有任何關係。谷歌的一位發言人表示,「這是一個與安卓或Chrome OS完全無關的全新開源項目,谷歌內部有許多正在進行中的開源項目。」

由此可見,該項目還處在非常早期的階段,最終不了了之也並非沒有可能。

谷歌開發「紫紅」的消息傳出後,很多人紛紛驚嘆:難道谷歌又要搞一個安卓或Chrome OS?

然而,開發一款操作系統的難度可想而知,尤其是當需要運行在各種各樣不同設備上時,對於操作系統的兼容度要求則更高,另外即便在一款操作系統被開發出來後,在開源的環境下如果沒有開發者願意為這一新平台進行相應的應用開發,則操作系統也難以最終獲得市場的認可。

谷歌目前的兩款現役操作系統便很好地詮釋了操作系統的生態圈:基於智能手機的安卓系統是智能手機最成功的操作系統,目前全球已經有超過15億運行安卓系統的手機,谷歌應用市場的應用總數已超過140萬,總下載次數超過500億,基於安卓系統的生態圈已經形成。

反觀Chrome OS,其獲得的市場認可相較安卓來說則差之千里,由於Chrome OS本身的局限性,運行Chrome OS的筆記本電腦只能進行輕量的任務操作,這極大限制了筆記本的應用場景,上網本的概念也由此而來,如今,Chrome OS通過支持安卓的谷歌應用商店,藉助業已穩固的安卓生態環境來獲得更多的市場接受度,通過支持安卓應用,Chrome OS和安卓系統相互融合的趨勢也更加明顯。

所以如果谷歌的這款全新的操作系統能夠最終面世,還需要經過開發者和市場的兩重驗證,但在物聯網方興未艾之際就開始著手布局基於這一全新領域的操作系統平台,不得不說谷歌還是想在了前面。


我只知道, 解決lisp方言過多的辦法是引入一個新的lisp方言.

那麼, 解決操作系統碎片化的方法, 可能是引入一個新的操作系統吧...


從Fuchsia代碼倉庫建立以來每日50-100次更新(merged),連元旦都如此,這樣的速度絕對是無與倫比了。不出意料12個月內必然能出實驗機,然後6個月後廠商和開發者參與,2年後就會成為新的全球第一大移動操作系統。

Google之所以幾乎重頭寫一個全新操作系統有很多原因,內部的:

  1. Android各種弊端,難以忍受,我就不列舉了,已經跟不上時代變革步伐了。
  2. 從2005年收購Android到2010年末成為全球第一大手機操作系統,Google積累了大規模廠商協同開發、應用市場運營、開發者管理等經驗,收颳了眾多的技術人員,新操作系統成功幾率非常高。
  3. Flutter 做為開發 Fuchsia 應用的模式會讓廣大安卓開發者平滑的遷移到 Fuchsia,並且會統一iOS開發(一份代碼多個平台)。有開發者支持,新操作系統絕對眾望所歸。(當然 Fuchsia 會提供 Android SDK,保證現有應用能運行於 Fuchsia)
  4. 看 Google 開發 Chrome 等大規模產品的過程,Google對大型系統有足夠強的開發、測試控制能力,絕對能成功完成。

外部原因更多了,我覺得最重要的是這兩點:

  1. 耗電量。Bjarne Stroustrup(C++語言發明人) 曾經說過C++會是移動時代的最強有力的語言,性能高、耗電量低。但是蘋果和安卓把使用C++開發普通應用的可能變得完全不可能了。從系統層到應用層都能用C++開發價值巨大,Fuchsia設計正是為此。雖然說C++開發難度高一些,但是總會有公司會使用C++來開發應用的,這點毋庸置疑。
  2. 應用、設備間通訊協議日益複雜化。Fuchsia設計能夠讓系統內部進程間通訊、設備間通訊簡單異常,能革命性的統領智能家電、物流等領域。

[追加]

2/8 內核只能在 qemu 上運行,有pc-x86-64, pixel2-x86-64,arm64,msm-trapper,pixel2 是Google新版手機。寫一個簡單繪製的應用大概要90行C++代碼,用Dart大概是50行代碼。

總代碼量:

Total Physical Source Lines of Code (SLOC) = 18,623,427

Totals grouped by language (dominant language first):

ansic: 8334151 (44.75%)

cpp: 7551622 (40.55%)

asm: 1374811 (7.38%)

python: 674683 (3.62%)

其中內核magenta:

537177 magenta ansic=444821,cpp=70307,sh=11468,yacc=3492,asm=3306,python=2663,lex=1110,lisp=6,awk=4

2/9 qemnu 運行 flutter_gallery 截圖

ps 命令截圖

2/10

已經有人寫書(elastos/myMagenta)了,贊。

5/9

最近看到工程目錄結構大量改動,並且開始啟動了文檔編寫,也已經能看到發布模塊及其組成。構建方式也變了(核心還是gn, Ninja)

flutter 進展神速,已經可以實用了。

5/17

今日召開的Google I/O 可能不會有 Fuchsia 相關內容了。連 iosched 也還是使用Java(google/iosched)編寫的。

5/22

link: Android chief Dave Burke talks about Fuchsia at Google I/O, says it will be an independent project;

5/23

在稍微了解Dart後,我改變看法了,fuchsia 的主語言應該會是Dart。

6/19

flutter 已經進入 alpha 階段了。

7/5

Build系統成熟度很不錯了,模塊結構圖:

運行截圖(支持的機器有3種是筆記本了),Mac 下支持網路比較困難

Guest 訪問截圖

7/19 業界已經公開認為安卓勢必會被Fuchsia取代

Android is a dead end

Android as we know it is dead, but itamp;amp;#x27;s not going to go away | ZDNet

7/22 忍不住從另外一個角度說了一點 Fuchsia 界面開發模式

Windows 界面開發的歷程

8/16 第一個使用Flutter並且發布的程序是 Hamilton,App Store/Play Store都更新了

9/18 開發者花了兩天時間把內核更名為 Zicron (鋯石).

總在這裡編輯怪怪的,以後更新轉至專欄了

zircon 內核使用C++的原則


Android有些環境確實不適用,中間層太厚了。iot也還缺乏一個好用的系統,Google希望在新平台上重演故技。


系統發展的需要:微內核,實時、跨平台、更好的媒體及VR/AR支持。

會很輕薄。現在的Linux內核+Android框架畢竟是拼湊的,太厚。

Linux內核原本就不實時,也不是微內核,架構較為落後。


Google:「Chrome OS,我要把你幹掉,重寫一個OS,叫Fuchsia」

Chrome OS:「Fuch」

當有公司想做一個同時兼容手機和PC的系統,就一定會遇到和WP一樣的問題。入坑了,google。


  • 沒有基於 Linux 內核,要知道 Android 和 Chrome OS 可都基於了 Linux 內核。
  • 構建於 Magenta - 一個非常輕量級的內核,通常被用於嵌入式系統。並且目前 Fuchsia 庫中的開發人員,也都是嵌入式系統方面的專家。
  • 使用 Dart 語言開發。
  • 有用戶和安全模式,支持 ARM 和 64 位 Intel 核心。
  • 支持圖形渲染,Hacker News 上有用戶分析認為該系統非常適合用於 AR 領域(Google 官方還沒有回應這些猜測)。
  • 目前該系統已經能運行在 Intel 的微型 PC (NUCs) 上,該項目的其中一位工程師透露,目前正在增加對樹莓派 3 的支持。

從目前的信息中能看出該新系統很大可能會用於物聯網領域,甚至可能會在手機、PC 上運行。但在物聯網領域 Google 之前已經有了 Brillo 系統,所以 Google 到底在打什麼算盤,還需要時間來說明。: )


我看這個東西的代碼幾天了,系統叫fuchsia,但是代碼庫還是空的。內核部分是magenta ,這個項目現在還不完善,還不能作為一個商用系統內核。而且這個新內核借鑒了不少Windows 內核的設計思想,比如內核對象,同步對象的使用方式等。

如果將來這個系統完成,Google應該會繼續使用安卓的應用框架,所以在我看,Google只是想替換掉現在安卓基於Linux 作為底層運行環境這一狀況。

在普通用戶眼裡,安卓就是一個系統,但是在懂得操作系統的工程師眼裡,安卓只是一個流行了的移動應用生態,他處在計算機軟體層次的非常top的level。換言之用戶和開發者接觸和使用的也只是一個上層組件而已。這個組件的下層運行環境可以是任意滿足其條件的操作系統或者虛擬機環境。

所以fuchsia 是要來取代linux的。


我記得第一次聽到Fuchsia是在Nougat正式版剛出不久。那時候聽到這個消息著實嚇了一跳,覺得這絕對又是一個極其「Google X」化(要麼停留idea層面要麼就是中途喪命…)的東西。在現在這個局面下一個全新自主研發的新OS……這個坑實在太大,或許谷歌相信於Google x Android的品牌效應,但是巨硬都已經砍死WP了…

而萬萬沒想到居然還真做出來了…釋出了一個Demo的apk供交互體驗。第一時間下載,里里外外體驗了…3分鐘(你們誰要是能玩3分鐘以上算我輸)內容很少,說白了就是全新的互動式UI,這次叫做「Armadillo」,中文犰狳(什麼鬼名字……)採用全新的設計風格,但還是有MD的影子,動效很牛逼,交互方式絕對不同於Android或iOS,完全卡片式的視圖,打破傳統把有序多級界面做到了無序,感覺所有層面都可以融合分開……自由度逆天,但終歸還是個最初級最低級的Demo而已,所以看看就好,感興趣的可以去下載apk或找視頻看看,蠻有意思的。

放個demo的鏈接:http://pan.baidu.com/share/link?shareid=1337727989uk=1866440866

自己把apk傳到百度雲了,方便大家下載

完全重新開發,脫離Linux,官方說基於Google自己開發的Magenta微內核。這一點可以看出谷歌真的是要打算完全0鋪墊地去再開一片生態,真的很難去猜透他這樣的真正目的,中午吃飯的時候突然冒出兩個個猜想,接下來先說比較靠譜一點的,如今整個移動端行業由iOS和Android兩方拉鋸,二者都是十分成熟且市場巨大的存在。如果說實際點,Google也許要用Fuchsia替換Android,這個想法蠻大膽,如果真這麼干,大概要幾年的過渡期,一點一點搬移,乃至整個Android生態圈都搬家到Fuchsia,但是為啥這麼搞我覺得吧,,,可能Google要做一個真正把軟硬體掌控權捏在自己手裡的這樣一個打算,畢竟現在Android以年為更新周期,各種第三方導致新版本的份額總是慘不忍睹,這樣一統一,谷歌會輕鬆很多,整個生態市場也會整齊不少。當然,這個想法依然建立在Android和Fuchsia必須互相兼容的情況下,如果互不兼容的情況下去替代Android……就好比你無緣無故扔掉所有財產然後重新去從餘額0開始掙,除非瘋了對吧……

再說離譜的那個。接下來開腦洞了!官方說Fuchsia主要針對擁有「快速處理器的現代化手機和現代化私人電腦,可以執行開放式計算的任意外設上」。也就是說這款操作系統能夠出現在各種硬體設備上。注意,快速前面是有一個「Super」的,這個概念很有意思,暗示了它的普適範圍和應用市場一定對硬體要求很高。OK咱們再來打開腦洞,Google或許正在醞釀一個或者一系列全新具有革命性顛覆化概念的硬體設備,這些設備或許涉及各個高新產業互聯性極強,需要這樣一個全新的生態系統去培育,如果等到硬體平台普及之後Fuchsia極強的適配性則便會猶如樹根一樣蔓延開來。當然,這只是我的腦洞而已……具體要這樣做難度大到爆炸,沒有很長遠成熟的分析是不可能這麼搞的。。但是這特么是谷歌啊,有啥不可能發生的……Google Glass,Project Ara等等等等多少個項目真正把錢燒進去又砍掉……但真正的技術進步就是想法大爆炸,這麼一次一次嘗試,一次一次失敗之後而誕生。真正的革命與創新哪有這麼簡單。我十分期待這次會是什麼樣子,或許是一個奇蹟,也或許像從前那樣又是個敗筆,拭目以待~

簡單截了幾張圖可以看看

PS.

最後吐槽一下Google現在的起名方式……海洋生物和零食命名法就已經夠奇葩了,,現在重開一個顏色坑,,品紅Magenta,紫紅Fuchsia………會玩……


Linux :Android的各種驅動也必須要開源喲~~

甲骨文:你用了勞資的Java,快,拿錢來~~

Google:兩位老鐵,拜拜了~~~


賭五毛錢這個系統不會比chrom os的前途好


Chrome OS表示心有不甘


目測是我大微軟的PM混入了谷歌,有了安卓、ChromeOS不用,非要再造一個輪子。

Stephen Elop後繼有人,谷歌藥丸,哇蛤蛤


其實很久以前我就想過Google為什麼不牽頭搞個Linux發行版,反正它自己也沒有強力的桌面版,ChromeOS仍然是個半殘廢(支持安卓app後好很多了,畢竟現在手機app完成度都挺高的)。

後來我明白了幾件事:Google一來是為了賺錢,二來沒精力,三來也不一定做得到,畢竟Google的根基和微軟、蘋果比起來還是淺很多的,雖然成就不輸前二者。因此Google後來就搞了個安卓和ChromeOS了事,不如說是Google自己妥協的結果,畢竟微軟花了那麼大功夫,也沒獲得怎樣的成功,仍然是一種老朽的狀態,不倫不類。

所以在經歷了很多年的積累後(比如最近幾年收購MOTO,推出自主品牌的硬體設備產品等等,還有安卓這樣較為成熟的、中大型的操作系統),Google已經有信心開發一個全新的操作系統,內核對標Linux,UI更現代化,桌面、移動全吃。當然最重要的是,Google搞的安卓並沒有賺到什麼錢,吃力不討好,所以全新的系統和全新的生態才能養活Google這個龐然大物。

但是話說回來,不是一個龐然大物的Google,又怎能完成操作系統的終極形態?所以也許一切都是一種安排,我覺得我們可以期待一下。


大家一定以為是這樣

最壞情況是這樣

其實是這樣:

搞不好就這樣:


要是去問Google為何要搞個大新聞,呃,是大系統。Google一定傲嬌的回答: Because we can...

初初看點介紹,感覺Google的想法是從win10來的,一個系統兼容所有的設備和應用。Android和ChromeOS 再到 IoT(Tango? Brillo?),全部整合;手機 平板 PC VR 再到Soli,全部支持。還可以做win10這種平板和PC之間的變形記,簡直完美,世界大同,迎來生命的大和諧 。。。

現在放出的文檔看,貌似底層是幾個系統實現的,根據不同的設備或者場景,再載入不同的系統。這個實現方式。。。感覺難以評價。

按照Google一貫的習性,這個系統的未來還很難說。可能一飛衝天,也可能默默無聞就消亡了。還要再等一兩年來看。


Android is dead.


Fuchsia發音和Fusion相近,看來也是想走融合的路。

不過這個系統才用了這麼多新的開發語言,最樂觀的估計也要好幾年才能真正讓大家認可吧。畢竟其他公司的技術投資無法像Google這樣財大氣粗,說拋棄就隨意拋棄的。


推薦閱讀:

Google 水下搜索的目的只是為了有趣嗎?
為什麼 Google 搜索結果經常是亂碼?
如何清除Chrome的dns cache(不重啟Chrome)
為什麼同樣是開源的,安卓經常被爆出漏洞而GNU/Linux系統卻少有?
Google now的作用體現在哪方面?

TAG:操作系統 | 谷歌Google | Android | Fuchsia |