操作系统的作用:市场增速超20%,国产操作系统“浴火重生” | 解读操作系统的 2022
作者 | 凌敏
本文是“2022 InfoQ 年度技术盘点与展望”系列文章之一,由 InfoQ 编辑部制作呈现,重点聚焦操作系统领域在 2022 年的重要进展、动态,希望能帮助你准确把握 2022 年操作系统领域的核心发展脉络,在行业内始终保持足够的技术敏锐度。“InfoQ 年度技术盘点与展望”是 InfoQ 全年最重要的内容选题之一,将涵盖操作系统、数据库、AI、大数据、云原生、架构、大前端、编程语言、开源安全、数字化十大方向,后续将聚合延展成专题、迷你书、直播周、合集页面,在 InfoQ 媒体矩阵陆续放出,欢迎大家持续关注。特此感谢郭振宇、江大勇、刘恺、马涛、任革林、张磊、张家驹(按姓名首字母排序)对本文的贡献,他们的真知灼见,是本文能与大家见面的关键。
在整个软件生态中,操作系统起到重要的承上启下作用。经过数十年的持续迭代和演进,操作系统整体发展稳健。从技术角度来看,虽然近几年并未涌现突破性成果,但不少受访专家对 InfoQ 表示,巨变正在酝酿中。当前,全球数字经济进一步发展,企业数字化转型持续深入,以及摩尔定律的失效,都为软硬件带来新的挑战,而这也是操作系统变革的重要驱动力。
回顾操作系统的 2022 年,可以发现,有些改变正在悄然发生。随着“量变”的积累,操作系统必将迎来“质变”的飞跃。
2022 年,值得关注的大事件
2022 年,全球操作系统市场格局稳定。看国外主流操作系统,桌面操作系统方面并未带来太多惊喜。与去年重磅发布的 Windows 11、Windows 365 相比,Windows 今年仅带来了一些小范围的更新。
移动操作系统方面,Android 13 与 iOS 16 相继登场,但也都属于常规升级。2 月 11 日,谷歌发布了首个 Android 13 开发者预览版,8 月 16 日,谷歌向 Pixel 机型推送了 Android 13 正式版更新,并正式开源;6 月 7 日,苹果正式发布 iOS 16,并推送了首个开发者预览版,9 月 13 日,苹果正式推送 iOS 16 系统更新。
服务器操作系统方面,发展稳健。5 月,红帽正式发布 RHEL 9,其基于上游内核版本 5.14,并源自 CentOS Stream;10 月,SUSE 推出业界首个自适应 Linux 平台原型(Adaptable Linux Platform,简称 ALP),旨在让用户专注于工作负载,从硬件和应用层抽离出来。
看国内操作系统,2022 年迎来了多个版本升级。3 月,OpenHarmony 3.1 正式发布;4 月,欧拉首个数字基础设施全场景长周期版本 openEuler 22.03 LTS 正式发布;7 月,华为正式发布 HarmonyOS 3 以及搭载 HarmonyOS 3 的多款新产品;8 月,OpenCloudOS 开源操作系统社区正式发布首个 Linux 源社区(L1)内核版本 OCKS 2207,这也是 OpenCloudOS 源社区项目的核心组件;11 月,龙蜥社区正式发布面向云时代打造的下一代操作系统 Anolis OS 23 公测版……
2022 年,国产操作系统市场增速显著。根据亿欧智库测算,国产操作系统通用市场增速将超过 20%,在 2024 年将达到 34.1 亿元的规模。服务器操作系统方面,数据显示,2022 年上半年,中国服务器操作系统新增装机量是 195 万套,全年预计超过 400 万,过去两年,这个数字是 322 万和 350 万。这说明在产业数字化的背景下,操作系统依然是个巨大的增量市场。
总体而言,2022 年,国产操作系统在技术、社区和商业化方面均有快速发展:技术方面,更多企业及研究机构投入到自研系统项目中,原创组件和技术如雨后春笋般涌现;社区方面,头部社区蓬勃发展,新的社区不断出现;商业化方面,OSV 都有较为明显的业绩增长。
另一个显著变化是,中国开源力量迅速崛起,国内开发者正越来越深入地参与到开源操作系统的建设中。在一份对 Linux 内核提交数量的统计中,来自中国的开发者占比不断提高,有统计的来自中国的 patch 数,连续 7 年超过美国成为第一。
操作系统作为底层基础软件,其安全性至关重要,操作系统的安全也是网络系统信息安全的基础。2022 年,全球范围内都进一步重视开源软件供应链问题,可以说,开源安全在今年迈出了一大步。
2022 年 1 月 13 日,美国白宫召集了政府和 Apache 软件基金会、Linux 基金会、开源安全基金会、GitHub、微软、谷歌、甲骨文、红帽等企业或组织共同谈论开源软件安全问题。5 月 12 日,Linux 基金会和开源安全基金会提出了一项为期两年的近 1.5 亿美元的投资计划,并提出十个开源安全目标:安全教育、风险评估、数字签名、内存安全、事件响应、更好的扫描、代码审计、数据共享、软件物料清单(SBOM)以及改进的供应链。
国内方面,10 月 24 日,开放原子开源基金会联合 27 家单位共同发起开源安全委员会,开源安全委员会致力于制定开源项目的安全流程和规范、提供开源开发的安全工具和平台、发起开源安全依赖的关键项目、推动开源安全的国际合作与交流。
如何评价国产操作系统的 2022?
对于国产操作系统在 2022 年的整体发展,受访专家均给出了积极评价,关键词包括机遇、加速、合力等。
操作系统作为信息技术的核心底座,具有复杂度高、投入大、生态建设难、成功率低等特点。经过二十余年的探索与实践,中国有能力在技术上实现一个大型的操作系统。同时,近几年国内操作系统市场快速增长,人才储备量提升,政策投入力度巨大,操作系统产业正迎来新机遇。在这一背景下,国产操作系统的发展也驶入快车道,从无到有,从可用到好用,国内开发者用短时间迅速完成这一转变。此外,与其他软件不同,操作系统是一个强生态的产品,这也需要操作系统厂商与硬件厂商、高校、互联网等软件厂商等各个链条通力合作,共同促进操作系统生态建设。
对于服务器操作系统,则可以用“格局尽显,稳中有进”来形容这一年。
2022 年,主流云厂商、服务器厂商、芯片厂商以及传统操作系统厂商都加大了对操作系统研发和操作系统社区的投入。随着中国在操作系统领域研发力度的持续增加,国产开源操作系统社区和商业化操作系统的产品性能都已经大幅提升,生态建设也初具规模,开始具备规模化推广能力。
“当前国产操作系统正在逐渐走向成熟好用阶段。未来 5-10 年,可能是国产操作系统的黄金时代。”受访专家表示。
重点趋势与变化解读
2022 年,Linux 内核最大的一个变化是新增了对 Rust 语言的支持。此外,近两年涌现出的新技术在 2022 年继续带来新的变化,如 eBPF 技术、RISC-V 架构。
Rust for Linux
Rust 凭借其内存安全特性,近年来受到越来越多开发者的支持,并连续 7 年被 Stack Overflow 开发者调查评为“最受欢迎的编程语言”。2022 年的调查结果显示,有 87% 的开发者表示想要继续使用 Rust。
而 Linux 内核社区长期以来都是以性能、稳定性、安全作为发展的基本要求,这与 Rust 在安全方面的特性非常契合。因此,早在几年前就有开发者呼吁在 Linux 内核中增加 Rust 语言的支持。
在 2022 年 9 月举行的 Linux Plumbers Conference 上,有一场关于 Rust 是否会出现在 Linux 中的小型会议,会议讨论了将 Rust 作为一门系统编程语言集成到 Linux 内核主线的工作。彼时,Linux 的创建者 Linus Torvalds 在接受媒体采访时表示,“如果不出意外,Rust 将会出现在 Linux 6.1 版本中”。12 月 11 日,Linus Torvalds 发布了最新的 Linux 6.1 内核稳定版,正式引入对 Rust 的支持。
Rust for Linux 带来的收益明显,安全性上的收益尤为突出。
在安全性上,Window 的一份数据可以作为参考。此前,一位微软工程师曾透露,微软产品每年通过安全更新解决的所有漏洞中,大约 70% 是内存安全问题。因为 Windows 主要是用 C/C++ 这两种“内存不安全”的编程语言编写的。
Linux 同样如此。随着 Linux 内核代码量愈发庞大,贡献者数量迅速增长,系统安全性问题也变得越来越突出。而 Rust 设计初衷就是为了解决内存安全问题,在功能保持不变的情况下,用 Rust 语言进行重写相当于将安全性提升三倍左右。此外,Linux 内核对代码执行效率要求较高,Rust 的执行效率和 C/C++ 近乎一致,这也是其能成为底层系统编程语言的原因之一。
当前,Rust for Linux 还处于早期阶段。长期以来,Linux 内核主线代码基本都由 C/C++ 语言编写,接受 Rust 需要社区补充和完善大量的周边工作。
同时,对于内核维护者来说,Rust 进入 Linux 内核也会带来一些问题。
首先,没有银弹。虽然 Rust 语言在设计上更多地考虑了内存安全、线程安全等,但代价是比较陡峭的学习曲线,以及使用者在实现某些功能时的便利性。此外,内核是贴近硬件、最底层的程序,某些在用户态司空见惯的语言特性,比如异常的处理方式,在内核里是不一样的。对于 Rust 而言,如何在内核里更好地工作,还有很大的探索空间。
其次,计算机语言和自然语言一样,都能反映出文化。C/C++ 语言反映出来的文化和 Rust 不同,对于那些已经非常熟悉并深度认同 C/C++ 语言文化的资深 Linux 内核维护者来说,接受 Rust 的难度较高。
对于 Rust for Linux 的未来发展,多数专家都给出了积极评价:“从长远看,会有越来越多新的代码用 Rust 来实现。”
eBPF 时代来临
eBPF 的全称是“扩展型伯克利封包过滤器(Extended Berkeley Packet Filter)”,最早是从 BPF (Berkeley Packet Filter) 技术扩展而来,是一种无需更改 Linux 内核代码,便能让程序在内核中运行的技术。
2014 年,eBPF 首次出现在 Linux 内核中。经过社区不断迭代,目前,eBPF 技术已经非常成熟,技术应用呈现井喷现象。虽然在设计之初 eBPF 仅为 Linux 内核服务,但近年来已经诞生了一批基于 eBPF 的项目。2021 年 5 月,微软启动了新的开源项目 eBPF for Windows,该项目旨在让开发者在现有 Windows 版本之上使用熟悉的 eBPF 工具链和应用编程接口(API)。为了更好地推动 eBPF 的发展,2021 年 8 月 12 日,Linux 基金会旗下的非营利性组织 eBPF 基金会正式成立。
2022 年,eBPF 热度不减,仍是当下最火的技术之一。eBPF 技术带来的收益明显,一方面,包括 Linux、Windows 在内的主流操作系统内核是宏内核,可拓展性较差,而 eBPF 技术能够以非侵入式的方式对内核进行扩展;另一方面,eBPF 提供了比较好的安全性、扩展性和兼容性。
不少受访专家对 InfoQ 表示,eBPF 的发展前景广阔,属于 eBPF 的时代已经来临。
“eBPF 技术的发展已经超出了我的预期。操作系统内核在没有应用 eBPF 技术以前,整个内核是静态的,编写内核时实现了什么功能,运行时也只有这些功能,最多可以做一些参数的调整,但无法带来更复杂的功能变化。应用 eBPF 技术以后,可以在 Linux 内核中运行沙盒程序,编译成相关字节码加载到内核中,无需更改内核源代码或加载内核模块。”有受访专家表示,eBPF 技术为操作系统内核提供了一个新的可能性,为内核带来根本性的改变。
对于 eBPF 的未来,eBPF summit 2022 《The future of eBPF in the Linux Kernel》给出了几个演进方向:
- 更完备的编程能力:当前 eBPF 的编程能力存在一些局限性(比如不支持变量边界的循环,指令数量受限等),演进目标是提供图灵完备的编程能力;
- 更强的安全性:支持类型安全,增强运行时 Verifier,演进目标是提供媲美 Rust 的安全编程能力;
- 更广泛的移植能力:增强 CO-RE,加强 Helper 接口可移植能力,实现跨体系、平台的移植能力;
- 更强的可编程能力:支持访问 / 修改内核任意参数、返回值,实现更强的内核编程能力。
拥抱 RISC-V
近几年,RISC-V 以其开放的指令集架构受到越来越多操作系统厂商和开发者的青睐,不少操作系统开始拥抱 RISC-V,并成为一种新兴趋势。Semico Research 预测,到 2025 年,RISC-V 市场规模将超 10 亿美元。
国外包括英特尔、苹果、Tenstorrent、瑞萨电子等多个厂商都在积极布局 RISC-V。2022 年 2 月,英特尔宣布加入 RISC-V International 基金会,正式成为该基金会第 19 个高级会员,并设立了 10 亿美元的 IFS 基金,用于帮助初创和成熟企业进行代工生态的创新,其中很大一部分用于 RISC-V;9 月,半导体产业分析机构 SemiAnalysis 称,苹果正在将其嵌入式内核将全面转移到 RISC-V 架构;同月,任职于 Tenstorrent 负责 RISC-V 架构的传奇芯片设计师 Jim Keller 喊出了“未来是属于 RISC-V 的”口号。
在 2022 RISC-V 国际峰会上,RISC-V 基金会首席执行官 Calista Redmond 表示,“我们 2022 年的愿景是让 RISC-V 无处不在,随着 RISC-V 在汽车、航空航天、数据中心以及消费设备等各个领域的采用和开发,这一愿景已经真正实现”。
目前,RISC-V 国际基金会在 70 个国家 / 地区拥有超过 3180 名会员,覆盖芯片厂商、芯片设计服务公司、软件提供商等软硬件公司,以及大学、科研机构和投资机构等。市场上有超过 100 亿个 RISC-V 核心,全球有数万名工程师致力于 RISC-V 计划。
国内方面,自 2018 年成立中国 RISC-V 产业联盟以来,四年间已有 150 多家会员单位。包括华为海思、阿里平头哥、紫光展锐、兆易创新在内的多家芯片厂商基于 RISC-V 架构开发产品,越来越多的操作系统厂商和社区开始拥抱 RISC-V。2020 年 4 月,中科院软件所牵头成立了 openEuler 社区 RISC-V SIG 组。
2022 年 8 月,阿里平头哥发布首个高性能 RISC-V 芯片平台“无剑 600”及 SoC 原型“曳影 1520”;同月,阿里云、中科院软件所 PLCT 实验室、平头哥等在龙蜥社区成立 RISC-V 架构联合小组,全面兼容并促进 RISC-V 生态发展;同月,OpenCloudOS 社区推出 OCKS 2207.2 内核版本,增加对 RISC-V 64 架构的支持;11 月,deepin 社区宣布支持曳影 1520,deepin V23 已经启动与曳影 1520 平台的适配;12 月,中科院软件所基于 openEuler 打造的傲来操作系统宣布进入 2.0 阶段,最新发布的“傲来 2.0-RV”聚焦 RISC-V 指令集,提供模拟器、硬件板卡等多种运行环境,其中硬件板卡支持中科院香山、果壳系列,支持哪吒 D1 开发板、赛昉 VisionFive 单板机、SiFive 公司 Unmatched 系列,同时也集成了澎峰科技的并行计算库。移动操作系统方面,2022 年,OpenHarmony 新增了对 3 款 RISC-V 芯片的支持,包括 TLSR9518、HPM6750IVM1 以及 BK7235。
从生态繁荣程度上来看,RISC-V 生态正处于增长关键期。当前,RISC-V 的生态建设有很多基础性工作需要做,比如硬件需要更加成熟和规范,软件(主要是在内核层面)需要与硬件配合得更好,以及功能更加完善,这些都需要内核开发者们合作完成。“我们的经验就是 Upstream First,即任何工作都首先贡献到上游社区,与所有的生态合作伙伴一起,完善这个生态。”受访专家总结道。
展望操作系统的 2023
值得关注的技术趋势 / 方向
2023 年,操作系统领域值得关注的技术趋势 / 方向除了 Rust for Linux、eBPF、RISC-V 的发展,还有云原生、异构计算、安全以及 AI 等。
云原生
操作系统是连接应用和硬件的桥梁,它的发展和 IT 基础设施密切相关。当前,随着云的不断普及以及云原生的不断演化,云会逐渐成为企业 IT 形态的主流,企业数字基础设施将基于云来重建,并迎来跨越式发展。
与此同时,全面基于云、并面向云做设计研发的操作系统将成为主流。目前,国内外各大操作系统厂商和云厂商都在积极为这一跨越式发展做准备。2022 年,操作系统 + 云协同趋势越来越明显。微软借助其基于云计算的操作系统 Azure,不断增加公共云的市场份额;红帽除了企业 Linux(RHEL),也在云平台 OpenShift 上投入重兵;SUSE 也发布了专为边缘环境中的容器化工作负载量身打造的轻量级操作系统 SLE Micro 5.2。
有受访专家预判,“未来 IT 基础设施属于云,而未来的操作系统也属于云上操作系统”。
异构计算
异构计算是近年来计算机领域出现的热门方向之一,主要是指使用不同类型指令集和体系架构的计算单元组成系统的计算方式。与传统的通用计算芯片相比,异构架构具有高性能、低功耗等显著优点。
2021 年,以 DPU 以及各种各样 XPU 为代表的异构计算异军突起,英伟达、英特尔先后发布了 DPU、IPU。2022 年,英特尔披露了 XPU 概念的下一步规划——新架构 Falcon Shores,它能将 x86 CPU 和 Xe GPU 硬件合并到同一颗芯片中。据路线图所示,Falcon Shores 计划于 2024 年完成。2022 年,全球首台原生 RISC-V 笔记本电脑 ROMA 正式发布,并首次运行无剑 600 高性能异构芯片曳影 1520。
有受访专家表示:“在 2023 年,可能会涌现出更多的异构计算设备,操作系统要想更好地支持这些计算设备,需要解决很多技术难题,比如如何在不同的平台上运行软件。”
安全
随着操作系统代码数量逐渐增加,以及支持的硬件日益广泛,安全性问题不容忽视。一方面,操作系统向下支持硬件,硬件上的某些安全缺陷可能需要在软件层面进行修复;另一方面,操作系统本身具有海量的代码,一些新特性或新的执行机制出现,也会给安全带来一些新的挑战。
此外,开源安全也是 2023 年值得关注的方向之一(编者注:后续我们也将发布针对开源安全的盘点与展望文章,敬请期待)。随着越来越多的开源软件在千行百业中得到广泛应用,安全问题日益凸显,供应链安全攻击和容器安全威胁问题日益严峻。如何构建安全可信的操作系统,是每个参与者需要长期思考的问题。
AI
近几年,AI 技术在操作系统领域诞生了诸多应用。比如,openEuler 社区曾发布一款名为 A-Tune 的操作系统性能调优引擎,能够利用 AI 技术,对运行在操作系统上的业务建立精准模型,动态感知业务特征并推理出具体应用,根据业务负载情况动态调节并给出最佳的参数配置组合,从而使业务处于最佳运行状态。
除了调优工具,预计在 2023 年,操作系统领域结合 AI 技术还会带来更多惊喜,比如人机交互。
每一次人机交互方式的变化都会导致整个产业的跨越式发展或颠覆式发展。相应地,操作系统也需要做出改变,否则无法支撑新形态下的应用程序。在 2023 年,一旦 AR(增强现实)、VR(虚拟现实)、MR(混合现实)技术取得长足发展,那么,操作系统必然也会迎来跨越式的发展。
如何做好操作系统生态建设?
生态是操作系统发展的核心,也是其能否成功的关键。与国外主流操作系统相比,国产操作系统由于起步较晚,在生态建设方面仍面临一定的挑战。
随着开源发展理念逐渐成熟,越来越多的厂商开始发起成立操作系统开源社区,进一步加快操作系统生态建设。从 2019 年开始,国内先后成立了 openEuler、OpenAnolis、OpenCloudOS 等社区。2022 年,统信、麒麟分别成了桌面操作系统根社区深度(deepin)社区、openKylin 社区。
“现在是操作系统社区的春秋战国时代”,受访专家表示,随着操作系统赛道持续火热,越来越多的企业参与其中,建设自己的开源社区。在社区发展的早期阶段,一定会遇到各种各样的问题,但如果产品优秀,围绕这个产品可以吸引足够多的企业 / 开发者参与进来,并具备一定的创新能力,始终保持开放和中立的态度,经过时间的演化,最终会向成熟社区迈进。“做开源社区应该多做实事、少务虚”,受访专家总结道。
那么,2023 年,如何才能更好地打造操作系统开源社区?
首先,有情有利,方能长久。社区需要进一步鼓励合作伙伴在社区探索出更多的合作模式,聚焦在产品和商业合作本身,真正牵引企业在社区落地。开源不是公益,找准自身商业价值点才能有可持续发展,基于此,操作系统生态才能在开源社区的沃土上成气候。
其次,生态是圈,双向奔赴。操作系统是一项门槛比较高的技术,专业人才、技术储备、研发资源都比较有限。围绕客户业务场景,操作系统产业生态圈上的操作系统、芯片、整机、数据库、中间件、以及应用软件厂商需要互帮互助,双向奔赴,让有限资源充分流通,最终拉高国内操作系统产业天花板。
最后,放弃小我,成就大我。当前国内操作系统开源社区的局面需要百花齐放,要开展竞争、建立一个完全商业的竞争环境,大家可以在一个小生态里各自产生创新,但最终还是要汇聚在一处。如果没有一个统一的生态、社区或是标准去做,可能就会出现“七国八制”的现象,不仅浪费资源,还影响效率。
写在最后
有研究机构预测,到 2024 年,国产操作系统有 7 倍的增长空间,到达百亿级的市场规模。可以说,这是国产操作系统最好的时代,机遇远远大于挑战。
对于操作系统领域的开发者而言,除了要持续提升自身的研发能力,还要具备创新能力与安全意识,始终对技术保持好奇心,并积极拥抱开源。
采访嘉宾介绍(按姓名首字母排序)
郭振宇,OpenCloudOS 社区 TOC 主席;
江大勇,openEuler 委员会主席;
刘恺,SUSE Euler 负责人;
马涛,龙蜥社区理事长;
任革林,OpenHarmony 项目管理委员会首席架构专家;
张磊,统信软件高级副总经理、CTO;
张家驹,红帽首席架构师。
如果你对本文感兴趣,欢迎在文末留言,或加入 InfoQ 写作平台话题讨论:https://xie.infoq.cn/
后续,迷你书、专题将集合发布于 InfoQ 官网,登录 InfoQ 官网: https://www.infoq.cn/ 注册并将 InfoQ 添加进收藏夹,精彩不错过。
同时,InfoQ 年度展望直播周将于 2023 年 1 月 3 日首场开播,并持续输出精彩内容,关注 InfoQ 视频号,与行业技术大牛连麦~