優(yōu)麒麟是由麒麟軟件有限公司和中國(guó)CCN開(kāi)源創(chuàng)新聯(lián)合實(shí)驗(yàn)室共同發(fā)起和維護(hù)的開(kāi)源項(xiàng)目,自2013年成立以來(lái),已累計(jì)發(fā)行19個(gè)版本,下載量超過(guò)3800萬(wàn)次,向開(kāi)源社區(qū)貢獻(xiàn)代碼數(shù)百萬(wàn)行,被Linux、Debian、Ubuntu、OpenStack、Ceph等國(guó)際開(kāi)源社區(qū)接收的Patch超過(guò)7400個(gè),在全球范圍內(nèi)擁有數(shù)十萬(wàn)活躍用戶(hù)。
此文章轉(zhuǎn)載自 InfoQ 官方公眾號(hào):
采訪嘉賓| 余杰博士、劉曉東博士
作者 | 凌敏
20 世紀(jì)末,中國(guó)掀起操作系統(tǒng)本土化浪潮。在隨后的 20 余年時(shí)間里,依托開(kāi)源生態(tài)以及政策東風(fēng),這股浪潮愈加猛烈,也涌現(xiàn)出了越來(lái)越多好用的國(guó)產(chǎn)操作系統(tǒng)。
作為能讓計(jì)算機(jī)正常運(yùn)行的根基,操作系統(tǒng)扮演著不可替代的角色,然而,開(kāi)發(fā)操作系統(tǒng)卻是一個(gè)艱難的旅程。本文中,InfoQ 采訪了優(yōu)麒麟項(xiàng)目負(fù)責(zé)人余杰博士、開(kāi)發(fā)負(fù)責(zé)人劉曉東博士,希望他們的實(shí)踐經(jīng)驗(yàn)?zāi)芙o大家?guī)?lái)一些啟發(fā)和思考。
1、2013-2022,優(yōu)麒麟 9 年的變遷與升級(jí)
2013 年,優(yōu)麒麟項(xiàng)目正式啟動(dòng)。同年 4 月,優(yōu)麒麟首個(gè) 13.04 版本正式發(fā)布,面向全球免費(fèi)下載并開(kāi)放所有源代碼,在漫長(zhǎng)的發(fā)展長(zhǎng)河中,有三個(gè)不得不提的重要舉措。創(chuàng)建獨(dú)有桌面環(huán)境 UKUI:融入中國(guó)特色,更有科技感、時(shí)尚感
為計(jì)算機(jī)用戶(hù)提供最好的 Linux 體驗(yàn)是團(tuán)隊(duì)開(kāi)發(fā)優(yōu)麒麟的初衷,也是團(tuán)隊(duì)一直堅(jiān)持和努力的方向。從建立之初,優(yōu)麒麟團(tuán)隊(duì)就著手以桌面環(huán)境為起點(diǎn)去打造一款具有更佳用戶(hù)體驗(yàn)的 Linux 發(fā)行版。這是因?yàn)樽烂姝h(huán)境作為操作系統(tǒng)的重要組件,是用戶(hù)使用操作系統(tǒng)最直接的入口,一個(gè)好用的桌面環(huán)境可以大幅降低用戶(hù)使用 Linux 的門(mén)檻,甚至可以直接提升操作系統(tǒng)的使用人數(shù)。
然而桌面環(huán)境的實(shí)現(xiàn)并不輕松,基礎(chǔ)實(shí)現(xiàn)難度較大。因?yàn)樽烂姝h(huán)境覆蓋了很多基礎(chǔ)組件,如開(kāi)始菜單、文件管理器、控制面板等,工作量較大;同時(shí),桌面環(huán)境還要對(duì)底層硬件進(jìn)行管理控制,對(duì)上層應(yīng)用提供支撐,技術(shù)難度也較高。
在經(jīng)過(guò)了大量的用戶(hù)調(diào)研和自主設(shè)計(jì)后,優(yōu)麒麟開(kāi)發(fā)出了全新的桌面環(huán)境 UKUI,并在其中融入中國(guó)特色,比如 2017 年 4 月發(fā)布的 UKUI 2.0 就遵循了中華民族美學(xué)核心——觀物取象,主色調(diào)采用了源自大自然的中國(guó)傳統(tǒng)顏色,而圖標(biāo)及默認(rèn)壁紙則是擬物化和扁平風(fēng)結(jié)合統(tǒng)一的形式。
2018 年,UKUI 桌面環(huán)境正式進(jìn)入主流發(fā)行版 Debian 的官方倉(cāng)庫(kù),成為第一款由中國(guó)團(tuán)隊(duì)主導(dǎo)開(kāi)發(fā)并進(jìn)入兩大國(guó)際主流社區(qū)的桌面環(huán)境。2020 年,首個(gè) UKUI 3.0 預(yù)覽版發(fā)布。UKUI 3.0 作為 UKUI 的第三個(gè)大版本,使用 Qt 開(kāi)發(fā),并新增了諸多新特性,如跨平臺(tái)支持,兼容 x86、ARM64 等多種主流架構(gòu);4K 支持,采用 SVG 格式圖標(biāo),并通過(guò) DPI 設(shè)置,支持 100%-300% 的整倍縮放。2021 年,UKUI 被 openSUSE 和 Gentoo 社區(qū)倉(cāng)庫(kù)收錄,成為其可選桌面環(huán)境之一。
截至目前,UKUI(項(xiàng)目地址:https://github.com/ukui)共有 177 位開(kāi)發(fā)貢獻(xiàn)者,累計(jì)項(xiàng)目代碼量超 300 萬(wàn)行。 引入雙內(nèi)核解決方案:在穩(wěn)定性、兼容性與最新特性間得到平衡
2021 年 4 月,優(yōu)麒麟 20.04 LTS Pro 版本正式發(fā)布,這是基于 20.04 長(zhǎng)期支持版本的更新,并將提供 5 年的技術(shù)支持。
優(yōu)麒麟 20.04 LTS Pro 引入了雙內(nèi)核解決方案:集成最新 Linux 5.10 LTS 版本內(nèi)核,同時(shí)提供 Linux 5.4 LTS 版本內(nèi)核,用戶(hù)可以在 Grub 界面選擇任一版本內(nèi)核進(jìn)行體驗(yàn),滿(mǎn)足更多場(chǎng)景下的用戶(hù)使用需求。
這種雙內(nèi)核的設(shè)計(jì)優(yōu)勢(shì)明顯,Linux 5.10 LTS 版本內(nèi)核能提供一些 Linux 最新的特性,帶來(lái)了許多功能增強(qiáng)和更多的設(shè)備支持;Linux 5.4 LTS 版本內(nèi)核具備更好的穩(wěn)定性和兼容性。總的來(lái)說(shuō),這種雙內(nèi)核方案能夠在穩(wěn)定性、兼容性與最新特性間得到平衡。
目前,優(yōu)麒麟社區(qū)(項(xiàng)目地址:https://github.com/ubuntukylin)已累計(jì)發(fā)行 18 個(gè)版本,下載量超過(guò) 3800 萬(wàn)次,向開(kāi)源社區(qū)貢獻(xiàn)代碼數(shù)百萬(wàn)行,在全球范圍內(nèi)擁有數(shù)十萬(wàn)活躍用戶(hù)。 擁抱 RISC-V:開(kāi)展硬件模塊化與軟件模塊化相融合的操作系統(tǒng)架構(gòu)設(shè)計(jì)
近年來(lái),以 RISC-V 為代表的開(kāi)放架構(gòu)指令集備受關(guān)注。
RISC-V 是一個(gè)基于精簡(jiǎn)指令集(RISC)原則的開(kāi)源指令集架構(gòu)(ISA)。與 x86、ARM 相比,RISC-V 可以完全自由免費(fèi)使用,并容許添加自有指令集拓展以實(shí)現(xiàn)差異化發(fā)展。
目前,RISC-V 正贏得越來(lái)越多的支持者,成為后摩爾時(shí)代深刻影響芯片產(chǎn)業(yè)的重要變量。優(yōu)麒麟也將 RISC-V 作為重要的戰(zhàn)略方向。2021 年 12 月 29 日,優(yōu)麒麟社區(qū)發(fā)布首個(gè)支持 RISC-V 架構(gòu)的系統(tǒng)——20.04 Pro (RISC-V)版本。
RISC-V 有如此明顯的架構(gòu)優(yōu)勢(shì),但與 x86 和 ARM 架構(gòu)相比,RISC-V 短板也很明顯,那就是應(yīng)用生態(tài)系統(tǒng)不夠完善。為了補(bǔ)足這一短板,優(yōu)麒麟在 RISC-V 版本中自帶 20+ 款自研軟件,豐富了 RISC-V 應(yīng)用生態(tài)系統(tǒng)。
此外,優(yōu)麒麟也在生態(tài)兼容上下功夫。“生態(tài)兼容是操作系統(tǒng)廠商最繞不過(guò)去的一個(gè)檻,要么我們自己構(gòu)建生態(tài),要么兼容生態(tài)。我們希望能夠把 x86 和 ARM 比較完善的應(yīng)用生態(tài),通過(guò)指令集轉(zhuǎn)換和應(yīng)用兼容運(yùn)行環(huán)境的方式,兼容到 RISC-V 的生態(tài)上來(lái)。”劉曉東博士說(shuō)道。
今年 2 月,英特爾宣布加入 RISC-V 國(guó)際基金會(huì),這對(duì) RISC-V 生態(tài)發(fā)展無(wú)疑是一大利好。不過(guò)也有專(zhuān)家指出,RISC-V 需要盡快逼近甚至超越 ARM 的性能,這需要來(lái)自硬件 IP、后端優(yōu)化、封裝優(yōu)化、軟件優(yōu)化等多方面的支持。
不過(guò),由于 RISC-V 本身是個(gè)可擴(kuò)展架構(gòu),更多應(yīng)用在 IoT 領(lǐng)域這種對(duì)性能要求不高的地方。當(dāng)前國(guó)內(nèi)雖然有多家廠商進(jìn)軍這一賽道,但更多是基于 RISC-V 開(kāi)發(fā)面向低端場(chǎng)景的芯片。
“我們?cè)u(píng)估至少再花個(gè)三五年的時(shí)間, RISC-V 芯片才能在 PC 這種場(chǎng)景上比較成熟。今年我們會(huì)將 Web 版本作為優(yōu)化的重點(diǎn),目前國(guó)際上幾個(gè)主流的發(fā)行版,比如 Debian、 Ubuntu 都有 RISC-V 的版本,但還缺乏對(duì) RISC-V 芯片特征的針對(duì)性?xún)?yōu)化,比如它的模塊化特性,這是我們今年的重要任務(wù)之一。”余杰博士表示。
除了在 RISC-V 上加大研發(fā)支持和投入,未來(lái),優(yōu)麒麟也會(huì)關(guān)注操作系統(tǒng)智能化,對(duì)用戶(hù)習(xí)慣進(jìn)行深入的學(xué)習(xí)和挖掘,提供智能語(yǔ)音助手等相應(yīng)的功能,并增強(qiáng)對(duì)當(dāng)前主流深度學(xué)習(xí)框架例如 TensorFlow 的支持。
回顧過(guò)往 9 年,優(yōu)麒麟積累到的經(jīng)驗(yàn)是,做開(kāi)源項(xiàng)目尤其是開(kāi)源操作系統(tǒng),需要重點(diǎn)關(guān)注兩方面:第一,重視開(kāi)源規(guī)則;第二,重視代碼質(zhì)量。
開(kāi)源操作系統(tǒng)不同于開(kāi)源軟件,它的整個(gè)倉(cāng)庫(kù)方案有三四萬(wàn)個(gè)軟件包,這些軟件包中各個(gè)功能、協(xié)議間的相互影響比較復(fù)雜,因此需要專(zhuān)門(mén)的人員來(lái)做合規(guī)性評(píng)估和審核,并重視工作規(guī)范,程序的正確性以及邏輯完備性上下功夫。
2、生態(tài)難題下,多端融合給了 Linux 操作系統(tǒng)彎道超車(chē)的機(jī)會(huì)
經(jīng)過(guò) 20 余年的追趕,國(guó)產(chǎn) Linux 操作系統(tǒng)與國(guó)外主流操作系統(tǒng)如 Windows 在性能上的差距正在逐步縮短,某些領(lǐng)域甚至可以實(shí)現(xiàn)反超。但桌面應(yīng)用并不是性能為王,而是生態(tài)為王。目前,國(guó)產(chǎn) Linux 操作系統(tǒng)在推廣的過(guò)程中,遇到的核心的問(wèn)題就是應(yīng)用生態(tài)。而生態(tài)又不單單是僅靠金錢(qián)或人力投入就能解決的。
通常來(lái)說(shuō),豐富 Linux 應(yīng)用生態(tài)有兩種途徑:在 Linux 上寫(xiě)原生應(yīng)用,這是最理想的途徑,但存在諸多不可控因素;兼容,把其他平臺(tái)上用得好的軟件也在 Linux 平臺(tái)上運(yùn)行起來(lái)。兼容有很多種不同技術(shù),比較常見(jiàn)的是采用模擬器技術(shù),即通過(guò)虛擬機(jī)擴(kuò)大應(yīng)用生態(tài),但這種方式往往也會(huì)帶來(lái)性能上的損耗和易用性的損失。
要想實(shí)現(xiàn)不同運(yùn)行環(huán)境之間的互通,豐富 Linux 應(yīng)用生態(tài),還需要再添一把火。麒麟移動(dòng)運(yùn)行環(huán)境 KMRE 應(yīng)運(yùn)而生。2021 年 6 月 20 日,優(yōu)麒麟新發(fā)布的 20.04 LTS Pro 版本首次宣布支持移動(dòng)兼容環(huán)境, 通過(guò)麒麟移動(dòng)運(yùn)行環(huán)境 KMRE,實(shí)現(xiàn)桌面和移動(dòng)端全面打通,極大地提升了優(yōu)麒麟操作系統(tǒng)應(yīng)用生態(tài)的豐富性。 2016 年開(kāi)始,優(yōu)麒麟團(tuán)隊(duì)展開(kāi)技術(shù)攻關(guān),創(chuàng)新開(kāi)發(fā) KMRE 架構(gòu)。
KMRE 的研發(fā)是一個(gè)系統(tǒng)性的工程,代碼量大。它不同于虛擬機(jī),架構(gòu)通過(guò)共用內(nèi)核,直接使用硬件,同時(shí)支持 ARM 和 x86 設(shè)備和多種 CPU、GPU,有效解決了顯示性能損耗、多窗口運(yùn)行、桌面共享、文件互通等問(wèn)題,將 Linux 操作系統(tǒng)和 Android 操作系統(tǒng)“合二為一”。兩個(gè)系統(tǒng)共用同一個(gè)內(nèi)核,共享硬件資源,并且 KMRE 可以直接使用硬件資源。
技術(shù)實(shí)現(xiàn)上,KMRE 采用原生運(yùn)行模式,從 Linux 內(nèi)核到 Android 硬件抽象層,再到 Android 運(yùn)行時(shí)庫(kù)、應(yīng)用運(yùn)行框架實(shí)現(xiàn)打通。在硬件抽象層面,也需要進(jìn)行相應(yīng)的打通和適配,如電池、GPS、重力感應(yīng)等等。此外,Android 操作系統(tǒng)的應(yīng)用通常以單窗口的方式展現(xiàn),而在 Linux 操作系統(tǒng)中,用戶(hù)需要在多個(gè)窗口中打開(kāi)不同的應(yīng)用,這也是二者存在差異的地方。
“雖然 Android 起源于 Linux,但它主要運(yùn)行在手機(jī)端,而 Linux 現(xiàn)在更多面向的是桌面和服務(wù)器端,二者的應(yīng)用環(huán)境不同,軟件棧也存在很大的差異,甚至進(jìn)程間通信和共享內(nèi)存的機(jī)制也是不同的。”劉曉東博士介紹道。
此外,KMRE 還提供了兩種顯示框架。第一種通用模式,針對(duì)所有顯卡,包括開(kāi)源和閉源的顯卡,兼容性極高;第二種高性能模式,針對(duì)于開(kāi)源驅(qū)動(dòng)的顯卡,能夠直接訪問(wèn)硬件,做到零性能損失。
多端融合為操作系統(tǒng)帶來(lái)了新的改變,極大地豐富了應(yīng)用生態(tài),滿(mǎn)足用戶(hù)更多的應(yīng)用需求。近年來(lái),越來(lái)越多的操作系統(tǒng)在多端融合上發(fā)力,如微軟的 Windows 11 操作系統(tǒng)就帶來(lái)了 Android 子系統(tǒng),可直接運(yùn)行 Android 應(yīng)用,OpenHarmony 也將與 OpenEuler 能力共享、生態(tài)互通。 那么,多端融合是國(guó)產(chǎn)操作系統(tǒng)加速崛起的必然選擇嗎?
余杰博士認(rèn)為,多端融合給了國(guó)產(chǎn) Linux 操作系統(tǒng)一個(gè)彎道超車(chē)的機(jī)會(huì)。“在過(guò)去,如果我們想用 Linux 操作系統(tǒng)去替代 Windows 是一件比較困難的事情,因?yàn)?Windows 的應(yīng)用生態(tài)已經(jīng)非常成熟?,F(xiàn)在,通過(guò)多端融合,我們可以用移動(dòng)的方式來(lái)解決 Linux 此前無(wú)法處理的應(yīng)用場(chǎng)景,降低替換難度。長(zhǎng)遠(yuǎn)來(lái)看,多端融合給了我們一個(gè)崛起的機(jī)會(huì)。”
多端融合使得用戶(hù)對(duì)于單個(gè)操作系統(tǒng)的依賴(lài)性正在減弱。隨著物聯(lián)網(wǎng)技術(shù)進(jìn)一步發(fā)展,個(gè)人智能設(shè)備數(shù)量陡增,多端融合技術(shù)也可以讓這些設(shè)備之間實(shí)現(xiàn)更好的聯(lián)動(dòng),高效傳輸信息??梢灶A(yù)見(jiàn)的是,在未來(lái),多端融合也會(huì)帶來(lái)更多奇妙的反應(yīng)。
3、從 80 分到 100 分的跨越
當(dāng)前國(guó)內(nèi)基礎(chǔ)軟件產(chǎn)業(yè)整體仍落后于國(guó)際領(lǐng)先的水平,中國(guó)市場(chǎng)也一直沒(méi)有催生出世界級(jí)基礎(chǔ)軟件企業(yè)。究其原因,劉曉東博士認(rèn)為,國(guó)內(nèi)對(duì)于開(kāi)源的理解以及重視程度還不夠,從事開(kāi)源軟件開(kāi)發(fā)的人數(shù)也比較有限。同時(shí),國(guó)內(nèi)缺少比較良性的社區(qū)運(yùn)行模式,缺乏頂級(jí)的開(kāi)源社區(qū)。
“比較好的一點(diǎn)是,我們可以看到國(guó)家在‘十四五’規(guī)劃里對(duì)開(kāi)源社區(qū)有了更多的重視,我認(rèn)為在未來(lái)五年里,開(kāi)源社區(qū)可以迎來(lái)發(fā)展機(jī)遇,會(huì)有更多的人參與到開(kāi)源事業(yè)中來(lái)。”
至于一個(gè)開(kāi)源項(xiàng)目如何才能更加持續(xù)、穩(wěn)定地運(yùn)營(yíng)下去,從感性維度而言,需要的是“熱愛(ài)”。“只要有一波人對(duì)著同一個(gè)開(kāi)源項(xiàng)目有了足夠多的熱愛(ài),就能夠保證這個(gè)開(kāi)源項(xiàng)目能夠有持續(xù)性的投入,以及較高的活躍度,能夠不斷地去跟國(guó)際主流開(kāi)源社區(qū)進(jìn)行交流和碰撞,從而讓這個(gè)開(kāi)源事業(yè)走向成熟和穩(wěn)定。”劉曉東博士說(shuō)道。
從理性維度而言,則是需要“成熟的商業(yè)模式”。“有個(gè)成熟的商業(yè)模式,它才能夠真正長(zhǎng)久的走下去。”余杰博士說(shuō)道。
在信創(chuàng)背景下,國(guó)產(chǎn)操作系統(tǒng)發(fā)展逐步駛?cè)肟燔?chē)道,余杰博士認(rèn)為,如果 Windows 是 100 分的話(huà),那么國(guó)產(chǎn)操作系統(tǒng)已經(jīng)達(dá)到七八十分的水平。
“目前在整個(gè) Linux 桌面水平、生態(tài),以及性能優(yōu)化方面都做了很多工作,雖然和 Windows 分?jǐn)?shù)差距沒(méi)那么大,但從 80 分到 100 分需要極大的投入,甚至是整個(gè)行業(yè)的帶動(dòng)。與此同時(shí),國(guó)產(chǎn)操作系統(tǒng)應(yīng)該在用戶(hù)體驗(yàn)上下功夫,可以借鑒蘋(píng)果、安卓的設(shè)計(jì)思路,但也要做出自己的特色。”
從 80 到 100 分需要跨越多少江河,背后需要做出多少工作,這是留給每個(gè)從業(yè)者的難題。
(免責(zé)聲明:本網(wǎng)站內(nèi)容主要來(lái)自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。
任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁(yè)或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書(shū)面權(quán)利通知或不實(shí)情況說(shuō)明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開(kāi)相關(guān)鏈接。 )