華為的方舟編譯器的推出,就是為了推出自己的操作系統做準備嗎?

南風沁人心


我認為確實是為了推出自己的操作系統做準備,之前有關華為自己操作系統即將面世的消息,在MWC2019之後就開始流傳於網絡之上,根據餘承東的表示“如果逼不得已,將會選擇內部解決方案”,為什麼沒選擇現在就直接推出呢?當時市場分析主要有以下幾個方面的原因:

1.系統尚不成熟,還沒有達到面世的水平;

2.系統生態體系不成熟,華為系統如何搭建自己的應用生態還沒有好的解決方案;

3.目前android系統可以滿足需求,且沒有遇到禁用危機。

如果我們再結合這次華為在P30國內發佈會上,同步推出的方舟編譯器這一舉動,前後聯繫起來,就能很好的理解華為背後的初衷是什麼了,有關推出的方舟編譯器的兩個方面的目的我們一會兒再說,首先我們先來了解下這次華為推出的方舟編譯器吧。

木石科普:什麼是方舟編譯器

我們先從編譯器說起,編譯器可以說是用來生成軟件的軟件,是軟件與芯片之間的橋樑,其性能,效率直接影響到最基礎的消費者體驗,因為任何在手機上的程序都需要經歷軟件開發的過程,軟件開發使用的語言是易於程序員理解的高級語言,程序在手機上運行需要轉換成可以高效執行的機器碼,而這個轉換的過程就是由編譯器完成的。

那麼這次華為推出的方舟編譯器,就是在軟件編程、轉碼方面實現了很大程度的優化,據華為介方舟編譯器能夠從底層解決Android運行效率問題,讓Android擁有與iOS同臺競技的能力,與其他Android廠商形成代差,能讓系統流暢度提升24%,系統響應度提升44%以上,第三方應用操作流暢度提升60%以上。

一切都是為了華為OS

其實從表面上看,方舟編譯器並不是一個系統,只是安卓系統下的一款工具,但同時他也可以理解成為一個入口,通過這個編譯器,華為可以讓眾多的APP廠商使用其編譯器,聚合廠商。而且編輯器可以根據時機以及華為的需求慢慢升級為自主操作系統的應用開發工具,以後大家使用這個“方舟編譯器”,就可以開發出華為自主操作系統需要的APP,來解決生態的問題。

所以從這個角度去思考華為的這一舉動,我們就可以很明確的看出,華為推出方舟編譯器的最終目的,其實也為了自己的操作系統的應用生態搭建在做準備,這是華為的最終目的。

另外一個方面呢,即便自己的操作系統短時間內無法面試,那麼這個方舟編譯器給系統的優化做出了這麼大的提升,這對於華為的品牌、行業影響力也是具有很大的促進作用的,這應該算是其第二個目的。

我是“木石心志”,喜歡就點個贊再走吧~


木石心志


說到關鍵點了,“方舟”編譯器,就像一把尖刀直插開發端,掌握開發工具。說到這兒你應該明白了吧? 試想,當所有開發商都在用方舟來進行程序編譯,假如某天華為突然升級編譯器,支持新無縫支持自家系統呢?是不是釜底抽薪的感覺?

另外我猜測華為的新系統跟安卓高度相融,使用方舟編譯器可以非常方便的轉換到新系統,降低開發商適配成本,那麼新系統的生態搭建難度將會縮小百倍!

“方舟”不是突然冒出來的,是華為研發並驗證已久的,說明這步棋早已佈局好,難怪任正非為什麼這麼有自信,不知道後面還有多少殺手鐧、B計劃是我們不知道的?

最後,我大膽再猜測一下,接下來

第一步,華為可能會在業內普及方舟編譯器,隨後將編譯器體驗提升到最好。

第二步將會正式發佈新系統、新特性,支持華為、榮耀、其他品牌手機,自願更新或切換。

第三步,將麒麟處理器利用價格優勢對國內友商開放,並以此實現讓友商手機兼容華為系統應用,甚至使用華為系統作為底層(使用麒麟芯片必須支持新系統?),最後國內開發商全部歸順新系統,方舟編譯器使命完成!華為發佈“方舟”編譯器是否在下一盤大棋?

