国产操作系统回顾2022 展望2023值得关注的技术趋势

2023-01-03 10:41:13 admin 122

国产操作系统回顾2022 展望2023值得关注的技术趋势 

在整个软件生态中,操作系统起到重要的承上启下作用。经过数十年的持续迭代和演进,操作系统整体发展稳健。从技术角度来看,虽然近几年并未涌现突破性成果,但不少受访专家对 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,即任何工作都首先贡献到上游社区,与所有的生态合作伙伴一起,完善这个生态。”受访专家总结道。