03.06 鴻蒙系統用什麼語言?如何評價?

互聯網科技愛好人


大家都知道,谷歌安卓系統是以Linux為基礎開發的,而華為鴻蒙系統也是基於Linux進行開發,因為Linux從一開始就是開源軟件,所以任何人都可以免費的使用,也正因此安卓系統可以做到免費和開放,成為全球用戶群最大的手機系統。

鴻蒙系統作為華為的備用方案,首先必須要考慮的就是兼容性和開放性,這樣更加自由的Linux自然就是首選,由於Linux可以運行在多種硬件平臺上,所以基於此開發的鴻蒙系統可以儘可能的兼容適配更多的硬件設備,開發者在上面開發應用相對來說也會更簡單一些。

所以從系統內核和編程語言上來說,鴻蒙系統應該就是Linux+Java,這樣做可以最大化的減少鴻蒙系統的生態建設成本,意味著安卓生態現有的應用資源可以兼容到鴻蒙,在系統應用初期能很大程度解決沒有軟件可用的問題,這一點對於鴻蒙來說至關重要。任正非也說過,製作操作系統並不難,最難的是在於生態環境搭建。

然而Linux儘管自由度夠高,但是比起UNIX這種閉源式內核來說仍然效率偏低,華為為了更好的適配環境和兼容性不得已繼續使用Linux內核,但是華為這幾年也沒閒著,開發的方舟編譯器可以在底層代碼上進行大幅度優化,未來隨著鴻蒙系統+方舟編譯器+麒麟CPU的軟硬件組合,華為產品的性能和效率可能會超過現有的所有安卓手機,這意味著華為可以垂直整合優化整個系統,未來潛力很大。


嘟嘟聊數碼


上乾貨,我寫過OS,編程語言一開始需要彙編語言(Nasm,GAS等),我本人習慣GAS,用匯編完成引導後,就可以跳入用C寫的內核,C和彙編其實是一回事,只是寫法不一樣,最後都是ELF格式的二進制文件。

啟動過程很簡單,一開始準備一個軟盤,Linux dd命令可以生成,第一扇區的最後2個字節分別是0x55和0xaa,鏈接器把程序入口放在第一扇區的0x7c00處,一開機BIOS自檢後就會跳入0x7c00處執行引導程序,至於為什麼是0x7c00,因為它是工業規範。

2、如上截圖是我用GAS +C寫的一個簡單的多任務操作系統(參考了tinix),引導過程用了Grub的multiloader協議,grub已經完成了A20地址線的初始化以及進入保護模式的GDT設置,而我們內核要乾的事,就是初始化timer,文件系統(廣義的文件,不僅僅是磁盤文件,所有的FD都是文件)、進程管理、系統調用、shell等等。 上圖的九九乘法表就是我在自己OS上看開發的一個應用程序demo,它跟內核是分開的。

最後,開發操作系統,最基礎的是彙編語言和C,其它的應用程序語言如java等還拍不上用場,而用C寫程序,還不能亂調用API,因為此刻你的OS裡可能都沒有實現標準的C語言運行時庫。 OS開發,最難的不是怎麼編程,而是如何實現各種工業規範





