鴻蒙發佈,老兵戴輝爲你細數一部華爲操做系統28年史html
https://www.ijiwei.com/html/news/newsdetail?source=pc&news_id=725007
一部華爲發展史,也是一部可歌可泣的操做系統發展史。程序員
8月9日,東莞松山湖沸騰的一天,華爲消費者業務CEO餘承東發佈了鴻蒙操做系統,中文來自山海經,英文叫HarmonyOS,不是之前傳說的OakOS。算法
餘承東在介紹鴻蒙OS開發初衷時表示:「隨着全場景智慧時代的到來,華爲認爲須要進一步提高操做系統的跨平臺能力,包括支持全場景、跨多設備和平臺的能力以及應對低時延、高安全性挑戰的能力,所以逐漸造成了鴻蒙OS的雛形。鴻蒙應將來而生。」 數據庫
最振奮的消息是,鴻蒙OS開源,方舟編譯器也開源,整個業界將參與進來,一塊兒發展。編程
操做系統成爲一個火熱的話題,是從去年4月的中興事件安卓禁供以後開始的。老兵戴輝訪談了倪光南院士,全網率先對中國各門類的操做系統總結了一把。小程序
過去這些年,中國操做系統的進步其實仍是挺大的,在服務器和雲的OS、嵌入式OS(如通訊設備就大量採用)、物聯網和車聯網OS上與全球的差距並不大,PC的OS也有長足的進步。微信小程序
智能手機的操做系統在生態上的差距確實很大。老戴和倪院士討論以後,在文中提到了一個想法:既然國內手機用的APP基本都是國產的,那麼國產手機OS+微信小程序一塊兒,在國內徹底能夠做爲安卓的備胎。安全
不幸而言中!13個月以後,今年的5月15日,華爲被列入了所謂「實體清單」,谷歌操做系統對華爲禁供。關於華爲鴻蒙OS和方舟編譯器的話題一會兒變得火熱。服務器
智能手機操做系統是信息技術的制高點,谷歌出於企業利益,爭取在安卓和Fuchsia上將和華爲繼續保持合做,但GMS權限並無放開,華爲手機在海外的銷售也還會受到壓力。將來華爲和谷歌將會怎麼合做,還要等待時間來告訴咱們。微信
詩興大發,遂來整理華爲的OS發展史。不整不知道,一整嚇一跳。
華爲自研OS的淵源要追溯到28年前,並且貫通了華爲業務所有三大BG和兩大BU!
第一章:難忘1991
1991年,南海之濱的南山半島上,有了劃世紀的故事。
當年,徐文偉(大徐)領銜開發出了華爲第一顆芯片——忘記取名字,就叫它ASIC。
在1991年華爲探索進入電信運營商市場,在爭取准入(開發JK1000)的過程當中,也開始開發本身的操做系統,徐文偉也正是研發負責人。
不由好奇地問:怎麼總是你!How old are you?!答曰:有「心」(芯片)也有「魂」(操做系統)啊!
差很少時候,遙遠的北歐,有了大動做。
芬蘭,是有極光和有諾基亞的地方。
1991年,芬蘭打通了全球第一個GSM電話。中國的移動通訊產業如今是世界最強,十大手機品牌中國有六大。不管是基站仍是手機,都是從GSM開始發展的。這個話題本文就不發揮了。
就在這一年,21歲芬蘭赫爾辛基大學計算機科學系的學生林納斯·託瓦茲(Linus Torvalds)編寫了磁盤驅動程序和文件系統——成爲了Linux第一個內核的雛形,能夠在採用Intel386 系列CPU的電腦上運行。
林納斯經過新生的互聯網(BBS)採用開源模式對外公開了這個Linux內核。在全球無數人的努力下,Linux操做系統當之無愧地成爲了歷史上最偉大的開源軟件。
當時,全球開發者都迫切須要一種免費的、開放的、能夠根據須要修改的操做系統。而當時,Windows和Unix都要收費,並且閉源。
Linux生逢其時。與其說是「人定勝天」,不如說是「時勢造英雄」。「星星之火,能夠燎原」,「乾柴烈火、風起雲涌」,「時運到了,擋都擋不住」,「Right time, right person」。
今天,Linux操做系統無處不在,不管是嵌入式、PC、服務器仍是雲,兼容了多種形態的CPU,包括intel的x86架構、ARM、MIPS、Power、Alpha(神威)等等。
林納斯被譽爲「Linux之父」。此稱號當之無愧!他有句名言:Talk is cheap. Show me the code!
在後來的28年裏, 華爲和Linux有過很多交集。
第二章:孔雀東南飛
華爲的今天,是十幾萬人集體奮鬥的楷模。可是創業之初就沒有幾我的,我的的能力就很是重要了。
工做三年後,徐文偉在87-90年間,從新回到東南大學深造,讀自動控制專業的研究生,師承衣承斌教授。「一個書包,兩個碗,教室宿舍圖書館」。
衣教授在南京的工業界影響挺大,橫向合做項目甚多,門下弟子大徐負責幹具體的活,一方面設計單片機硬件,一方面用機器語言和彙編語言寫嵌入式軟件。
大徐的生活就是「操做系統」。讀書和實踐兩不誤(「多任務系統、並行計算」),每月有例外的幾十元津貼,吆三喝五去成賢街那有着漂亮老闆娘的的林燕餐廳(「內存管理」),將鴨血粉絲轉化成燃燒的激情和動力(「編譯系統」),冰冷的啤酒侵入到身體的五臟六腑和九曲迴腸(「輸入輸出 I/O」;「文件結構」),喝多了對着月亮講些阿里不達的胡話(「高級語言」),回沙糖園宿舍一頭躺倒在書叢中(「數據庫」)。
計劃經濟時代,南京是中國最重要的自動控制和電力電子研發重地,不少部委都在這裏有研究所和企業。記得當時有個部屬的自動化所給每人發了一萬多的年終獎金,讓你們垂涎萬丈!如今有南瑞、南自、東大金智爲表明的衆多電力電子企業。
東南大學是民國時期中央大學工程類學科衣鉢的正宗傳人。
有部電影叫《無問西東》。抗戰期間,中央大學從東向西順江而上去陪都重慶的沙坪壩與重慶大學共校址,倒是真正的「無問西東」。1924年,大文豪泰戈爾去清華以前,先來南京,在後來是舞廳的老體育館裏講話。徐志摩揮一揮衣袖登臺翻譯:「餘乘輪船(從上海)溯揚子江而上.....及船近金陵,晨光熹微,鳥聲雜樹,無數帆船,順風直駛,穩渡中流,又以爲此種光明浩大現象,即未來世界人類,通過混沌狀態,由犧牲奮鬥所得結果之比例。」
(圖注:泰戈爾訪華期間與徐志摩、林徽因等人合影)
閒話少說。大徐心已有所屬,不花心思在鶯歌燕舞中。他有空就去夫子廟的廢舊電子市場,一堆堆來自國外的廢舊電路板和電子元器件,按斤賣,能夠找到有價值的芯片和器件,「尋寶遊戲」。挑選三極管要用到舌頭。先用萬用表的兩個表筆先分別接觸好發射極和集電極來檢查漏電流,再用舌尖舔集電極和基極,看看指針的變化以來看放大倍數。
大徐後來寫過一篇《如何用萬用表和示波器調試程控交換機》的指導書,不知道也要用舌頭不?
計算機房裏還有1980年進口的霍尼韋爾小型機,在紙帶上打孔標記「0」或者「1」來作程序和數據的輸入,CPU能夠直接照此執行,這就是最最最底層的機器語言(machine language)。
知名外企億利達來南京招聘。1990年初,高材生徐文偉偕家人來到了「文化沙漠」深圳,住進了農民房,在港企億利達的高科技部研發高速激光打印機。差很少時候,倪光南在聯想也開發了激光打印機,還作了芯片。
1990年,鬼才黃霑寫了首歌曲,傳唱到今天,正好描述那個年代:滄海一聲笑,滔滔兩岸潮,浮沉隨浪,只記今朝。蒼天笑,紛紛世上潮,誰負誰勝出,天知曉。
第三章:1992年,華爲開發出了第一套操做系統
億利達隔壁的深意工業大廈裏,華爲正在作用於企業用戶的小交換機(俗稱小總機),底層的軟硬件設計能力迫切須要補強,挖空心思處處撬人,大徐就加入了這個充滿着革命豪情的startup。從億利達同來的還有他的小夥伴,中科大85級少年班的軟件天才聶建林。
阿寶(鄭寶用)主持研發的小總機上,華爲有了第一桶金。不過好景不長,這個領域逐漸成爲紅海,國內出現了上百家同類型企業。中國最擅長的就是:將價格作爛,你們都沒有錢賺。
圖注:1994年訪問美國,左起劉啓武、李一男、楊漢超、徐文偉、鄭寶用、黎健、毛生江
郵電體系使用的級程控交換機,七國八制,利潤高企,是藍海。
有核心研發能力的國內廠家也都在努力進入。老戴的老領導李祥庭畢業於信大的計算機系,他說本系的年輕教師鄔江興不知天高地厚地「口出狂言:「程控交換機不就是計算機+傳統交換機嗎?」就比如李書福的名句:「汽車不就是四個輪子加兩排沙發嗎?」
鄔江興拿了郵電部300萬元就開幹了,還真的作出了巨龍!郵電部十所背景的大唐也作出來了,倪光南也帶領聯想也開發出來了。
深圳是改革開放前沿陣地,好幾家也在使勁。動做最快的是中興。侯爲貴是南京人,利用鄉情和國企背景找到了南京郵電學院的陳錫生教授和糜正琨教授,這兩位但是中國程控交換技術的領軍人物啊。他們派教研室裏三位年輕老師來到大梅沙,爲中興半導體開發出了500門程控交換機。兩位老師由於家屬在南京所以回去了,單身漢殷一民留了下來。長虹的技術源自長春郵電學院(如今併入吉林大學)。央企中國電子旗下的桑達也是名聞遐邇。
如今的華爲很強大,但當時的華爲,卻只是一個「草臺班子」。學暖通搞過建築還養過豬的任正非能找到的開發人員都不是程控交換科班體系畢業的,大可能是出茅廬不久的畢業生,學生味尚未散盡呢!郭平挖了鄭寶用來華爲,阿寶帶着你們和街上的小混混打過幾架,福建農村出身的他,有着粗壯的胳膊。
據老戴所知,第一個加盟的通訊科班畢業生應該是來自北郵的王誠。老闆一看簡歷:什麼?北郵的,要了!因而王誠就揹着挎包找同窗和校友幫忙去了,後來他擔任過國內市場部總裁,老戴作過他的銷售小兵。
要進入郵電局系統,首先要有國家發的生產牌照。華爲要搞的時候,500門的已經沒有指標了,只有1000門還有機會。時間還很緊,過了這村還就沒有這個店了。
爲了防止一哄而上的惡性競爭,國內常常用牌照來進行限制。如98年發了GSM和CDMA手機牌照,華爲由於心頭有痛,沒有去拿,搞得後來好多年都進不了手機行業。後來的衛星機頂盒、支付牌照都是同樣的故事。
1991年冬,華爲成立了只有不多人員(10人左右)的項目組來試着作運營商的設備,今後走上了與世界各國之「狼」共舞的不歸之路,這是一種「不成功、則成仁」的悲壯過程。
馬修·連恩在加拿大育空地區創做的憂鬱專輯《狼》裏的主打歌正好應了此景:You would be a sweet surrender,I must go the other way,and my train will carry me onward。請你輕柔的放手,我必須遠走他方,個人列車會載我到天涯。
時間很緊,若是趕不上在1992年末關閘,就沒有「門票」進入郵電系統,那也就沒有今天的華爲。任老闆也許就真的去「養豬」去了,說不定能搞個「任我行土豬」。
交換網絡是空分仍是數字,對於經過郵電部的鑑定,並無任何影響。模擬空分技術作到500門之上就很難了,大徐就組織開發了兩個500門的模擬空分模塊合在一塊兒作成了1000門。
網絡一些文章認爲JK1000沒有采用數字網板是失誤,並以訛傳訛,這個觀點是錯誤的。回到1991-92年,華爲並無幾桿人槍,電信的門都沒有踏進去,首要目標是要搶「門票」,要解決的天然是關鍵需求。
要進入郵電體系,核心是要實現電信運營商級別的「程序控制」,也就是主機系統,能有效地進行管理、計費和提高新業務。在極其有限的人力物力下,核心的主機系統採用什麼技術路徑能最快實現目標?當時有4個選項。
一、華爲以前的HJD48用戶機是基於單片機和彙編的控制方式。儘管對外也吹牛叫「程控」,但主要是打電話的功能。然而郵電部入網的要求甚多,在傳統單片機上用匯編語言是沒法知足的。
二、採用RISC(精簡指令)的CPU芯片,如當時頗爲流行的摩托羅拉芯片。難以用高級語言(如C)編寫軟件,編寫操做系統和提高新業務也會很辛苦。
三、採用市場上可買到的基於386的PC主板(攢機愛好者最爲熟悉了),達不到郵電部要求的可靠性,各類接口也不匹配,更沒有辦法作熱備份。
四、自主設計基於386芯片的高可靠性主控板(不用市場上的通用PC主板),支持熱備份,本身開發BIOS,用高級語言(C語言)+彙編的混合編程方式來編寫主機軟件。
JK1000最終決定採用了方式4。這個新開發的主控板也取名叫MPU(主處理單元)。
大徐是硬件開發者和彙編高手,聶建林是C語言高手,雙劍合璧,和你們一塊兒鍛造了JK1000的主機軟件系統。採用了C語言+彙編的混合編程方式。
圖注:C&C08的主機軟件結構,最核心的就是操做系統
圖注:C&C08主機軟件各部分功能
JK1000主機軟件系統的核心是一個原生態的基於命令行的嵌入式操做系統,都是本身從頭一句一句來開發的。它初步具有了操做系統的基本特徵,如對所有軟、硬件資源的管理和分配、任務調度,控制、協調併發活動等。
軟件測試是一個難題。最初,主機軟件系統動不動就吊死了(中止運行或者陷入無限循環),爲了檢查到底問題出在哪裏,花了很大精力在程序中設計了很多計數器,並存儲在內存的某個特定位置。死機後,經過去查計數器的數值,來分析判斷問題在哪裏。有沒有誰玩遊戲的時候直接去內存裏改生命值的嗎?
聽說,任正非常常晚上九點來給你們送麪包牛奶,跟你們吹噓「將來要在陽臺上曬錢」,很好的「政委」和「教導員」。
十多個素人,只用了幾個月,在1992年下半年,就開發出了JK1000(郵電)局用程控交換機。華爲當時真的沒有什麼錢,任正非本人也只是租了個小房子住。
這也是大徐第一次帶領團隊打仗,完成了從悶頭苦幹到擡頭看路的大「轉身」。
1992年下半年,浙江海寧的某鎮開通了JK1000局用交換機。大徐、聶建林和研發同仁們在現場修改軟件、編譯、加載、運行,這都是當年的土辦法。
浙江海寧局的局長很是nice,每到陰曆的十五就拉着華爲的所有人馬出去看錢塘潮。看得你們心潮澎湃,思緒萬千。
就這樣,JK1000局用程控交換機趕在最後關頭,經過了郵電部的鑑定,拿到了入網證,能夠銷售了!能夠說,這是一把「金鑰匙」。天佑華爲,今後華爲開始了一路開掛的征途。
讓咱們花些時間來讚美一下於貝爾實驗室誕生的C語言。C語言是一門偉大的高級語言,大大下降了程序員寫彙編的痛苦,還能夠創造大量的軟件功能模塊,並進行靈活的調用。
用C語言寫好軟件,經過C語言編譯器產生彙編代碼,經過彙編器再轉成二進制執行代碼。程序員要理解彙編代碼以及與它的源C代碼之間的聯繫,由於編譯器隱藏了太多的細節如:程序計數器、寄存器(整數、條件碼、浮點)等。這正是大徐的強項。
在這裏埋下了編譯器的伏筆,今天的華爲已經有了方舟編譯器,能夠手機跑得更快。8月9日,華爲宣佈方舟對外開源,造福整個業界。
老戴的C語言是清華生陸李啓蒙,他後來也到了億利達,如今是中國迷你對講機之王。
JK1000的主機系統用着用着就變得愈來愈慢(早期的安卓也是同樣)。大徐就設置在天天半夜2點,沒有什麼人打電話的時候,系統自動重啓,釋放掉全部資源,所有從新來過。美名其曰「半夜雞叫」。
開局成功後,應力釋放,大徐住進了醫院。這纔有時間靜靜地看講通訊原理的書籍,感慨:原來通訊是這樣一回事情,本身還一直當作是自動控制設備來開發呢!華爲的風格是「先結婚,後戀愛, 在槍林彈雨中成長」。
華爲在全國各地郵電局大張旗鼓地去賣JK1000。當時西方公司很是牛X,價格昂貴。全國2000多個縣,每一個縣的郵電局都有決策權。
深刻一線,從農村包圍城市,是華爲的發展之路。在主要的省會開設了辦事處,初步創建了覆蓋全國的市場體系,可是也很簡陋。姚福海到了山西太原,找了個旅館住下,打電話告訴公司本身住哪一個旅館哪一個房間。太原辦事處,就這樣成立了!
深圳的企業,銷售手法豐富多彩,此處略去一萬字。
JK1000在一年多裏,就賣了近兩百臺,賺了很多快錢。
網絡上不少文章說,由於JK1000是空分制式,因此逼得華爲不得不一樣時啓動數字制式C&C08的開發,搞得企業差點崩盤,任正非差點「跳樓」。
真實的狀況恰好是相反的。若是沒有JK1000卡在時點得到了」入場券「,華爲就進不了電信運營商的門。若是沒有JK1000賣的近200套,華爲也支付不起開發數字機的費用,更加劇要的是,沒有底氣真的去幹電信這個活。
水平不行,服務來湊。「華友會」會長 俞渭華94年進華爲,開始是去東北作服務。有過著名保衛戰的黑山在一個鄉鎮有臺JK1000因受雷擊致使冒青煙了,工做人員英勇搶救卻被薰暈了。他緊急趕赴現場,發現難修。主任蘇偉指示:別留下「罪證」,立刻發新機!立馬找臺車全拉走,「挖坑深埋」!後腳新機就到了。防雷與阻燃是工藝問題與通訊技術無關,當年的鄉鎮機房的避雷與接地也實在很差。華爲用深刻到黑山白水的快速響應來得到了立錐之地與客戶的理解。避雷是個共性問題,華爲用了一些年才最終艱難地解決。
第四章:適度創新,穩打穩紮,步步前行
JK1000開發勝利在望的時候,華爲啓動了數字機C&C08 A型機的開發。主機系統徹底承接了JK1000的技術路線,硬件上則聚焦解決數字網板的技術難題。大徐做爲器件室負責人,也衝在了最前線。
1993年,A型機開發成功後,又繼續啓動了萬門機的開發(C型機和後續定型的B型機)。此次主要解決的技術問題是兩個,一是經過本身設計芯片來提升數字網板的集成度和容量,二是經過光模塊來實現多個模塊之間的鏈接。
能夠看到,華爲的成功經驗是:將每次產品開發的創新工做量控制在必定的比例裏,確保每一個產品都能商業銷售。步步爲營,穩打穩紮,層層推動,而不是期望一口吃成一個胖子。
後來,任正非在《創業創新必須以提升企業核心競爭力爲中心》的演講中說到: 咱們提出了在新產品開發中,要儘可能引用公司已擁有的成熟技術,以及可向社會採購的技術,利用率低於70%,新開發量高於30%,不只不叫創新,而是浪費,它只會提升開發成本,增長產品的不穩定性。
人老了,最近的事情不必定記得,塵封已久的往事卻時不時浮上心頭。
早年裏,主機軟件就是一個大包,每次都是總體升級,復位重啓。不像西方公司,能夠經過打補丁的方法來進行錯誤的修正。爲了解決網上問題,有時候一個下午都會出幾個版本,如三點鐘版、五點鐘版、七點鐘版。
爲了能實現整個系統的快速復位重啓,大徐使用了FLASH閃存技術,在備份的MPU的閃存上先LOAD上新版本的主機軟件,重啓該MPU,而後進行主備MPU切換,一秒鐘整個系統就復位成功了,堪稱「光速」!這個技術,老戴後來賣移動GSM的時候也常常吹捧。
老戴有個鄒姓同班同窗,97年畢業到中興通訊作程控交換機內核的開發,中興上市前突擊分了一把股票。1997-11-11光棍節中興上市,他以迅雷不及掩耳之勢賺了一把快錢。爲慶祝他發財,老戴也去蓮塘熱鬧了一回,聽他嘀咕道:內存管理是程控交換機主機系統最頭疼的技術問題。
和老戴一塊兒97年進華爲的王迎軍,一塊兒租住粵海門村的農民房,後來他成爲華爲核心網幾巨頭之一。 98年,你們一邊興致勃勃地交流香港的小電影,一邊談技術。他將全部的主機軟件代碼所有都讀了一遍,是C語言編寫的,核心是一個基於命令行象DOS的操做系統。他說,最可怕的是有一堆全局變量,追蹤起來極其痛苦。做爲核心測試人員,他有次和中興通訊去PK,連夜修改內部參數連夜編譯,使得一樣負荷下的CPU的佔用率更低。CPU佔有率是個核心指標,老戴敲字的電腦如今CPU佔有率是77%。
王迎軍是學化學的,不過對這個專業一點不感興趣,就去考了個高級程序員,今後掉到了「01010101「的坑裏。前些年咱們在西麗的農莊一塊兒種過菜,他不再和我談香港小電影了,談的是詩與將來,作了領導,就是不同。
南京郵電大學糜正琨教授的弟子曾浩文是殷一民的師弟,他於1997年畢業後卻來到了華爲,從開發工程師作起,在世紀之交成爲C&C08最後一個版本128模的研發負責人。號稱能夠支持百萬用戶,華爲第一次在窄帶數字程控交換這個單品上作到了世界銷量第一。曾浩文記得當時有句話:華爲不想成爲世界第一,卻不得不走在成爲第一的路上。
有意思的是,128模初版推出後,發現了衆多 bug,修修改改很麻煩,就重寫了一次整個系統代碼。一樣的事情,GSM也幹過。
有沒有Windows什麼事?
核心的前臺主機軟件(含操做系統)確實是歷來沒有Windows什麼事的,但C&C08上還有一個BAM模塊(後臺管理單元)能夠用。即便關掉了BAM模塊,C&C08的前臺主機軟件也是照樣運行。BAM後來演進爲OMC,華爲雲BU負責人鄭葉來就是當時OMC的開發負責人。一線OMC應用軟件偶爾有點小瑕疵,老兵戴輝去反饋,OMC接口人答得讓人哭笑不得:是大家國外Windows版本的兼容性問題,與咱們並無什麼關係!
最後說一下軟件銷售的商業模式,和主機軟件密切相關。
早年主機系統軟件中並無作license控制,升級和軟件服務也是免費的。只要客戶持續不斷地買華爲設備,什麼都好商量。
04年我去印尼運營商那裏,發現西門子的服務人員每月都過來一次,看網上增加了多少用戶,就給運營商開張發票,再收一把份子錢,可西門子確實什麼都沒有幹啊,怎麼就能夠收錢?
徐直軍(小徐)成立的戰略與MKT有個商業模式部,研究行業慣例,開始搞「存量收費」,按用戶、按功能進行license控制,每一年的軟件維護和升級合在一塊兒也要收取軟件服務年費。華爲的技術支持部門所以得到巨大收益。曾祥森和王海君前後擔任了這個部門的負責人。
當年主要是靠賣硬件賺錢,沒有想到到了今天,軟件license纔是真正賺錢的東西。由於核心網所有云化後,底層硬件就是通用服務器了,誰都能賣,毛利變得象紙片同樣薄。
第五章:核心網的OS成爲整個華爲發展的基礎
最近中美貿易摩擦中,你們注意到了」5G核心網「這樣一個名詞。美國對核心網給與了不少關注,可見這是很是重要的網絡設備。
核心網從功能上講,不只服務於座機(固定電話),也服務於移動電話,包括2G/3G/4G/5G等。特定服務5G的時候,就叫5G核心網。
核心網從硬件和操做系統上,這些年有了很大的變革。
TDM(時分複用)的架構,傳統上叫數字程控交換機。當年劉江峯作GSM開發的時候,MSC(至關於移動的程控)和BSC(基站控制器)都是基於C&C08的平臺。
IP化。基於IP的軟交換架構,也叫NGN(下一代網絡)。硬件上有cPCI(框式)和ATCA(刀片式)兩代。
IP+IT化。IMS(IP多媒體系統)架構。硬件今後變成了x86通用服務器,軟件架構變化很大。
全面雲化,NFV(網絡功能虛擬化)。
華爲核心網的實時操做系統先後有了四次技術變革。
一、28年前,大徐他們是從底層開始一點一點自研的操做系統。
西方作RTOS(實時操做系統)內核的那些小公司從八十年代纔剛剛從兩三我的的規模起步,還沒有影響到中國。價格昂貴,還要是美刀,小公司華爲根本支付不起。
二、九十年代中後期,融入全球先進技術潮流,C&C08也在基於pSOS和VxWorks微內核的基礎上開發了嵌入式實時操做系統。
C&C08 128模塊的主機系統裏,SPC模塊用的是pSOS,PPC和CPC模塊用的是VxWorks。
擁有VxWorks內核的美國風河公司,也收購了pSOS,最後一塊兒併入到了Intel公司。華爲的主處理器,也所以長期使用Intel的x86架構。
諾基亞和愛立信也是採用相似的作法,都是VxWorks的客戶。
思科則是基於QNX的內核,是QNX在汽車領域以外最大的客戶。老戴今天就在渥太華,QNX的總部就在這裏。QNX於1980年成立,一羣人哼哧哼哧作了幾十年,不停地去適配各類場景,實時性穩定性兼容性俱佳,QNX在傳統汽車的OS中市佔率很是高,達到80%左右。QNX後來賣給了黑莓,就是那個曾經無比輝煌的手機品牌。
華爲5G的基礎理論研究也是華爲5G首席科學家童文博士帶隊在渥太華來幹出來的。
圖注:老兵戴輝於華爲渥太華研究所前
三、2007年開始,華爲成功基於開源的嵌入式Linux內核來實現實時操做系統。
這是Linux陣營和華爲的一個大的進步。
實際上,風河公司本身也在大力推廣嵌入式Linux內核了。
核心網平臺首席架構師姚弋宇寫了一篇文章,叫《從泥坑裏爬起來》。
2007年,核心網在軟交換硬件架構上,從cPCI平臺切向ATCA平臺,但都仍是用Intel的x86 CPU。最大的改變在操做系統上,從ATCA架構開始,在嵌入式Linux上進行了大量優化開發嵌入式實時操做系統,並替換之前的基於pSOS和VxWorks內核開發的嵌入式實時操做系統。
優化解決Linux的時延時,一點一點地摳,最終成功將時延下降到很是低的水平。上次聽無人機公司講開發經驗,也是要一克一克地去下降機體的重量。
這是一個偉大的勝利,最終成功打造了第一個公司級的電信Linux操做系統,後續延申到了數據通訊產品線的VRP上。省了錢不說,還大大提高了能力。華爲對國際嵌入式Linux開源陣營也作出了巨大的歷史貢獻。
按任正非的理念,若是一個技術的核心是算法和邏輯,華爲是能夠經過努力來搞定的,因此華爲在汽車BU裏,作電池管理BMS(核心是算法和邏輯),卻不作電池(核心是化學和材料)。任正非大力呼籲國家培養更多數學家。
四、新引入了一個層次:雲計算,新架構叫NFV(網絡功能虛擬化)。原有的RTOS不變。
這與華爲的Fusion Sphere雲計算操做系統是一脈相承的,採用了採用了KVM虛擬化引擎(也屬於Linux陣營)、Docker容器、K8S(Kubernetes)等各類技術。
雲技術爲CPU的切換、在覈心網中引入ARM服務器帶來了機遇,後面將會講到。
第六章:鴻蒙RTOS誕生
你們看到了,華爲的OS通過了獨立開發、基於pSOS和VxWorks微內核開發RTOS、基於開源的嵌入式Linux宏內核開發等多個歷程,這爲鴻蒙的誕生奠基了雄厚的技術基礎和理解。
有我的很關鍵,他叫王成錄。他先是核心網產品線總裁,核心網OS上積累了經驗(實現了基於嵌入式Linux的RTOS)。隨後調任2012實驗室中央軟件部總裁,並啓動了鴻蒙的研究。網絡上有任正非2012年與2012實驗室員工的對話,代表華爲開發手機操做系統是爲了作「備胎」。提問的李金喜來自2012試驗室下的中央軟件院歐拉實驗室終端OS開發部,負責面向消費者BG構建終端操做系統能力。
王成錄最後到消費者BG任軟件總裁。他的文章《華爲手機操做系統往事》提到華爲優化的F2FS文件系統克服了安卓傳統的碎片化缺陷,已經爲谷歌的安卓系統所吸取。「天生快,一輩子快」。文件系統是手機和PC操做系統的一個重要組成部分。
圖注:8月9日開發者大會上,王成錄發佈EMUI 10
任正非先生關於鴻蒙操做系統有精闢語錄:咱們有數千塊(注:種類)電路板,電路板都要有操做系統。鴻蒙操做系統是一個面向肯定時延系統的操做系統,實現系統端到端處理時延是精確到 5 毫秒,甚至更低的毫秒級乃至亞毫秒級,控制只有這麼小時延,對物聯網自動生產有用。好比無人駕駛,齒輪轉過來時延是幾毫秒,若是是不許確的,否則這個齒輪來了,那個齒輪尚未來,就咬合不上了。咱們是爲了萬物互聯、未來走向智能社會所作的一個操做系統。
從任正非先生的言語中能夠看到,鴻蒙將來也可能用到系統設備上。
第七章: 華爲操做系統羣芳譜
在覈心網的OS基礎之上,華爲的操做系統百花齊放,貫通了華爲業務所有三大BG(運營商、企業、消費者含手機)和兩大BU(雲計算、汽車)。
在我去年描述的中國操做系統羣像裏,已經列舉了華爲的系列化操做系統,增補總結以下:
一、路由器和數據通訊交換機操做系統:VRP(通用路由平臺),這是華爲OS的另一條主線
1996年,華爲的C&C08賣得熱火朝天,華爲倉中有糧,在北京研究所開始了數據通訊的研發。
華爲的VRP應該基於美國風河公司的VxWorks 微內核開發了實時操做系統。Tornado 是風河公司推出的一套實時操做系統(RTOS)開發環境,相似Microsoft Visual C,可是提供了更豐富的調試、仿真環境和工具。另外還有一家同行pSOS,後被風河收購了。
2003年1月23日,思科公司在美國指控華爲侵權。訴訟過程之中,發現華爲的VRP系統比思科的IOS體積小多了,效率也更高。
無獨有偶。思科的IOS其實是基於QNX內核開發的實時操做系統。
前些年,核心網OS採用了開源的嵌入式Linux內核實現了RTOS之後,華爲數據通訊的VRP也已經採用嵌入式Linux內核了。
在移動通訊中,有一個很重要的領域:PS域(分組交換系統),如GGSN/SGSN等,功能是在3G/4G/5G系統中處理IP數據打包和交換。如今你們用手機基本上都是走流量而不是打電話,因此PS域也就愈來愈大。PS與RAN(無線接入網絡,基站等)密切相關,因此華爲內部常年將PS直接歸類在無線產品線(RAN)內。
華爲3G/4G/5G的PS域是基於本身的數據通訊交換機,因此也一樣採用過VxWorks 的微內核。
2018年8月英國對華爲系統的安全審查中,認爲華爲採用的VxWorks系統在 2020 年後將沒法得到安全補丁和升級,有安全隱患。
但實際上,這並非什麼問題。
一方面,華爲的數據通訊交換機已經開發了本身的基於嵌入式Linux內核開發的RTOS。即便對於風河,官網上也介紹了英國電信的RAN(無線接入網)採用風河的嵌入式Linux的成功故事。另一方面,鴻蒙的微內核,也能夠作備胎。
二、雲計算操做系統:Fusion Sphere。最初採用XEN虛擬化引擎,如今走向KVM。
三、服務器操做系統:歐拉EulerOS,即將開源,和全世界共同進步。
四、物聯網嵌入式操做系統:LiteOS。超輕量級,已經開源。
通訊泰斗鄔賀銓認爲:「AIoT是IoT的發展方向,IoT須要AI來提高其價值。5G是鏈接AI與IoT的橋樑,其高帶寬、高可靠低時延、大鏈接開拓了AIoT更廣闊的應用領域。」
五、汽車和無人駕駛操做系統:鴻蒙。餘承東宣佈鴻蒙開源,經過開源來吸納全球智慧,是最好的辦法。
六、智能手機、電視機操做系統:鴻蒙。這個你們說得不少了。
七、方舟編譯器。方舟編譯器並非操做系統自己,可是一方面能夠提升編譯後操做系統程序的運行效率(手機跑得更快),另一方面,大大方便APP業務移植到鴻蒙,原來的安卓應用(APP)只要作很小的改動,就能夠經過方舟編譯器編譯後,在鴻蒙上運行。
一花獨放不是春。華爲30年,爲社會培養了很多人才,創業系中也有好些作操做系統的。
A、季昕華創立的UCloud,是惟一一個沒有依靠大產業背景而獨立作大的公有云,由於「刀塔傳奇」手遊雲業務而一炮走紅。UCloud在公有云中是第一個基於開源的KVM引擎進行開發的,甚至早過了阿里雲。
B、華三是從華爲體系分離出去的。VRP操做系統今後「花開兩朵,各表一枝」。華三體系的OS命名爲Comvare。
C、宇視又是從華三分離出去的,Imos Inside是宇視安防OS的商標。Intel認爲Imos Inside侵犯了Intel Inside的商標,但並未能得到法院的支持。
D、曾浩文創立的京華科訊是國內第一個自主桌面雲OS,第一個採用KVM虛擬化技術路線,成功進入了海陸空三軍。
第八章: 掌握了操做系統,就不怕CPU卡脖子了
5月15日,華爲被列入了實體清單,Intel的CPU一度對華爲斷供。
老兵戴輝大膽預測這對華爲不會有什麼大的影響。由於華爲控制了操做系統以後,下層的CPU就能夠靈活切換了。
在數據中心(和雲)服務器領域,Intel佔領了超過95%以上的市場份額。
因爲歷史緣由(本文已經介紹了這個歷史),目前全球的電信核心網都是採用Intel的x86架構通用服務器。
由於電信核心網操做系統爲華爲所控制,再上層的業務和生態也是爲華爲所控制,因此這個領域的服務器徹底能夠從x86架構轉成Arm架構。
華爲不得不作這個事情。今年1月7日,華爲發佈首款ARM架構服務器CPU鯤鵬芯片及泰山服務器,發佈人就是徐文偉。經過容器技術,能夠將多臺泰山服務器(採用Arm CPU)構成大的服務器集羣,從而在電信核心網上使用。
回頭看Linux,最先一版也只基於x86,後來也跨平臺支持了Arm、Power,MIPS等各類CPU架構。
咱們將眼光投向騰訊。微信的服務器集羣,上邊都是跑的基本都是安卓和IOS生態,在技術上,也徹底能夠採用Arm服務器集羣,而不是之前的x86服務器集羣。
在電信的計費領域,華爲已經有了成功案例。
2019年7月19日凌晨,通過緊張而有序的割接,山東移動計費CRM系統的軟硬件成功實現替換升級,成爲首個在覈心繫統中採用國產自研全套軟硬件解決方案的運營商,在自主可控的道路上邁出堅實一步。華爲自研系列IT軟硬件:基於鯤鵬920的TaiShan泰山服務器,GaussDB高斯數據庫、服務器操做系統歐拉EulerOS。
更早一些時候,2017年末,倪光南院士披露的。航天科工集團「商密網」是當時規模最大的全國產軟硬件構成的信息系統,已部署了2萬臺全國產桌面電腦,由包括「航天崑崙數據庫一體機」在內的國產服務器提供雲服務,並引入了採用航天元心移動操做系統的安全手機支持移動辦公。
對於我的電腦而言,Intel也面臨Arm的挑戰。去年夏天在硅谷的微軟店裏,看到了採用高通基於Arm的CPU,加上微軟的Windows,由聯想Lenevo打造的支持always on的筆記本電腦。海思新近也在開始作基於Arm架構的用於筆記本電腦的CPU了,期待中。
結語:創新永無止境
2019年的東南大學畢業典禮上,曾鍛造華爲第一顆芯片和第一套OS的徐文偉發言:
「華爲從創立以來一直在堅持的,就是創新。過去30多年以來,華爲的成功是基於客戶需求的技術創新和工程創新,幫助客戶成功的解決方案創新,實現商業成功,這樣的創新,咱們稱之爲華爲創新1.0。而信息產業超過50年的高速發展,理論和工程都遇到了發展瓶頸,咱們須要理論突破,咱們須要從0到1的創新。
「華爲正式宣佈進入創新2.0,創新2.0的核心是基於願景的理論突破和基礎技術的發明,而理論突破和基礎技術發明源頭之一是學術界,在大學裏,在座的各位之中。」(做者/戴輝)