老兵戴輝:華爲操作系統28年史

時間:2019-08-12

  東莞松山湖沸騰的一天,華爲消費者業務CEO余承東發布了鴻蒙操作系統,中文來自山海經,英文叫HarmonyOS,不是以前傳說的OakOS。
  余承東在介紹鴻蒙OS開發初衷時表示:“隨著全場景智慧時代的到來,華爲認爲需要進一步提升操作系統的跨平台能力,包括支持全場景、跨多設備和平台的能力以及應對低時延、高安全性挑戰的能力,因此逐漸形成了鴻蒙OS的雛形。鴻蒙應未來而生。”
  最振奮的消息是,鴻蒙OS開源,方舟編譯器也開源,整個業界將參與進來,一起發展。
  操作系統成爲一個火熱的話題,是從去年4月的中興事件安卓禁供之後開始的。
  老兵戴輝訪談了倪光南院士,全網率先對中國各門類的操作系統總結了一把。
  過去這些年,中國操作系統的進步其實還是挺大的,在服務器和雲的OS、嵌入式OS(如通信設備就大量采用)、物聯網和車聯網OS上與全球的差距並不大,PC的OS也有長足的進步。
  智能手機的操作系統在生態上的差距確實很大。老戴和倪院士討論之後,在文中提到了一個想法:既然國內手機用的APP基本都是國産的,那麽國産手機OS+微信小程序一起,在國內完全可以作爲安卓的備胎。
  不幸而言中!13個月之後,今年的5月15日,華爲被列入了所謂“實體清單”,谷歌操作系統對華爲禁供。關于華爲鴻蒙OS和方舟編譯器的話題一下子變得火熱。
  東吳證券火傘高張策略會上老戴發言、中國標杆邀請老戴去廣藥集團講課,朋友們都激動地說:這是千載難逢的好時機啊,可以搞定中國的智能手機OS。
  智能手機操作系統是信息技術的制高點,谷歌出于企業利益,爭取在安卓和Fuchsia上和華爲繼續保持合作,但GMS權限並沒有放開,華爲手機在海外的銷售也還會受到壓力。未來華爲和谷歌將會怎麽合作,還要等待時間來告訴我們。
  詩興大發,遂來整理華爲的OS發展史。不整不知道,一整嚇一跳。
  華爲自研OS的淵源要追溯到28年前,而且貫通了華爲業務全部三大BG和兩大BU!
  第一章:難忘1991
  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個選項。
  1、華爲之前的HJD48用戶機是基于單片機和彙編的控制方式。盡管對外也吹牛叫“程控”,但主要是打電話的功能。然而郵電部入網的要求甚多,在傳統單片機上用彙編語言是無法滿足的。(譚雲飛:有老華爲告訴我,HJD48的CPU是Z80,軟件也是用的Z80彙編語言)
  2、采用RISC(精簡指令)的CPU芯片,如當時頗爲流行的摩托羅拉芯片。難以用高級語言(如C)編寫軟件,編寫操作系統和提升新業務也會很辛苦。
  3、采用市場上可買到的基于386的PC主板(攢機愛好者最爲熟悉了),達不到郵電部要求的可靠性,各種接口也不匹配,更沒有辦法做熱備份。
  4、自主設計基于386芯片的高可靠性主控板(不用市場上的通用PC主板),支持熱備份,自己開發BIOS,用高級語言(C語言)+彙編的混合編程方式來編寫主機軟件。
  JK1000最終決定采用了方式4。這個新開發的主控板也取名叫MPU(主處理單元)。
  大徐是硬件開發者和彙編高手,聶建林是C語言高手,雙劍合璧,和大家一起鍛造了JK1000的主機軟件系統。采用了C語言+彙編的混合編程方式。
   JK1000主機軟件系統的核心是一個原生態的基于命令行的嵌入式操作系統,都是自己從頭一句一句來開發的。它初步具備了操作系統的基本特征,如對全部軟、硬件資源的管理和分配、任務調度,控制、協調並發活動等。
  軟件測試是一個難題。最初,主機軟件系統動不動就吊死了(停止運行或者陷入無限循環),爲了檢查到底問題出在哪裏,花了很大精力在程序中設計了不少計數器,並存儲在內存的某個特定位置。死機後,通過去查計數器的數值,來分析判斷問題在哪裏。有沒有誰玩遊戲的時候直接去內存裏改生命值的嗎?
  任正非經常晚上九點來給大家送面包牛奶,跟大家吹噓“未來要在陽台上曬錢”,很好的“政委”和“教導員”。
  十多個素人,只用了幾個月,在1992年下半年,就開發出了JK1000(郵電)局用程控交換機。華爲當時真的沒有什麽錢,任正非本人也只是租了個小房子住。
  這也是大徐第一次帶領團隊打仗,完成了從悶頭苦幹到擡頭看路的大“轉身”。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版本的兼容性問題,與我們並沒有什麽關系!
  李泓:當年進華爲就接手CC08B型機的計費和告警模塊。後來想跳槽到智能業務部下面的互聯網研究部(後來被撤銷了),交換部的總經理張順茂不放人,說交換部的部門任意選並建議我去32模塊(那時128模塊還沒開始呢),把我弄到了測試部去負責BAM的測試,跟王迎軍一樣做了個小Leader,沒想到他現在是核心網的巨頭了。看了你的文章,勾起了好多當年在華爲做螺絲釘的回憶。
  最後說一下軟件銷售的商業模式,和主機軟件密切相關。
  早年主機系統軟件中並沒有做license控制,升級和軟件服務也是免費的。只要客戶持續不斷地買華爲設備,什麽都好商量。
  04年我去印尼運營商那裏,發現西門子的服務人員每個月都過來一次,看網上增長了多少用戶,就給運營商開張發票,再收一把份子錢,可西門子確實什麽都沒有幹啊,怎麽就可以收錢?
  徐直軍(小徐)成立的戰略與MKT有個商業模式部,研究行業慣例,開始搞“存量收費”,按用戶、按功能進行license控制,每年的軟件維護和升級合在一起也要收取軟件服務年費。華爲的技術支持部門因此獲得巨大收益。曾祥森和王海君先後擔任了這個部門的負責人。
  當年主要是靠賣硬件賺錢,沒有想到到了今天,軟件license才是真正賺錢的東西。因爲核心網全部雲化後,底層硬件就是x86通用服務器了,誰都能賣,毛利變得象紙片一樣薄。
  第五章:核心網的OS成爲整個華爲發展的基礎
  最近中美貿易摩擦中,大家注意到了”5G核心網“這樣一個名詞。美國對核心網給與了很多關注,可見這是非常重要的網絡設備。
  核心網從功能上講,不僅服務于座機(固定電話),也服務于移動電話,包括2G/3G/4G/5G等。特定服務5G的時候,就叫5G核心網。
  核心網從硬件和操作系統上,這些年有了很大的變革。
  1、TDM(時分複用)的架構,傳統上叫數字程控交換機。當年劉江峰做GSM開發的時候,MSC(相當于移動的程控)和BSC(基站控制器)都是基于C&C08的平台。
  2、IP化。基于IP的軟交換架構,也叫NGN(下一代網絡)。硬件上有cPCI(框式)和ATCA(刀片式)兩代。
  3、IP+IT化。IMS(IP多媒體系統)架構。硬件從此變成了x86通用服務器,軟件架構變化很大。
  4、全面雲化,NFV(網絡功能虛擬化)。
  華爲核心網的實時操作系統前後有了四次技術變革。
  1、28年前,大徐他們是從底層開始一點一點自研的操作系統。
  西方做RTOS(實時操作系統)內核的那些小公司從八十年代才剛剛從兩三個人的規模起步,尚未影響到中國。價格昂貴,還要是美刀,小公司華爲也根本支付不起。
  2、九十年代中後期,融入全球先進技術潮流,C&C08也在基于pSOS和VxWorks微內核的基礎上開發了嵌入式實時操作系統。
  C&C08 128模块的主机系统里,SPC模块用的是pSOS,PPC和CPC模块用的是VxWorks。
  擁有VxWorks內核的美國風河公司,也收購了pSOS,最後一起並入到了Intel公司。華爲的主處理器,也因此長期使用Intel的x86架構。大家看到了CPU和操作系統內核之間的強鎖定關系。
  諾基亞和愛立信也是采用類似的做法,都是VxWorks的客戶。
  思科則是基于QNX的內核,是QNX在汽車領域之外最大的客戶。老戴今天就在渥太華,QNX的總部就在這裏。QNX于1980年成立,一群人哼哧哼哧做了幾十年,不停地去適配各種場景,實時性穩定性兼容性俱佳,QNX在傳統汽車的OS中市占率非常高,達到了80%左右。QNX後來賣給了黑莓,就是那個曾經無比輝煌的手機品牌。
  華爲5G的基礎理論研究也是華爲5G首席科學家童文博士帶隊在渥太華來幹出來的。
    3、2007年開始,華爲成功基于開源的Linux內核來實現實時操作系統。
  這是Linux陣營和華爲的一個大的進步。
  實際上,風河公司自己也在大力推廣嵌入式Linux內核了。
  核心網平台首席架構師姚弋宇寫了一篇文章,叫《從泥坑裏爬起來》。
  2007年,核心网在软交换硬件架构上,从cPCI平台切向ATCA平台,但都还是用Intel的x86 CPU。最大的改变在操作系统上,从ATCA架构开始,在Linux上进行了大量优化开发实时操作系统,并替换以前的基于pSOS和VxWorks内核开发的嵌入式实时操作系统。
  優化解決Linux的時延時,一點一點地摳,最終成功將時延降低到非常低的水平。上次聽無人機公司講開發經驗,也是要一克一克地去降低機體的重量。
  這是一個偉大的勝利,最終成功打造了第一個公司級的電信Linux操作系統,後續延伸到了數據通信産品線的VRP上。省了錢不說,還大大提升了能力。華爲對國際Linux開源陣營也做出了巨大的曆史貢獻。
  任寶剛點評:我2009-2012年是核心網平台項目經理和開發代表,當時和愛立信比拼ATCA的刀片硬件架構加基于開源Linux內核的軟件平台(之前是cPCI專有硬件+VxWorks嵌入式平台),一開始大家問題都很多,每天開車從東莞往回拉日志分析,被客戶罵刀片架構是“刀刀見血”。好在我們最後勝了。ACTA平台的第一個全球商用的版本就是當時我們搞的。盡管最終的結果是好的,但是過程都是極其艱辛的,所以對待那些創新和失敗,要有足夠的耐心,沒有神話,火候到了才能出來。
  按任正非的理念,如果一個技術的核心是算法和邏輯,華爲是可以通過努力來搞定的,所以華爲在汽車BU裏,做電池管理BMS(核心是算法和邏輯),卻不做電池(核心是化學和材料)。任正非大力呼籲國家培養更多數學家。
  4、新引入了一個層次:雲計算,新架構叫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(雲計算、汽車)。
  在我去年描述的中國操作系統群像裏,已經列舉了華爲的系列化操作系統,增補總結如下:
  1、路由器和數據通信交換機操作系統: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的成功故事。另外一方面,鴻蒙的微內核,也可以做備胎。
  2、云计算操作系统:Fusion Sphere。最初采用XEN虚拟化引擎,现在走向KVM。
  3、服務器操作系統:歐拉EulerOS,即將開源,和全世界共同進步。
  4、物聯網嵌入式操作系統:LiteOS。超輕量級,已經開源。
  通信泰鬥邬賀铨認爲:“AIoT是IoT的發展方向,IoT需要AI來提升其價值。5G是連接AI與IoT的橋梁,其高帶寬、高可靠低時延、大連接開拓了AIoT更廣闊的應用領域。”
  5、汽車和無人駕駛操作系統:鴻蒙。余承東宣布鴻蒙開源,通過開源來吸納全球智慧,是最好的辦法。
  6、智能手機、電視機操作系統:鴻蒙。這個大家說得很多了。
  7、方舟編譯器。方舟編譯器並不是操作系統本身,但是一方面可以提高編譯後操作系統程序的運行效率(手機跑得更快),另外一方面,大大方便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的核心是基于願景的理論突破和基礎技術的發明,而理論突破和基礎技術發明源頭之一是學術界,在大學裏,在座的各位之中。”
  後注:老兵戴輝已經系統整理並發表了華爲的芯片史、無線史、手機史、光傳輸史、華電-華三創業系史、操作系統史,新的作品正在路上。請叫老兵戴輝爲“華爲科技史之始作俑者”。

上一篇:起底伟创力:高龄美国代工巨头 曾是华为金牌供应商
下一篇:从 1967年起,回溯闪存辉煌发展史

免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。