M小哥哥


    鴻蒙、安卓、IOS的共同祖先是UNIX,而UNIX是C語言開發的,“鴻蒙”操作系統必然是C語言編寫的。“鴻蒙”操作系統提供給應用開發商的開發工具很可能是Java,下文具體說一說。


    “鴻蒙”操作系統的組成

    華為的“鴻蒙”操作系統由四部分部分組成:Linux內核+麒麟處理器的運行庫+編譯器+虛擬機。


    Linux內核:Linux內核是開源的,由linux內核團隊維護,而linux的內核採用了C語言,而不是很多認為的C++,C語言的執行效率要遠高於面向對象的編程語言C++。


    運行庫:運行庫在Linux基礎上,針對不同的處理器,運行庫需要進行適配。比如麒麟處理器指令集和高通處理器的指令集可能存在差異,不是完全相同,那麼就存在一個適配的問題,而程序庫通常情況下采用C語言編寫。

    虛擬機:虛擬機用於溝通操作系統和硬件,是兩者之間的橋樑,屏蔽了不同系統之間的差異性,可以實現跨平臺,同時很大程度上降低了應用開發難度。目前,普遍使用的虛擬機是Java虛擬機。


    編譯器:編譯器將Java編寫的代碼轉換成虛擬機機器碼或者硬件可以直接認識的機器碼。華為的方舟編譯器實現了代碼的靜態編譯,相比傳統安卓應用流暢度提升了60%。


    “鴻蒙”和安卓的差異

    鴻蒙操作系統兼容安卓應用,那麼“鴻蒙”操作系統和安卓有什麼區別呢?

    1)架構不同

    鴻蒙操作系統是微內核設計,而安卓系統是基於linux的宏內核設計,相比來說,微內核開發難度大,但是系統穩定性高。

    宏內核,內核包含了操作系統絕大多數的功能,而且這些功能和模塊具有最高的權限,好處是系統開發難度低,但是各模塊具有最高權限,一個模塊出錯,整個系統崩潰,這也是安卓系統容易崩潰的原因。

    微內核,內核僅包括了操作系統必要的功能模塊(任務管理、內存分配等),其他模塊不具有最高權限,系統穩定性得到了提升。


    2)跨平臺支持

    鴻蒙操作系統同時支持手機、電腦、智能穿戴設備、智能家居,形成一個無縫的、統一的操作系統,並且兼容所有的安卓應用。這個操作系統與谷歌正在研發的Fuchsia思路一致,是為5G和物聯網時代準備的,華為的“鴻蒙”操作系統提前發佈,可能給華為一個反客為主的機會,按照餘承東的說法“塞翁失馬,焉知非福”。


    總之,華為的“鴻蒙”操作系統,底層(Linux內核、運行庫)是用C語言編寫的,虛擬機可能採用了C或者C++語言;面向應用開發商的開發環境很可能是Java語言。


Geek視界


底層的東西一般不是彙編就是C語言了,可以說不關你是win操作系統還是linux操作系統還是蘋果操作系統,內核的編寫可能更多的是彙編來實現,尤其是關鍵內核,比如處理文件系統、內存調度、資源分配、地址管理等方面更多的會直接使用匯編來寫,其他的一些會大量的使用C語言,可能某些模塊還是涉及到C++,華為鴻蒙系統是基於Linux系統開發的系統,現在有一個論調就是一說基於linux開發,大家就說這還是在別的系統上二次開發的,根本不是國產的東西,其實這完全就是一個謬論,因為很多時候就算是基於linux開發,很多核心的東西還是需要自己來搞,可以說單說一個linux內核基本上是什麼都幹不了的也就是個開關機的作用,因此其他的各種功能和系統的支持模塊都必須從頭做起,這就好比你要蓋一個房子,政府就是給你批了一塊地,這塊地就是內核,至於房子要建成什麼樣子或者是內部需要裝修成什麼樣子,這個都要取決於建設者,那麼這塊地就是內核,而房子和內部裝修都是基於這塊地上建成的。

為什麼我們不自己開發個內核,其實開發一個操作系統如果要讓中的工程師來幹還是可以搞的但問題是你搞出來的這個東西沒有生態系統,沒有第三方應用軟件支持,那麼你開發的這個系統就是個廢物產品,大家並不會去用它,但是基於linux開發的話,可以很完美的支持現有的各種軟件及生態應用。因此搞一個操作系統難點並不是在於開發一個完整的內核,難點在於要建立一個強大的軟件生態圈這個是最難做到的。

華為鴻蒙系統既然是基於linux系統開發的,那麼其大部分的功能開發使用的語言肯定就是C語言,這是絕對可以肯定的。


程序小崔


根據華為公佈的方舟編譯器資料 可以推測鴻蒙系統是用C、C++語言編寫

先來看華為公佈的方舟編譯器原理圖

從上面的華為方舟編譯器資料可知:

1、鴻蒙系統和方舟編譯器的思路應該是一樣:直接使用機器語言編寫app,取消安卓系統的ART虛擬機,直接編譯為二進制機器碼;

這樣的好處是:不需要中轉,執行速度快;劣勢是:必須要有大量的靜態方案、內存空間要求更高。

2、由於是用C、C++進行編寫app,對軟件開發人員要求高,提高了建設生態鏈的技術門檻。

3、由於華為目前有芯片、系統等軟件和硬件基礎,華為鴻蒙系統若走蘋果IOS封閉系統模式,雖然路途漫長但前途可觀。

但華為主業是通訊,並非手機,這和蘋果主業是手機的特點不同。華為沒有辦法全身心投入開發封閉式的鴻蒙系統。

華為因為手機並非主業,只能走開源之路。但作為手機制造商的華為,如何讓其他手機制造商使用的系統,將是一個巨大的難題。