如果你也有這種感覺那就對了,這還得從頭說起,華為經過數年的風風雨雨,在手機領域從一家小品牌,到國內數一數二,花費了大量心血,隨後在國際市場遇到西方國家的強烈壓制,讓華為面臨著無路可退的局面,芯片、手機、通訊都消耗大量資源,此時是不可能放棄的,但西方遏制中國的手段決不止這一個,華為是面臨一個強大的對手,必須用心下好這盤棋,想要下好就得走一步看七步,我們看看華為如何佈局。

首先手機品牌方面,華為已經獲得成功(這裡要感謝美國),其次硬件方面核心的芯片已自主掌握,其他的零部件掐不住華為,剩下的就是軟件生態這一項了。還記得華為前段時間放風出來的營銷軟文吧,全網突然鋪天蓋地的說華為自研系統,這是在幹什麼?沒錯,拉關注、造勢,這一點華為已經輕車熟路。但是人人都知道做系統並不難,難的是空有平臺沒有生態,沒有app的系統就是一個空殼子,解決這個問題甚至頭條有不少用戶很有“創意”的提出花錢請人開發的辦法,但是這只是一句玩笑不可能實現,我們看看華為怎麼做的?

說到關鍵點了,那就是“方舟”編譯器,一把尖刀直插開發端,掌握開發工具。說道這兒你應該明白了吧? 試想,當所有開發商都在用方舟來進行程序編譯,假如某天突然宣佈,升級後的編譯器,支持新系統呢?是不是釜底抽薪的感覺?

另外我猜測華為的新系統我猜測絕對跟安卓程序高度兼容或類似,使用方舟編譯器可以非常方便的轉換到新系統,降低開發商適配成本,那麼新系統的生態搭建難度將會縮小百倍!

方舟這樣的編譯器不是突然冒出來的,是華為研發並驗證已久的,這步棋要在第一步的時候就已想好,任正非為什麼這麼有信心,後面還有多少步棋是我們不知道的?

還有,我大膽再猜測接下來,第一步,華為會盡全力在業內普及方舟編譯器,隨後將編譯器體驗提升到最好,第二步將會發布新系統、新特性,支持華為、榮耀、其他品牌手機,第三步,將麒麟處理器利用價格優勢對國內友商開放,並實現讓友商手機兼容華為系統應用,甚至使用華為系統作為底層(使用麒麟芯片必須支持新系統),最後國內開發商全部歸順新系統,方舟編譯器使命完成!


熱度傳媒超哥


首先,方舟編譯器今年會在國內開源,比較振奮人心,後續可以持續關注。


解釋下什麼叫編譯器,簡單但並不嚴謹的來講,可以理解為一個計算機的“翻譯官”。CPU是命令的最終執行者,但是它執行的命令並不是大家平時耳熟能詳的C語言、Java語言等,它只能夠認識機器碼。而C、Java這些都是高級語言,需要編譯器“翻譯”一下,把高級語言翻譯為機器碼,CPU才認識。


P30發佈會上,說安卓目前程序是“邊解釋邊執行”,效率比較低下,針對這點做了改進,app運行效率大幅提升。這個也可以簡單但並不嚴謹的理解下。就像是做翻譯,有兩種,一種是先拿到英文稿,翻譯人員認真詳細的看一遍,充分理解內容,翻譯成中文。另外一種類似於同傳,實時聽到一段話,然後翻譯出來。而後者就可以簡單理解為程序的“邊解釋邊執行”,拿到一塊代碼,翻譯成機器碼,再拿下一塊代碼。Android是基於Java語言進行開發,而Java是“邊解釋邊執行”的。而C語言則相反,它是全部翻譯為機器碼後再執行。當然現在Android本身也在逐步演進,兩種方式也在逐步融合。


這次華為發佈的方舟編譯器,提到了將改變Android原有的“邊解釋邊執行”,全程機器碼運行。可以說,不再採用原來類似於“同傳”的方式進行。由於還沒有開源,尚不清楚華為的解決方案是什麼,但是從多種潛在的方案中,我們可以推測出華為潛在的一些意圖。


終端銷量意圖轉化為生態,用性能為銷量錦上添花


這個意圖的邏輯,是基於以下的技術推測。我們從應用商店上安裝app時,下載下來的是一個安裝包,這個安裝包就是編譯器編譯之後的產物,目前基本上是字節碼,不是機器碼,要再進行下轉化。那華為的解決方案,可能的一種方式,就是下載下來的這個東西,就是機器碼,機器碼執行起來肯定會更快。


如果是這種解決方案的話,必然需要依託華為應用市場來進行。目前華為的手機基本都會預置華為應用市場。在華為手機大量銷售的情況下,大量用戶從華為應用市場下載app,而且是優化過的app,性能運行在華為手機上效果更好,自然會形成一套良性循環,搭建一套生態體系。


這其實和蘋果的邏輯有相似之處,蘋果的app只能運行在IOS系統上,而在蘋果手機上運行時,一般的硬件也會因為優化的好運行很流暢。


Android本來是開放的體系,華為通過切入編譯器,利用其手機銷量較大的優勢,疊加內置華為商城,將開放的體系打造出來了一個相對內部的生態。


從商業上來看,這一招十分的巧妙。但這也是基於華為手機銷量是較大的,這樣才能做。其實谷歌也做過類似的探索,谷歌也做安卓手機,想建立生態體系,只不過手機賣的一直不是很好,所以也就沒建起來這一套體系。華為可以說和這種模式有相似之處,都是企圖基於硬件銷量搭建生態。


通信觀察員


方舟編譯器,首先要講一下什麼叫編譯。因為機器是隻能做數字計算的,能夠讓機器去運算的,數字的語言就是機器語言。除此之外的所有計算機語言都是非機器語言。為了讓機器可理解,相對於機器語言的高級語言都需要一個轉換,從高級、機器不可理解,轉換為機器可理解的機器語言,這樣的一個轉換過程就叫做 編譯(Compile),由 編譯器(Compiler)來完成。

對這個方舟編譯器,我們有幾個猜測。

一 純編譯,就是全部自己寫的,不過這個工程量很大,代碼也會很多,優點是全是自己的寫的,缺點肯定是安裝文件會特別大。

二 種是華為學的是蘋果手機系統,自己編了個runtime編譯器,取名方舟編譯器,然後可以加載所有的內容。這走的是蘋果的套路。

三 是華為自己先把一些常用的機器碼編譯出來,再加上runtime。這種也是大家覺得最靠譜的一種觀點。

不可否認,華為在為自己的系統做著準備,但是不管是怎麼講?華為這樣做也是真的在為自己以後的後路做準備,其實這也提醒其他的手機廠商小米OPPO vivo也應該有華為這樣的戰略遠光才好。


天豪孤情劍


文 | 極客宇文氏

方舟編譯器究竟想做什麼?

我之前問答也有提到,方舟編譯器從技術角度上說就是從編譯的層面提高手機軟件的性能。

不僅僅是華為手機,目前安卓手機上的大部分軟件都是Android開發人員開發的,所使用的編程語言是Java,Java是一種既可以被認為是編譯性語言又可以被認為是解釋性語言的語言,它被編譯class字節碼以後,又要經歷Java虛擬機的解釋才能最終被翻譯成機器可以讀懂的機器碼。

這個過程就是比較耗費性能的一件事情,尤其是安卓軟件,比如一個安裝包被手機點了安裝以後需要花費一定時間才能完成,在現在安裝包越來越大的情況下,這時間也被慢慢放大,還有一些手機軟件運行起來啟動的時候也是屬於比較緩慢的。是因為在手機上這些軟件被編譯器邊解釋邊運行,因此這個過程存在優化空間。

華為的方舟編譯器具體實現我沒有去深究,但是它的思路大概就是想在這個“解釋”的過程進行優化改造,如果這個編譯器可以理想化的話,那麼華為確實將在安卓軟件開發層面打下一個非常漂亮的格局,但是最終谷歌會不會不樂意就不知道了,畢竟安卓操作系統是谷歌所有的,我們華為明顯是想從中分一杯羹。

因此方舟編譯器是在安卓手機上進行一次革命,當然華為一定會想好如果自己擁有一套操作系統,這個方舟一定會兼容這個操作系統的,生態環境無法銜接是理所當然的事情。

宇文氏習慣性總結:

無論你有沒有看懂我說的方舟編譯器的作用,你只需要知道華為確實是一個非常有理想有格局的企業,無論方舟成敗與否,為華為點贊。

關注“極客宇文氏”,一名有料熱心的軟件工程師。

極客宇文氏


小米類似猴也追不上華為,差距越來越大,華為有芯片了,快走自己的系統了,現在在做生態,小米屁都沒有,還給別人科普,靠嘴科普出來終究是虛的


奔波的飛毛腿


如果真是這樣,一點戲也沒有。


分享到:


相關文章: