華為 "鴻蒙" 操作系統(tǒng)關鍵特性解讀
1、計算機為什么需要操作系統(tǒng)?
大部分人認為,操作系統(tǒng)本來就是與計算機(IT設備)一體的。究竟計算機為什么需要操作系統(tǒng)?可能我們并不會去特意想這個問題。
其實,對于IT產(chǎn)品而言,操作系統(tǒng)的角色,就像我們人類身體中,大腦的角色一樣。我們每天面對大量的或大或小、或簡單或復雜、或緊迫或寬松的事情。大腦如何處理這些事情的處理的先后順序和邏輯關系。
來源:計算機教程
我們先了解一下,操作系統(tǒng)為什么是計算機 (IT設備)一個核心必備軟件系統(tǒng)?
為了了解操作系統(tǒng)的必要性,我們先看幾個簡單的場景案例。
1)計算機(任何IT產(chǎn)品)其實就是一個利用IT資源(計算資源、存儲資源、網(wǎng)絡資源)對各種數(shù)據(jù)進行處理的設備。而在計算機處理數(shù)據(jù)的時候,會遇到IT資源如何分配的問題。比如,如果同時有幾個應用程序發(fā)出運行請求,各個程序之間運行的先后邏輯是什么?哪個程序優(yōu)先運行,哪個程序后運行?每個程序又該分配多少計算資源?這些都是需要解決的問題。如果沒有操作系統(tǒng),多個程序同時運行,就會出現(xiàn)各個應用程序相互擠占計算資源,最終都無法運行的情況。
2)在同一個計算機(IT設備)中,其運行著各種各樣的應用程序。而在應用程序開發(fā)的時候,開發(fā)者關注的是自己的應用程序是基于什么操作系統(tǒng)開發(fā)的(這也是應用程序與操作系統(tǒng)之間的耦合關系),而不會去關注自己的程序是否會受到其他應用程序的影響。對于操作系統(tǒng)來說,就需要解決不同應用程序之間是否會相互干擾的問題。
3)計算機(IT設備)是由硬件和軟件組成。操作系統(tǒng)和在其之上運行的應用程序都是軟件。由于硬件種類很多,同一硬件產(chǎn)品也都有不同的生產(chǎn)設計產(chǎn)商。對于這樣的一個看似非標準化的硬件環(huán)境,如何能讓應用程序都能適應這些硬件環(huán)境,不會出現(xiàn)某個應用程序只能在某一個硬件環(huán)境下運行,換一個硬件環(huán)境就無法運行的情況。
解決以上問題的核心途徑,就是采用操作系統(tǒng)。
1)操作系統(tǒng),可以對應用程序進行計算資源分配、運行管理、調用權限審核等。目的就是讓各種應用程序都能夠有序、快速地運行。計算機資源分配包括:CPU的運算資源,內存條的主存容量,硬盤的讀寫流量,網(wǎng)卡的網(wǎng)絡傳輸流量,主線的內部數(shù)據(jù)流量等。
2)操作系統(tǒng),可以將不同硬件造成的運行環(huán)境的差異進行標準化。無論什么樣的底層硬件,上層應用程序運行的環(huán)境都是一樣的。這就極大便利了應用程序開發(fā)者,可以將精力主要用在優(yōu)化自身產(chǎn)品方面,而不用擔心底層的計算環(huán)境。
3)操作系統(tǒng),可以進行多任務管理,控制程序并發(fā)運行。操作系統(tǒng)可以針對幾個應用程序提出的并發(fā)運行請求,進行合理處理,安排優(yōu)先級。合理有序對其進行計算、存儲、網(wǎng)絡等各種IT資源的分配。
來源:計算機教程
2、鴻蒙OS解讀
對于鴻蒙OS,大家印象比較深刻的是幾個關鍵詞:全場景、分布式、微內核、跨終端。這些都是鴻蒙OS相比傳統(tǒng)其他OS不同的地方,當然也是鴻蒙OS的賣點所在。
而華為對鴻蒙OS介紹中,花了大量篇幅來介紹鴻蒙OS的四大技術特性。說實話,這四大技術特性,對于非專業(yè)IT人士而言,可能大致能明白其表達的核心意思,但對于其背后的體現(xiàn)的IT內涵和程序模塊間的邏輯關系,可能并不一定有多理解。而這些也正是鴻蒙OS相比其他操作系統(tǒng)的不同或者說優(yōu)勢所在。
為了更好地理解鴻蒙OS,我們將圍繞華為對鴻蒙OS四大技術特性的官方描述展開,來進一步理解其背后的IT邏輯關系和含義。
鴻蒙OS,具備四大技術特性:
鴻蒙OS技術特性一:分布式架構首次用于終端OS,實現(xiàn)跨終端無縫協(xié)同體驗
這里有個關鍵詞,就是“分布式架構”,什么是操作系統(tǒng)的分布式架構?
華為在介紹這一部分內容時,特別提到了兩個專業(yè)術語“分布式OS架構”和“分布式軟總線技術”。對于以上這種“分布式”的作用,華為的描述是“通過公共通信平臺,分布式數(shù)據(jù)管理,分布式能力調度和虛擬外設四大能力,將相應分布式應用的底層技術實現(xiàn)難度對應用開發(fā)者屏蔽,使開發(fā)者能夠聚焦自身業(yè)務邏輯,像開發(fā)同一終端一樣開發(fā)跨終端分布式應用,也使最終消費者享受到強大的跨終端業(yè)務協(xié)同能力為各使用場景帶來的無縫體驗?!?/span>
那我們先了解下,操作系統(tǒng)的分布式架構是怎樣的架構?
分布式操作系統(tǒng)架構,是相對于集中式操作系統(tǒng)架構而言的。根據(jù)以上,我們知道,操作系統(tǒng)分別經(jīng)歷了從CP/M系統(tǒng)、DOC系統(tǒng)、集中式操作系統(tǒng),到現(xiàn)在的分布式操作系統(tǒng)。
分布式架構操作系統(tǒng),能夠對計算機的資源進行動態(tài)分配,并有效控制和協(xié)調操作系統(tǒng)中各任務的并行執(zhí)行。分布式架構的操作系統(tǒng),除了具備傳統(tǒng)操作系統(tǒng)功能之外,還提供分布式進程通信、分布式文件系統(tǒng)、分布式進程遷移、分布式進程同步和分布式進程死鎖等功能。
分布式操作系統(tǒng)的特點是:分布性和穩(wěn)定性。分布式操作系統(tǒng)中的微內核和其他應用程序,可以以多副本的方式運行,一旦系統(tǒng)中某一個部分發(fā)生故障,該分布式操作系統(tǒng)仍能夠正常運行,保障了系統(tǒng)的穩(wěn)定性。
另外,分布式操作系統(tǒng)一般采用微內核及核外輔以若干實用程序的結構。而此次鴻蒙OS特別提到,其利用的是微內核。
微內核是一種具有有限功能的較小的操作系統(tǒng)內核。我們可以將其理解為是一個功能縮小版的內核。微內核主要負責原來內核中幾個基礎的功能,包括中斷、通信、調度等,其他的系統(tǒng)功能分配給微內核外的使用程度來執(zhí)行。在分布式操作系統(tǒng)中,一臺計算機對應配置一個微內核我,分布式系統(tǒng)之上運行的實用程序可以不同。這樣可以使得,整個架構更加靈活,節(jié)省系統(tǒng)資源,保證系統(tǒng)的穩(wěn)定性。
同時,分布式操作系統(tǒng),對應用程序開發(fā)者,將相應分布式應用的底層技術實現(xiàn)難度進行屏蔽,使開發(fā)者能夠聚焦自身業(yè)務邏輯,像開發(fā)同一終端一樣開發(fā)跨終端分布式應用。?以上是我們對“分布式架構OS”的理解。
來源:計算機教程
另外一個就是“分布式軟總線技術”
要了解分布式軟件總線技術,我們需要一層一層的剝開。要知道分布式軟件總線,需要了解軟件總線,進而需要了解軟插件,進而需要了解軟件復用的概念。
軟件復用,是利用現(xiàn)有的軟件成分(資源)來構造新的軟件系統(tǒng)。該軟件成分可以是已有的軟件,也可以是專門開發(fā)的可以復用的軟件構件。
軟件復用技術分為組裝技術和生產(chǎn)技術。
組裝技術,是對已有的軟件構件不做修改或者少做修改,直接將其插裝在一起,來構造出一個新的軟件系統(tǒng)。
生成技術,是利用程序編譯器來完成對軟件結構模式的復用。例如V c++等。
軟插件模型,軟插件技術從本質來講是一種軟件集成技術。對于一個新的軟件系統(tǒng),其中有大部分的工作量是用在重復編寫已有軟件部分。軟插件是一種具有一組外接插頭。如果構造一個軟件系統(tǒng)的軟插件都已存在,那開發(fā)者只需要對整個系統(tǒng)的構造策略和原則進行制定即可,從而提升軟件生產(chǎn)效率。軟件插件的特征包括:模塊化好、獨立性強、高可靠性、鏈接簡單、封裝功能等。
軟件總線,解決的是軟插件的交互問題,以支持軟件工廠總裝期間和運行階段的高級通信問題。并解決軟件系統(tǒng)內部各個軟插件的互操作問題。
分布式軟件總線。在分布式操作系統(tǒng)下,大量易購網(wǎng)絡以及各個廠商推出的軟硬件產(chǎn)品,帶來分布式系統(tǒng)各個層次都存在互操作問題。如果將軟件總線與操作系統(tǒng)、網(wǎng)絡通信機制結合起來,就能夠比較好的處理分布式系統(tǒng)的互操作問題。
華為給出的關于分布式軟總線的關鍵指標,這將有利于我們對其的理解。主要包括:1)低時延:端到端時延小于20毫秒。2)高吞吐:有效圖吞吐高達1.2Gbps。3)高可靠:抗丟包率高達25%。
來源:計算機教程
鴻蒙OS技術特性二:確定時延引擎和高性能IPC技術,實現(xiàn)系統(tǒng)天生流暢
華為對改性能的解釋為:“鴻蒙 OS通過使用確定時延引擎和高性能IPC兩大技術解決現(xiàn)有系統(tǒng)性能不足的問題。確定時延引擎,可在任務執(zhí)行前,分配系統(tǒng)中任務執(zhí)行優(yōu)先級及時限進行調度處理,優(yōu)先級高的任務資源將優(yōu)先保障調度,應用響應時延降低25.7%。鴻蒙微內核結構小巧的特性使IPC(進程間通信)性能大大提高,進程通信效率較現(xiàn)有系統(tǒng)提升5倍。”
高性能IPC。IPC指的是進程間通信,Inter process communication。IPC是一組編程接口,讓程序員能夠協(xié)調不同的進程,使之能在一個操作系統(tǒng)里同時運行,并相互傳遞、交換信息。
為什么需要進程間通信?
在計算機實際運行過程中,可能會出現(xiàn)一個系統(tǒng)中好幾個進程同時在進行的情況。這時,不同進程之間需要相互協(xié)作、相互溝通,以便更好的完成工作。而由于不同進程之間的相互獨立性,進程間的溝通就變得比較困難。因此,就產(chǎn)生了不同進程間的通信方式,來解決不同進程之間的通信問題。
因此,基于以上的解釋,我們可以理解進程間通信的目的:
1)數(shù)據(jù)傳輸:一個進程需要將它的數(shù)據(jù)發(fā)送給另一個進程。
2)資源共享:多個進程間共享同樣的資源。
3)通知事件:一個進程需要向另一個或一組進程發(fā)消息,通知它們發(fā)生了某種事件(如進程終止時要通知父進程)。
4)進程控制:有些進程希望完全控制另一個進程的執(zhí)行(如Debug進程),此時控制進程希望能夠攔截另一個進程的所有陷入和異常,并能夠及時知道它的狀態(tài)改變。
而對于華為鴻蒙OS而言,其進程間通信(IPC)性能大幅提升,我們可以理解為不同進程之間的對話和溝通效率大幅提升。
鴻蒙OS技術特性三:基于微內核架構,重塑終端設備可信安全
華為對該功能的描述為:“鴻蒙OS采用全新的微內核設計,擁有更強的安全特性和低時延等特點。微內核設計的基本思想是簡化內核功能,在內核之外的用戶態(tài)盡可能多地實現(xiàn)系統(tǒng)服務,同時加入相互之間的安全保護。微內核只提供最基礎的服務,比如多進程調度和多進程通信等。”
這其中的一個關鍵詞是:微內核。這也是鴻蒙OS的關鍵特性之一。
在上面,我們提到了分布式操作系統(tǒng)與微內核的關系。一般分布式操作系統(tǒng)通過微內核的方式來實現(xiàn)。
在理解微內核之前,我們先理解下,什么是內核?
操作系統(tǒng)中的“內核”,內核是操作系統(tǒng)的核心部分,它管理著系統(tǒng)的各種資源,我們可以把他比作連接應用程序和硬件的一座橋梁,是直接運行在硬件上的最基礎的軟件實體。
微內核的概念,是由Richard Rashid在卡內基梅隆(Carnegie-Mellon)大學開發(fā)Mach操作系統(tǒng)時提出的,目標是建立一個基于消息傳送(message passing)機制的最小內核,以便在此基礎上建造對其它操作系統(tǒng)的模擬層來模擬其它操作系統(tǒng)的特性。
微內核(Microkernel),是一種內核的設計架構,由一組盡可能將數(shù)量最小化的軟件程序組成,它們負責提供、實現(xiàn)一個操作系統(tǒng)所需要的各種機制與功能。這些最基礎的機制,包括了底層地址空間管理,線程管理,與行程間通信(IPC)。
微內核的設計理念,是將系統(tǒng)服務的實現(xiàn),與系統(tǒng)的基本操作規(guī)則區(qū)分開來。它實現(xiàn)的方式,是將核心功能模塊化,劃分成幾個獨立的行程,各自運行,這些行程被稱為服務(service)。所有的服務行程,都運行在不同的地址空間。只有需要絕對特權的行程,才能在具特權的運行模式下運行,其余的行程則在用戶空間運行。
微內核提供一組“最基本”的服務,如進程調度、進程間通信、存儲管理、處理I/O設備。其他服務,如文件管理、網(wǎng)絡支持等通過接口連到微內核。而在傳統(tǒng)的內核情況下,內核集成了大量的基礎服務和其他服務,這樣,內核顯得就更加的笨重。
微內核的功能:微內核設計帶來了良好的兼容性、擴充性、靈活性、移植性、可靠性和網(wǎng)絡支持。
但是,微內核設計有一個重要缺點:由于微內核操作系統(tǒng)使用進程來隔離系統(tǒng)組件,這些組件之間的通信使用了消息傳遞方式來實現(xiàn)一個組件對另一個組件的調用-這實際上是進行了一次RPC(例如在NT上是LPC)調用。但這種類似RPC的方式是通過進程間通信(IPC)機制實現(xiàn)的,其性能一般低于傳統(tǒng)操作系統(tǒng)的系統(tǒng)調用的性能。由于微內核操作系統(tǒng)的類似RPC調用是通過消息傳送機制實現(xiàn)的,而傳統(tǒng)操作系統(tǒng)的系統(tǒng)調用一般是通過類似trap的方法實現(xiàn)。相比于trap方法,通過消息傳送機制實現(xiàn)的這種類RPC調用的方式較慢。
鴻蒙OS技術特性四:通過統(tǒng)一IDE支撐一次開發(fā),多端部署,實現(xiàn)跨終端生態(tài)共享
華為對此性能的官方描述為:“鴻蒙OS憑借多終端開發(fā)IDE,多語言統(tǒng)一編譯,分布式架構Kit提供屏幕布局控件以及交互的自動適配,支持控件拖拽,面向預覽的可視化編程,從而使開發(fā)者可以基于同一工程高效構建多端自動運行App,實現(xiàn)真正的一次開發(fā),多端部署,在跨設備之間實現(xiàn)共享生態(tài)。華為方舟編譯器是首個取代Android虛擬機模式的靜態(tài)編譯器,可供開發(fā)者在開發(fā)環(huán)境中一次性將高級語言編譯為機器碼。此外,方舟編譯器未來將支持多語言統(tǒng)一編譯,可大幅提高開發(fā)效率?!?/span>
下面我們逐句來進行解讀
1)IDE,Integrated Development Environment ,即集成開發(fā)環(huán)境。IDE是一種編程軟件,是集成了程序員語言開發(fā)中會需要的一些基本工具、基本環(huán)境和其他輔助功能的應用軟件。IDE一般包含三個主要組件:源代碼編輯器(Editor)、編譯器、解釋器(Compiler、Interpreter)和調試器(Debugger)。集成了代碼編寫功能、分析功能、編譯功能、調試功能等一體化的開發(fā)軟件服務套件。
開發(fā)人員可以通過圖形用戶界面訪問這些組件,并且實現(xiàn)整個代碼編譯、調試和執(zhí)行的過程?,F(xiàn)在的IDE也提供其他幫助程序員提供開發(fā)效率的一些高級輔助功能,比如代碼高亮,代碼補全和提示,語法錯誤提示,函數(shù)追蹤,斷點調試等。
現(xiàn)在有大量的免費開源的和商用的IDE,包括:
1、微軟 Visual Studio(VS):VS支持創(chuàng)建各種類型的程序,包括從桌面應用、Web應用、移動APP、到視頻游戲。對于初學者到高級專業(yè)開發(fā)人員來說都是最棒的開發(fā)工具。VS有可定制儀表板和可停靠的窗口。它支持多大36種不同的編程語言,如:ASP.NET、DHTML、JavaScript、Jscript、Visual Basic、Visual C#、Visual C ++、Visual F#,XAML等。
2、NetBeans:是一個免費開源的Java集成的開發(fā)環(huán)境軟件,主要用于Java開發(fā)。適合從零開始或者對已有工程進行開發(fā)。NetBeans支持多種編譯器,如CLang/LLVM、Cygwin(GNU)、MinGW和Oracle Solaris Studio等。
3、PyCharm:是著名編程語言Python的IDE,由知名的IDE開發(fā)商JetBrains出品。除了Python之外,PyCharm還支持其他Web開發(fā)語言:JavaScript、Node.js、CoffeeScript、TypeScript、Dart、CSS、HTML等。
除此之外,典型的IDE還包括:IntelliJ IDEA,Eclipse,Code:: Blocks,Aptana Studio 3,CodeLite等。
2)多語言統(tǒng)一編譯
不同的集成開發(fā)環(huán)境IDE,支持不同的開發(fā)語言。比如,上面提到的微軟Visual Studio 支持的編程語言包括:ASP.NET、DHTML、JavaScript、Jscript、Visual Basic、Visual C#、Visual C ++、Visual F#,XAML等。
而鴻蒙OS 可以支持多語言統(tǒng)一編譯,而這很大程度上是依賴于華為開發(fā)的方舟編譯器。上面,我們提到,編譯器是計算機(IT設備)系統(tǒng)軟件中一個基礎和核心軟件。方舟編譯器與鴻蒙OS結合,應用程序開發(fā)者可以利用方舟編譯器來進行多語言同一編譯。這在一定程度上能夠顯著提升開發(fā)展的開發(fā)效率。
3)分布式架構Kit。Kit在IT行業(yè)指的軟件工具包。我們認為,這里的分布式架構的工具包,是與鴻蒙OS的分布式架構自成一體的。分布式架構的思想體現(xiàn)在整個鴻蒙OS的各個組件當中。其能夠帶來分分布式架構OS的所帶來的便利和功能。
而以上鴻蒙OS的這一性能的核心意思是:通過華為提供的集成開發(fā)環(huán)境,和支持多語言統(tǒng)一編譯的方舟編譯器,應用程序開發(fā)人員,可以大幅提高軟件開發(fā)效率,包括縮短應用程序開發(fā)周期、語言模塊調用、應用程序的自動調優(yōu)等。而且,通過華為提供的開發(fā)環(huán)境和編譯器開發(fā)的應用程序,可以適應于多種不同類型的終端,包括手機、PC、汽車以及其他各種智能終端。
鴻蒙OS之所以要要想盡一切辦法,來給軟件開發(fā)人員帶來便利和效率,核心還是打造基于鴻蒙OS的IT生態(tài)。因為最終這些應用軟件都要在鴻蒙OS上來運行。
3、方舟編譯器
通過以上,我們看到鴻蒙OS之所以能夠為軟件開發(fā)者提供支持多語言統(tǒng)一編譯的極大便利,核心還是基于方舟編譯器的應用。
首先,我們解釋一下,什么是編譯器?
編譯器,是將“一種語言(通常為高級語言)”翻譯為“另一種語言(通常為低級語言)”的程序。編譯器的主要工作流程:源代碼 (source code) → 預處理器 (preprocessor) → 編譯器 (compiler) → 目標代碼 (object code) → 鏈接器 (Linker) → 可執(zhí)行程序 (executables)。
之所以需要編譯器,只因為計算機是一個二級制單位,是通過0和1的組合來實現(xiàn)不同的操作。而人類的編程語言,從較早的匯編語言,到C、C++,再到我們現(xiàn)在看到的Java語言等。
說的簡單通俗點:編譯器就是想一個翻譯官一樣,將人類的邏輯語言,翻譯為機器可識別可理解可執(zhí)行的機器語言。翻譯的快慢可以影響溝通交流的效率,同樣,編譯器的效率也就影響了程序運行的效率。
關于方舟編譯器的發(fā)展歷程
2019年4月,在華為P30系列國內發(fā)布會上,華為首次發(fā)布了方舟編譯器。方舟編譯器是基于GCC開發(fā)的交叉編譯器套件,它包括了C、C++、Fortran的前端,也包括了這些語言的庫(如libstdc++、libgcc等)。
方舟編譯器,是對傳統(tǒng)Android操作系統(tǒng)編譯器的改進和突破。
1)方舟編譯器,可以實現(xiàn)多語言聯(lián)合優(yōu)化編譯,大幅提升運行效率
我們知道,在Android操作系統(tǒng)中,使用的語言是Java語言。而Android操作系統(tǒng)之上運行的各種各樣的應用程序,其開發(fā)語言既有Java語言,也有C和C++。這就使得操作系統(tǒng)的Java語言與應用程序的各種語言進行交互。這種交互的接口就是JNI(Java Native Interface)。在數(shù)據(jù)訪問、函數(shù)調用、生命周期維護、異常處理時,需要這兩種語言交互,進行相互調用。而在相互調用過程中,會占用一定的系統(tǒng)資源。使得系統(tǒng)之上的應用程序運行效率降低。
方舟編譯器,是業(yè)界首個多語言聯(lián)合優(yōu)化的編譯器,開發(fā)者在開發(fā)環(huán)境中可以一次性將多語言統(tǒng)一編譯為一套機器碼,運行時無需產(chǎn)生跨語言帶來的額外消耗,并可以進行跨語言的聯(lián)合優(yōu)化。
2)方舟編譯器直接編譯出機器指令,無需繁瑣的虛擬機運行
在Android系統(tǒng)中,程序的運行,需要借助ART虛擬機來執(zhí)行,編譯器是把源程序的每一條語句都編譯成機器語言并保存成二進制文件,解釋器在執(zhí)行程序時,一條一條地解釋成機器語言來讓計算機執(zhí)行。而在這個動態(tài)編譯和解釋過程中,消耗了大量的系統(tǒng)資源。
方舟編譯器,可以在開發(fā)環(huán)境中,就可以完成全部代碼的編譯。所以在手機運營環(huán)境中,應用程序并不需要將進行語言的編譯和解釋,可以直接讀取運行,提升運行效率。
3)方舟編譯器提供高效的內存回收機制
早期C、C++需要開發(fā)人員自己管理程序,對系統(tǒng)內存的實用和釋放,影響開發(fā)效率。Java的虛擬機模式提供了內存GC(垃圾回收)機制,但需要短暫中斷應用,成為隨機卡頓的根因之一。
方舟編譯器,可以對內存進行隨時回收,而是回收時,并不需要暫停應用,保證了系統(tǒng)和應用程序運行的流暢性和高效性。
全 文 總 結
1、鴻蒙OS,只是冰山一角
我們認為,鴻蒙OS只是華為建立自身IT生態(tài)體系的冰山一角。我們在之前的文章中分析了華為產(chǎn)品發(fā)展的邏輯。從IT產(chǎn)品形態(tài)角度來講,華為經(jīng)歷了從早期的硬件產(chǎn)品向軟件產(chǎn)品的演進。而在軟件領域的不斷突破,逐步奠定了華為在IT產(chǎn)業(yè)的核心地位。特別是在基礎軟件領域,華為的默默進取,在基礎軟件核心環(huán)節(jié)不斷取得新的成就。
目前我們看到的是鴻蒙OS和方舟編譯器,都只是華為自身IT生態(tài)底層軟件的一小部分。在芯片、數(shù)據(jù)庫等領域,華為同樣取得了一些突破性進展。我們知道,如果在一套新的IT生態(tài)中,讓基礎軟件都能充分發(fā)揮其最高性能,需要各個基礎軟件不斷適配和完善,最終達到完美耦合。這也是我們在PC時代看到的Wintel以及移動時代看到Android+ARM堅不可破的原因。因此,我們可以想象,華為自身開發(fā)的這些基礎軟件,從一開始就是高度耦合的。
2、技術變革,帶來產(chǎn)業(yè)格局變化
每一次的重大技術變革都會預示著產(chǎn)業(yè)格局的演變,甚至對產(chǎn)業(yè)鏈進行重構,促進主流企業(yè)的重新洗牌。目前,我們看到華為已經(jīng)在多個IT領域進行了產(chǎn)業(yè)格局的重構,從早期的路由器,到現(xiàn)在手機、存儲等市場。而以上我們看到的只是硬件部分。其實,更重要的是隨著5G逐步商用,華為正逐步在最為艱難的核心底層基礎軟件部分,來對市場格局進行重構。目前,我們已經(jīng)看到華為在5G通信領域占據(jù)了全球產(chǎn)業(yè)鏈的話語主導權。未來,我們有望看到在芯片、操作系統(tǒng)、數(shù)據(jù)庫等領域的不斷崛起。
3、硬件企業(yè),軟件化
硬件企業(yè)逐步向軟件方向延伸,在IT領域我們經(jīng)??吹竭@樣的例子。這也是硬件企業(yè)發(fā)展到一定階段的必然選擇。而在這個演化方向上,往往只有行業(yè)的領導者才有可能取得一定成功。至于從硬件到軟件轉化的原因,我們的理解:
1)硬件發(fā)展到一定階段,技術和架構逐步成熟,不同企業(yè)的硬件產(chǎn)品逐步趨同。對于IT產(chǎn)品而言,只有差異化(有價值的差異化)才能獲取高額利潤。趨同帶來的利潤降低迫使行業(yè)領導者不斷加快新技術的應用,即通過軟件來增加硬件的功能或者提升硬件的性能。即硬件發(fā)展到一定階段,可能決定硬件競爭力的倒不是硬件本身,而是軟件。
2)從技術角度來看,硬件產(chǎn)品的迭代速度較慢,迭代慢帶來的結果是,客戶采購新產(chǎn)品的動力和需求降低。通過軟件的應用來加快硬件產(chǎn)品的迭代速度,縮短客戶的采購周期。
3)在原來IT產(chǎn)業(yè)分工下,硬件和軟件可以由不同的公司來提供,彼此發(fā)揮相對比較優(yōu)勢。但在現(xiàn)有的IT階段下,硬件和軟件的適配要求明顯提高;在某些領域,硬件與軟件只有做到相互定制、相互融合,其整體性能才能得到最大化釋放。
1、操作系統(tǒng)與芯片的耦合度
鴻蒙OS的目標無疑是下一代5G通信技術下的核心操作系統(tǒng)。從IT底層軟件發(fā)展規(guī)律來看,操作系統(tǒng)作用的發(fā)揮,需要與芯片進行長期、不斷、反復的適配、修改和完善,以達到最大限度的相互耦合。這樣才能最大發(fā)揮操作系統(tǒng)和芯片雙方的功能。比如,PC時代的Windows操作系統(tǒng)與Intel芯片經(jīng)歷了幾十年的適配,移動互聯(lián)網(wǎng)時代的Android操作系統(tǒng)與ARM芯片也達到了高度耦合。對于鴻蒙OS操作系統(tǒng),如果未來在5G時代發(fā)揮作用,需要不斷與底層的芯片進行適配耦合。如果是華為自身開發(fā)的芯片,耦合度會非常高。如果是其他廠商的芯片,雙方需要一段時間的適配過程。
2、鴻蒙OS的微內核
微內核本身不是新鮮事物,相比安卓系統(tǒng),華為鴻蒙OS將各種硬件驅動拿到核外進行處理,這在一定程度上帶來了架構的靈活性。但凡事都是有利有弊,靈活性和擴展性增加的同時,對核內與核外之間的通信要求更高。未來鴻蒙OS在對全場景跨終端的適用方面,可能也需要與硬件廠商的產(chǎn)品不斷進行適配。
3、鴻蒙OS全場景的適配,也需要不斷迭代過程
鴻蒙OS的目標適用主題是全場景的IOT領域。客觀來講,這個適配的場景確實挺大的。從目前我們看到的歷史操作系統(tǒng)來看,能夠廣泛適用這么多樣化智能終端的的操作系統(tǒng)并不多。比如,PC、手機和汽車中適用的操作系統(tǒng)都是不一樣的。鴻蒙OS要達到在每一個應用場景都能高效運行,需要其不斷的根據(jù)不用應用場景對計算需求的特點,而不斷改進和完善自身架構和性能。這是IT產(chǎn)品長期迭代的過程。
4、開放、開源,而不要打造封閉系統(tǒng)
核心底層基礎軟件的開發(fā)和應用,一方面是開發(fā)難度較大,更重要的是能否建立起以該基礎軟件為核心的一套完整的產(chǎn)業(yè)鏈,形成正向循環(huán)的產(chǎn)業(yè)生態(tài)體系。在全球IT發(fā)展歷史上,我們既看到過封閉生態(tài)體系,比如蘋果的產(chǎn)品;也看到開放生態(tài)體系,比如谷歌、微軟的產(chǎn)品等。而對于未來的IT產(chǎn)業(yè)發(fā)展而言,只有不斷開放,更加開放,才能與生態(tài)伙伴一起成長。
而從PC歷史發(fā)展來看,目前還沒有看到通過封閉系統(tǒng),來持續(xù)獲得不斷擴大的業(yè)務規(guī)模的。對于華為而言,目前正在逐步建立自己的核心底層生態(tài)體現(xiàn),從芯片、算法到操作系統(tǒng)、數(shù)據(jù)庫,更不用說早期發(fā)展起來的服務器、存儲和網(wǎng)絡設備。而對于未來5G產(chǎn)業(yè),只有不斷開放、開源,才能獲得人生的“開掛”。
往期好文合集
最 后
免責聲明:本文內容由21ic獲得授權后發(fā)布,版權歸原作者所有,本平臺僅提供信息存儲服務。文章僅代表作者個人觀點,不代表本平臺立場,如有問題,請聯(lián)系我們,謝謝!