畢竟沒有一個手機制造商去幫助一個依是裁判員又是運動員的手機系統發展,導致自己的市場份額縮減。


可以預見的鴻蒙系統

1、除華為外其他國產手機公司不會安裝或重視。由於google禁售的是華為,對於小米等其他國產手機公司不禁售,因此小米等其他國產公司不會安裝鴻蒙系統,即便出於公共形象的壓力而安裝,也不會真正重視,最多就是做個樣子。

反正,內鬥內行吧——除非華為讓渡鴻蒙系統的控制權!

2、鴻蒙系統即便能夠兼容安卓應用,在過了新鮮期之後,如何提升用戶體驗度是關鍵。如果像阿里OS一樣可以遠程刪除用戶的app,就直接死翹翹吧。

保持軟件開發商的利益和用戶體驗度的平衡,是鴻蒙系統能否生存的關鍵。開發商沒有得到利益,不會開發鴻蒙系統的app;用戶體驗度差,用戶就不會用鴻蒙系統。



每天原創,給你有價值的觀點!
隨手關注,你的支持才是動力!

歷史哨聲


中國人內戰內行外戰外行,一說到麒麟980就噴句架構是美國的,說得好象它們用的驍龍、聯發科處理器是自己研製似的,實際是華為買下永久使用權,就象買下房子屬私有財產,反觀高通和蘋果架構還是借用的。華為自己開發的達芬奇架構NpU麒麟810和鴻蒙操作系統,看它們又挖空心思發明什麼新名詞來噴,支持華為、京東方民族企業。

華為自研達芬奇架構的NPU!CPU(魔改)、GPU(公版)、NPU(自研)、ISP(自研)、DSP(自研)、基帶芯片(自研)!也只有海思和高通能做到!蘋果、三星、聯發科也是公版CPU魔改,那麼只剩GPU了,期待華為自研GPU早日到來!國內其手機廠商沒製作半塊芯片,只會撕裂喉嚨犬吼:安兔兔跑分。

麒麟810是用來輾壓驍龍730的並對外出售,除回應特朗普禁售驍芯片作出的強硬反制外,並打破麒麟處理器不外售的堡壘,第一批使用它的友商是360、中興、努比亞、魅族、酷派等。看華為發佈會是瞪大眼睛看新科技,小米是看性價比和安兔兔跑分吊打友商,藍綠廠是看小鮮肉擺型給記者拍照,蘋果是熟讀老三編看革命樣板戲。

美國向中國禁售芯片,如果華為不出手相救,友商全爬下。鴻蒙操作系統會兼容安卓系統,即現時安卓用什麼語音它用什麼






大公子影視特效製作


先說結論:鴻蒙應該是用C語言和彙編語言寫成的。

鴻蒙應該Uinx和自研的結合體

首先華為不可能從0開始自研一個操作系統,應該是基於UNIX操作系統改造過來的。參考了目前安卓,ios操作系統的優點,避開了他們的缺點,然後基於未來的物聯網設備的特點,走上了自研操作系統的征程。

鴻蒙的功能

根據這次華為開發者大會透漏的內容,鴻蒙具有四大特點:

鴻蒙操作系統可謂是在流暢上下足了功夫,微內核,實時操作系統,低時延都是為了讓鴻蒙操作系統響應的夠快,這樣才有可能競爭過安卓和iOS。

但華為又提供了很多未來會用的功能,如果分佈式架構,可以實現跨屏體驗。比如手機和筆記本的跨屏體驗,手機和智慧屏的跨屏體驗,未來會出現很多有意思的應用和操作。在手機上的內容或者操作,立馬可以提現到另外一個設備上,不需要後臺提供支持,這個體驗是不是很棒棒噠!

評價

安卓和iOS是為了手機而生,但鴻蒙的志向更遠大,是為了未來的物聯網而生,在充分考慮了未來設備的特點和場景後,提煉出了鴻蒙的四大功能,這四大功能看起來平淡無奇,實際上威力是很巨大的,鴻蒙的目標不是當下,而是未來5G商用後,各個AIoT設備的使用需求。

手機的保有量是可以看到天花板的,但物聯網設備的天花板目前是看不到的,因為未來的萬事萬物都有可能互相連接,他們都要運行操作系統,鴻蒙是大有可為的。


逐浪踏雪


感謝閱讀,很高興為你解答。

鴻蒙系統到底用的什麼語言編寫的?



