【文/觀察者網(wǎng)專欄作者 余鵬鯤】
開辟鴻蒙 誰(shuí)為情種
今年5月19日,根據(jù)路透社的最新報(bào)道,谷歌已經(jīng)暫停與華為的業(yè)務(wù)。知情人士表示:“這意味著華為只能使用安卓的公開版本,無(wú)法訪問(wèn)來(lái)自谷歌的專有應(yīng)用程序以及服務(wù)”,包括但不限于Play Store、Gmail和YouTube。
面對(duì)谷歌參與圍堵制裁的嚴(yán)峻現(xiàn)實(shí),華為迅速將12年起就在默默開發(fā)的鴻蒙系統(tǒng)推了出來(lái),奏響了中國(guó)科技界反對(duì)美國(guó)貿(mào)易保護(hù)主義的時(shí)代強(qiáng)音。
5月21日,華為消費(fèi)者首席執(zhí)行官余承東在互聯(lián)網(wǎng)人方興東創(chuàng)建的老友群中表示:華為自主開發(fā)的操作系統(tǒng)將于今年秋季推出,最遲將于明年春天面市。
(余承東在方興東老友群中的發(fā)言節(jié)選)
這一消息徹底引爆了網(wǎng)友的情緒,微內(nèi)核、方舟編譯器、性能提升60%、兼容安卓應(yīng)用、打通所有平臺(tái)成了后來(lái)提到鴻蒙系統(tǒng)必提的五大關(guān)鍵詞。伴隨著鴻蒙系統(tǒng)準(zhǔn)備發(fā)布和這五個(gè)關(guān)鍵信息的披露,謠言、贊美、建議也紛至沓來(lái)。
鴻蒙將于6月下旬發(fā)布、小米手機(jī)將升級(jí)為鴻蒙系統(tǒng)、華為內(nèi)部有美國(guó)間諜被抓等消息是謠言,華為或有關(guān)方面已經(jīng)進(jìn)行了辟謠。
(小米公關(guān)針對(duì)傳言小米將升級(jí)鴻蒙系統(tǒng)所做的辟謠)
華為微內(nèi)核和新編譯器是原理性的勝利、五年后鴻蒙基本替代安卓、華為讓谷歌無(wú)法淡定等論調(diào)則是贊美。
有人則建議華為要利用微內(nèi)核的伸縮性,搞好嵌入式設(shè)備,形成生態(tài)的大一統(tǒng),真正讓鴻蒙搭載的軟件做到一次編譯處處使用。
筆者主張?jiān)谌A為新系統(tǒng)沒(méi)有披露更多消息之前,謠言要打擊,贊美要適度,建議要符合實(shí)際。而目前很多媒體工作者急于看到中國(guó)自主操作系統(tǒng)成長(zhǎng)起來(lái),對(duì)鴻蒙的表現(xiàn)有很多脫離現(xiàn)實(shí)的預(yù)期和估計(jì)。事實(shí)上中國(guó)自主操作系統(tǒng)和鴻蒙真正發(fā)展起來(lái)需要的是輿論長(zhǎng)期的關(guān)注和支持,而非國(guó)外不制裁時(shí)極盡漠視,國(guó)外一制裁則肆意夸大其作用和性能。我認(rèn)為這是一種捧殺。
華為鴻蒙采用微內(nèi)核可能不會(huì)有明顯的性能優(yōu)勢(shì)
國(guó)內(nèi)幾乎所有媒體在提到華為鴻蒙采用的是微內(nèi)核的技術(shù)路線時(shí),都會(huì)強(qiáng)調(diào)微內(nèi)核更先進(jìn)、代表著未來(lái)、性能也更強(qiáng)、擴(kuò)展性非常優(yōu)良。
的確,微內(nèi)核出現(xiàn)的更晚,概念上也更誘人,理論上擁有很多優(yōu)勢(shì)。但就目前實(shí)際使用的操作系統(tǒng)而言,采用微內(nèi)核的操作系統(tǒng)在性能上并不占優(yōu)。
微內(nèi)核、宏內(nèi)核可能多數(shù)人并不熟悉,但是Windows系統(tǒng)大家?guī)缀醵加眠^(guò),Windows系統(tǒng)的內(nèi)核就是一種微內(nèi)核。與Linux相比,Windows幾乎沒(méi)有性能優(yōu)勢(shì)。
以最強(qiáng)調(diào)性能的超算領(lǐng)域?yàn)槔,早?012年時(shí)國(guó)際TOP500組織公布的全球超級(jí)計(jì)算機(jī)500強(qiáng)排行榜中,Linux在超算Top500名中占據(jù)了其中462臺(tái)的操作系統(tǒng)寶位,占比94.2%。
(2012年超算500強(qiáng)中Linux的占比)
而在2017年超算Top 500競(jìng)賽中,500臺(tái)里有498臺(tái)運(yùn)行Linux,剩下的兩臺(tái)則是Unix,Linux比去年進(jìn)步一臺(tái)。2018年宏內(nèi)核的Linux則完全壟斷了超算Top500的操作系統(tǒng)。
與之形成鮮明對(duì)比的是,開發(fā)時(shí)間早于Linux近十年,且采用號(hào)稱先進(jìn)微內(nèi)核的Windows則在超算領(lǐng)域節(jié)節(jié)敗退。在每年性能最強(qiáng)的500臺(tái)超算的市場(chǎng)份額,由巔峰時(shí)期的幾十臺(tái)掉到近年的沒(méi)有。
因此鴻蒙采用微內(nèi)核可能會(huì)具有一些優(yōu)點(diǎn),但是我們不宜夸大這種優(yōu)勢(shì),最終鴻蒙會(huì)具有怎樣的性能體驗(yàn)還是要看華為針對(duì)它所做的優(yōu)化,而非因?yàn)樗俏?nèi)核所以肯定性能強(qiáng)。
采用微內(nèi)核之后生態(tài)管理的壓力會(huì)更重
宏內(nèi)核,就是把系統(tǒng)所需的很多部分都集成進(jìn)內(nèi)核。以Linux系統(tǒng)為例,進(jìn)程、線程管理、內(nèi)存管理、文件系統(tǒng)、驅(qū)動(dòng)、網(wǎng)絡(luò)協(xié)議等等部分都在內(nèi)核里。好比瑞士軍刀,耦合性強(qiáng)效率也高。
微內(nèi)核,就是內(nèi)核中只有最基本的調(diào)度,把其他系統(tǒng)模塊都做成內(nèi)核外的一個(gè)進(jìn)程。每個(gè)進(jìn)程只做好一件事情,最后組合起來(lái)實(shí)現(xiàn)系統(tǒng)的功能,就像搭積木一樣,組合性非常強(qiáng),而且每一個(gè)進(jìn)程只影響與之相關(guān)的一小部分,穩(wěn)定性也比較強(qiáng)。
(結(jié)構(gòu)上類似于積木的中間件)
從原理上說(shuō),微內(nèi)核要比宏內(nèi)核靈活,更方便修改。但是宏內(nèi)核也并非像少數(shù)媒體所說(shuō)的幾乎無(wú)法修改,只不過(guò)宏內(nèi)核的修改要把內(nèi)核這個(gè)“瑞士軍刀”拆開,移出相應(yīng)的部分,對(duì)這個(gè)部分進(jìn)行替換和增刪。最后再移入內(nèi)核中檢查其兼容性和有無(wú)錯(cuò)誤并重新編譯好內(nèi)核。
而積木式的微內(nèi)核就要容易地多,無(wú)非是移出一塊,再用新的一塊進(jìn)行替換即可。不過(guò)這種方便很大程度上對(duì)廠商的生態(tài)控制能力提出了較高的要求。例如Windows在安裝了較多軟件或者流氓軟件之后,系統(tǒng)會(huì)變得卡頓,即使卸載這些軟件也無(wú)法完全恢復(fù)到之前的狀態(tài)。
這就是由于Windows的微內(nèi)核允許軟件廠商將啟動(dòng)項(xiàng)等內(nèi)容寫入系統(tǒng)進(jìn)程造成的。隨著這些“外來(lái)積木”的加入,微內(nèi)核難以避免的會(huì)變得越來(lái)越大,速度嚴(yán)重受影響。
同時(shí)我們還要看到Windows畢竟是一個(gè)非常成熟的系統(tǒng),Win 10自帶的Windows Defender是Windows下最強(qiáng)大的安全軟件之一。應(yīng)用軟件失范的態(tài)勢(shì)已經(jīng)在微軟的努力下得到了控制。
而安卓系統(tǒng)盡管讓所有的應(yīng)用程序都分別跑在各自的虛擬機(jī)中,最大程度的降低了安全風(fēng)險(xiǎn)和生態(tài)管控的難度。但是應(yīng)用軟件因?yàn)榭梢灾苯邮褂靡恍┫到y(tǒng)的中間件,開機(jī)自啟以及未經(jīng)授權(quán)錄音錄像等問(wèn)題也是一直反反復(fù)復(fù)。
(安卓的架構(gòu),軟件框架除了使用虛擬機(jī)外還可以直接使用一些中間件)
如果華為使用了微內(nèi)核,在不如微軟和谷歌強(qiáng)勢(shì)的情況下如何進(jìn)行生態(tài)管理,這也是值得深思的問(wèn)題。
方舟編譯器兼容性如何是個(gè)問(wèn)題
根據(jù)外媒TechNave報(bào)道,華為攜手騰訊,與OPPO、VIVO等智能手機(jī)廠商一起進(jìn)行了鴻蒙系統(tǒng)性能相關(guān)測(cè)試,并給出了測(cè)試結(jié)果。結(jié)果表明,相較于配備谷歌安卓操作系統(tǒng)的智能手機(jī)而言,搭載華為鴻蒙系統(tǒng)的智能手機(jī)在系統(tǒng)運(yùn)行速度上比前者高60%!
但是這并沒(méi)有說(shuō)騰訊的軟件可以不加修改的直接通過(guò)方舟編譯器編譯后運(yùn)行在鴻蒙系統(tǒng)之中,也沒(méi)有說(shuō)與谷歌原來(lái)的zygote編譯器編譯時(shí)的命令和參數(shù)保持一致,當(dāng)然經(jīng)過(guò)方舟編譯器編譯的程序能否跑在普通的安卓系統(tǒng)里也是一個(gè)未知數(shù)。
同時(shí)反過(guò)來(lái)說(shuō),鴻蒙按目前的消息是兼容安卓,但是不是所有應(yīng)用軟件都能夠不加修改的運(yùn)行在鴻蒙中?
這些問(wèn)題都是中小軟件公司決定向鴻蒙平臺(tái)遷移或者開發(fā)方舟編譯器版本時(shí)考慮的主要問(wèn)題。不解決好,軟件商就會(huì)有后顧之憂。
華為方舟編譯器是如何做到第三方應(yīng)用性能提升的?目前還沒(méi)有官方的回應(yīng),而流傳的消息則有兩種。一種是說(shuō)華為針對(duì)安卓原來(lái)的編譯器進(jìn)行了深度的魔改實(shí)現(xiàn)了性能的巨大提升,一種是說(shuō)華為通過(guò)將Java代碼繞過(guò)虛擬機(jī)直接翻譯成機(jī)器碼來(lái)實(shí)現(xiàn)的。
當(dāng)然還有一種混合的說(shuō)法,即華為通過(guò)將Java代碼繞過(guò)虛擬機(jī)直接翻譯成機(jī)器碼來(lái)對(duì)原來(lái)的編譯器進(jìn)行了深度的魔改。
針對(duì)直接將Java代碼翻譯成底層機(jī)器碼的方法,筆者認(rèn)為這當(dāng)然有利于提升性能,但不利于應(yīng)用程序的可移植性和可維護(hù)性以及操作系統(tǒng)的安全性。
總而言之,世界上自己編寫相應(yīng)編譯器的公司或者團(tuán)體并不少,但多數(shù)也只是在一個(gè)極小的范圍內(nèi)得到了應(yīng)用,其中不乏出身名門者,比如英特爾的ICC。主要就是因?yàn)檐浖嫒菪曰蛘哂布嫒菪缘膯?wèn)題沒(méi)有得到妥善解決造成的。
毛主席說(shuō):“ 我們的同志在困難的時(shí)候,要看到成績(jī),要看到光明,要提高我們的勇氣!币虼藢(duì)鴻蒙進(jìn)行贊美和表?yè)P(yáng)無(wú)可厚非,同時(shí)我們也應(yīng)該看到支持華為循序漸進(jìn)的解決可能面臨的這些問(wèn)題也很重要。
信息產(chǎn)業(yè)自主化的前途必然是光明的,道路必然是艱難的。我們要支持,但不能捧殺,要拿出歷史的耐性,期待真正的輝煌。