看到這種嚴謹的問題時,我告訴自己不能去瞎猜,瞎寫,於是去網上查證了2個小時。找到了比較可靠的答案,分析如下。

張汝京博士是中芯國際的創始人,在中國半導體業界是絕對的權威人士。最近他接受採訪明確表示:華為的鴻蒙系統是“微內核設計”,完全推到重來,基於5G平臺,從新開發的系統。和以前安卓,IOS,完全不一樣,也不基於傳統的Linux宏內核和UNIX。(資料來源:微博.工信布)

這種“微內核設計”的鴻蒙系統,我認為很大可能是最基層的C和C++語言來編寫,因為歷史上目前出現的微內核系統基本都是這兩種語言來編寫。

這麼看來華為從2012年上馬的自主操作系統研發,確實是大招,非常用心,完全是從最底層的語言開發,誰也不能卡脖子。現在想想寓言“鴻蒙開天闢地”,簡直就是量身定做的名字!

如何評價鴻蒙系統?

鴻蒙系統是華為秘密研發幾年的操作系統,是戰略試武器,防止競爭對手卡脖子,是迫於無奈,防守反擊推出的。

但是我們根本不用擔心鴻蒙系統國內適配問題,很明顯它的特徵網上已經說的非常清楚了,兼容安卓,而華為也是安卓底層的主要貢獻者之一。這次鴻蒙系統會採用EMUI9.1上的方舟編譯器升級版本,可以得到快速優化適配,第三方廠家無論優化安卓還是無成本用方舟編譯器複製APP,都能迅速建立鴻蒙系統的生態。

鴻蒙系統最頭疼的是國外與谷歌微軟競爭,據悉谷歌新系統Fuchsia OS和華為鴻蒙系統一樣採用“微內核設計”,一樣打通手機,PC電腦,平板,等平臺,是不是覺得有些熟悉?沒錯這就是未來5G萬物互聯時代的系統特徵。而安卓系統以後會被拋棄。

如果未來某國不撤銷禁令,華為鴻蒙系統就會是谷歌新系統Fuchsia的直接競爭對手。谷歌的優勢是多年已經形成的各種生態優勢,華為系統的優勢是可以借載華為國外的5G硬件技術平臺。

根據華為內部員工爆料,華為不得不惜一切代價在國外建立生態,積極和國外第三方互聯網廠商合作。我感覺我是不是揭露了什麼秘密哈哈,在華為主宰的5G時代對鴻蒙系統的推廣是非常有利的。怪不得有國家著急了。

回答完畢,希望我的回答能幫助到你們。有不同看法的歡迎留言和關注。


解悟科技諸葛慕


  收到頭條號推薦的問答,本人很高興為大家回答這個問題,希望通過我的回答給大家帶來幫助,這是我個人的見解與意見,如有不同意見,歡迎留言,我們共同探討,我們一起成長一起學習。

  華為鴻蒙系統(HongmengOS或HomonOS,HMOS)是華為公司開發的專有操作系統。

  2019年5月24日,國家知識產權局商標局網站顯示華為已申請“華為鴻蒙”商標。最重要的是,這個系統是中國取代美國在美國和中國的技術力量。

  Hongmeng OS是基於Linux內核源代碼的開發。 OS實現代碼主要是C語言,內核提供的本機系統調用接口肯定也是C語言接口。上層APP應用程序與現有的Android JAVA程序兼容,可能需要重新編譯JAVA應用程序。程序代碼將運行。至於應用程序編程SDK不支持JAVA以外的編程語言,還需要等待系統正式發佈後才能發佈,但是你可以先了解下面的編譯器,據說這是一個業界開源編譯器,用於編譯APP程序。 。但是,我仍然希望鴻蒙操作系統的應用程序編程接口支持更多的編程語言(如CC等),這樣程序可以有更多的選擇。

  以上是本人的一結關於這個問題的回答,根據本人學識與經歷寫成的,如有不成熟的地方望指正。同時,喜歡我的回答請給我點個贊和加關注吧。我衷心希望通過解答能夠幫助到朋友們。感謝頭條號,提供平臺,生活有您更精彩,還希望您好分享評論出來共同討論這話題。最後,真誠的祝天下的朋友們每時每時每刻無論工作生活都健健康康快快樂樂,家和萬事興,年年發大財,恭喜發財,謝謝!


科技業界


華為鴻蒙操作系統如果與安卓一樣,是基於Linux(開源)開發的,源碼是C語言,鴻蒙系統的編程語言不可能是本土的易語言、易安卓,很有可能是C語言、JAVA等。但是早期已經有消息稱,華為是基於谷歌的Fuchsia OS,谷歌也想以該系統取代問題頻發的安卓系統。Fuchsia不再使用Linux內核,而是Magenta內核(谷歌已經改名為Zircon),使用的開發語言是谷歌Dart語言。據悉,華為麒麟970處理器一直在與Fuchsia OS測試兼容性。

操作系統這個事,中國企業早晚得開發出來,否則用別人的總是提心吊膽的,只有自己掌握核心技術的自己研發出來的操作系統,使用起來心裡才踏實,雖然剛開始肯定不如成熟的蘋果,安卓系統啦,但中國有十四億的大市場啊,邊使用邊提高,逐步完善嗎,前幾年,微軟操作系統升級,把中國所謂的不是直接購買微軟系統軟件的,升級後通通都給黑屏啦,這就是教訓,看來確實是人家在後臺能控制你啊。

華為的“鴻蒙”操作系統由四部分部分組成:Linux內核+麒麟處理器的運行庫+編譯器+虛擬機。

Linux內核:Linux內核是開源的,由linux內核團隊維護,而linux的內核採用了C語言,而不是很多認為的C++,C語言的執行效率要遠高於面向對象的編程語言C++。

運行庫:運行庫在Linux基礎上,針對不同的處理器,運行庫需要進行適配。比如麒麟處理器指令集和高通處理器的指令集可能存在差異,不是完全相同,那麼就存在一個適配的問題,而程序庫通常情況下采用C語言編寫。

虛擬機:虛擬機用於溝通操作系統和硬件,是兩者之間的橋樑,屏蔽了不同系統之間的差異性,可以實現跨平臺,同時很大程度上降低了應用開發難度。目前,普遍使用的虛擬機是Java虛擬機。

編譯器:編譯器將Java編寫的代碼轉換成虛擬機機器碼或者硬件可以直接認識的機器碼。華為的方舟編譯器實現了代碼的靜態編譯,相比傳統安卓應用流暢度提升了60%。

“鴻蒙”和安卓的差異

鴻蒙操作系統兼容安卓應用,那麼“鴻蒙”操作系統和安卓有什麼區別呢?

1)架構不同

鴻蒙操作系統是微內核設計,而安卓系統是基於linux的宏內核設計,相比來說,微內核開發難度大,但是系統穩定性高。

宏內核,內核包含了操作系統絕大多數的功能,而且這些功能和模塊具有最高的權限,好處是系統開發難度低,但是各模塊具有最高權限,一個模塊出錯,整個系統崩潰,這也是安卓系統容易崩潰的原因。

微內核,內核僅包括了操作系統必要的功能模塊(任務管理、內存分配等),其他模塊不具有最高權限,系統穩定性得到了提升。

看到這種嚴謹的問題時,我告訴自己不能去瞎猜,瞎寫,於是去網上查證了2個小時。找到了比較可靠的答案,分析如下。

張汝京博士是中芯國際的創始人,在中國半導體業界是絕對的權威人士。最近他接受採訪明確表示:華為的鴻蒙系統是“微內核設計”,完全推到重來,基於5G平臺,從新開發的系統。和以前安卓,IOS,完全不一樣,也不基於傳統的Linux宏內核和UNIX。(資料來源:微博.工信布)

這種“微內核設計”的鴻蒙系統,我認為很大可能是最基層的C和C++語言來編寫,因為歷史上目前出現的微內核系統基本都是這兩種語言來編寫。

這麼看來華為從2012年上馬的自主操作系統研發,確實是大招,非常用心,完全是從最底層的語言開發,誰也不能卡脖子。現在想想寓言“鴻蒙開天闢地”,簡直就是量身定做的名字!

如何評價鴻蒙系統?

鴻蒙系統是華為秘密研發幾年的操作系統,是戰略試武器,防止競爭對手卡脖子,是迫於無奈,防守反擊推出的。

但是我們根本不用擔心鴻蒙系統國內適配問題,很明顯它的特徵網上已經說的非常清楚了,兼容安卓,而華為也是安卓底層的主要貢獻者之一。這次鴻蒙系統會採用EMUI9.1上的方舟編譯器升級版本,可以得到快速優化適配,第三方廠家無論優化安卓還是無成本用方舟編譯器複製APP,都能迅速建立鴻蒙系統的生態。


分享到:


相關文章: