写点什么

当操作系统告别了“碎片化”,会是种怎样的体验?

  • 2021-11-17
  • 本文字数:2655 字

    阅读完需:约 9 分钟

当操作系统告别了“碎片化”,会是种怎样的体验?

在手机端,安卓和 iOS 是当前两大主流的操作系统,但在工业智能化的发展过程中,服务器和工业设备的操作系统却相互割裂,这导致数据孤岛化的情况进一步加剧,如何能让不同设备、不同场景形成有效协同,成为了亟需解决的问题。


在刚刚落下帷幕的 openEuler Summit 2021 中 ,欧拉开源社区技术委员会主席胡欣蔚发表了《全场景欧拉 - 志之所趋,无远弗届》的主题演讲。在随后的媒体沟通会中,InfoQ 约访了胡欣蔚,围绕 openEuler 21.09 的技术升级以及操作系统“碎片化”等问题与他做了进一步探讨。

操作系统“碎片化”怎么破?


正如前文所言,生态割裂、应用重复开发、协同繁琐是当前操作系统领域的现状,为了打破这种局面。9 月 30 日,首个支持数字基础设施全场景的 openEuler 21.09 创新版本应运而生,这也是欧拉全新发布后的第一个社区版本。


新欧拉可广泛部署于服务器、云计算、边缘计算、嵌入式等各种形态设备,应用场景覆盖 IT(Information Technology)、CT(Communication Technology)和 OT(Operational Technology),实现统一操作系统支持多设备,应用一次开发覆盖全场景。


自 2019 年 12 月 31 日 openEuler 成立以来,华为以及欧拉社区始终没有忘记在核心技术和社区基础能力两方面持续投入,在 openEuler 21.09 创新版中也是如此。



由于不同芯片架构对内存模型以及锁原语的定义略有差异,如果这些差异不能在操作系统中有效解耦,就意味着上层应用在不同架构间移植时会出现很多问题。目前,针对锁和内存模型的形式化的验证研究,已经能够证明同步的并发原语在不同数据结构的正确性,这一点对于多样性计算来说极为关键。

同样以多样性算力出发,对于多任务共享虚拟内存池,已实现了跨进程零拷贝;UADK 加速器框架也已经能为加速器开发提供统一接口。


其次,RISC-V 被认为是继 X86 架构和 ARM 架构之后第三个主流架构,毕昇 JDK 作为一个高性能、可用于生产环境的 OpenJDK 发行版,目前已经实现了 RISV-V 架构下的 JIT。


在虚拟化方面,openEuler 社区首发同时支持轻量虚机容器和标准虚拟机,初步统一了虚机容器生态。

除次以外,对于一个操作系统开源社区而言,如何才能长期、有效地构建操作系统?这一次,openEuler 21.09 在社区基础能力上带来了五大突破:


  • 社区内实现完整的净室构建、网络隔离:如果没有把构建环境隔离,则有可能在构建过程中被注入不安全的网络组件。目前,openEuler 在构建过程中用到的组件都源自可控、可管理的内容网络,能够保障开发者交付的版本与社区开源的代码是一一对应的;

  • 基础构建支持边缘和嵌入式版本:发布面向边缘计算场景的版本 openEuler 21.09 Edge,集成 KubeEdge+ 边云协同框架,具备边云应用统一管理和发放等基础能力;发布面向嵌入式领域的版本 openEuler 21.09 Embedded,镜像大小 <5M,启动时间 <5S;

  • 社区门禁引入证书检查和代码片段检查;

  • 加速镜像站点建设,新增镜像站点 10+。


当前,已经在多样性算力和多样性场景上有了全面、长足的发展:在多样性算力上,不仅包含 X86、ARM 以及 RISC-V 的支持,SW 以及 LoongArch 架构也在社区内有了初步的开发;在多样化硬件方面,覆盖了虚拟机、服务器、小型开发版以及 DPU;此外,社区针对不同场景做了操作系统的延伸版本,包括面向云的 NestOS、KubeOS,面向边缘的 OSWare、openEuler Edge 以及面向工业控制领域的 GearOS、openEuler Embedded。


openEuler 21.09 创新版本发布后,我们不难看出 openEuler 在根技术持续投入的决心,正如胡欣蔚在演讲中提到的那样:“要想成为中国基础设施的根基,openEuler 需要先把自身的根基打牢、打扎实。

社区如何为全场景提供支持?


由于“性能、可靠、安全、扩展、确定”是以上复杂场景对于技术的归一诉求,组件原子化、构建服务化、协同套件化则是 openEuler 社区给出的答案,基于这三方面的能力,openEuler 社区可以为云、边、嵌入式提供支持。


组件原子化:虽然在过去两年中,openEuler 是按照一定节奏来发布版本,但对于自定义行业来说,他们还希望有更快的演进速度,这意味着 openEuler 要支持原子化特性单独发布、按需集成。另外,为了满足不同行业的应用诉求,还需要用多个内核 + 原子化服务,支持不同场景做灵活地组合应用。


构建服务化:为了让各种操作系统能够共享统一的平台机线,使得业务迁移没有障碍。openEuler 社区提供了构建服务化的能力,其中包括统一的构建数据表达、灵活地构建编程语言、灵活的本地执行引擎以及大规模分布式执行引擎。


协同套件化:为了实现对存储设备统一管理,让任务在多样性算力间快速流动,openEuler 社区提供了基于一套协同化套件,让应用在使用协同能力时变得更方便。

下一步怎么走?


一般来说,可以将数据链路分为设备层、边缘层、企业层以及产业层,openEuler 21.09 创新版本问世以后,数据孤岛被打破,从而实现了从数据流到决策流的理想闭环,让企业在数字化、信息化的发展浪潮中实现了快速的增长。


openEuler 21.09 发布以后,引发了行业内的高度关注,这让我们不禁对欧拉在 2022 年的发展方向产生了好奇。众所周知,openEuler 每年都会在 3 月和 9 月发布两个新版本,胡欣蔚大致为我们介绍了两个方面:


一方面,由于嵌入式操作系统与服务系统的构建方式有很大不同,之前,openEuler 能够编译出一个面向服务器的版本,但现在利用同样的流程却无法编译出面向嵌入式的版本。在 2022 年,openEuler 将会在构建系统方面做调整,让其在面向不同场景时可以用一套代码进行构建。同时,这也将成为技术委员会在明年重点发力的方向。


另一方面,在当前的服务器发展趋势中,单个节点的内存已经越来越不足以支撑业务发展的需要,现有计算架构的瓶颈越发凸显。在 openEuler 后续版本中将推出分布式存储的特性,分布式内存套件是集群分布式应用加速平台,针对大数据、HPC、AI、分布式存储、数据库、云与虚拟化等分布式应用场景,通过内存数据处理、近数计算等关键技术实现应用性能倍数级提升。分布式内存套件在多样化算力和端边云协同场景也可以实现应用的加速。

写在最后


在 openEuler Summit 2021 中,胡欣蔚引用了庄子的一句话作为演讲结束语:“其分也,成也,其成也,毁也”。细究这句话,其实与当前操作系统领域的现状如出一辙。最开始,不同操作系统在不同领域中多样化发展,但在时代发展的过程中,各自为营的操作系统正在成为企业进一步发展的阻力。


我们有理由相信,凝聚了 869 名贡献者力量的 openEuler21.09,仅仅只是一个开始,构建全场景也并不会是华为一家的工作。不远的将来,随着越来越多生态伙伴的加入,横亘在企业发展道路中的这股阻力终将被打破。


2021-11-17 15:244330

评论 1 条评论

发布
用户头像
打破信息孤岛,这是一个漫长的过程啊
2021-11-20 17:04
回复
没有更多了
发现更多内容

领导发表的报告,你真的读懂了吗?

罗小龙

工作经验

LeetCode152-乘积最大子数组-medium

书旅

LeetCode 动态规划

MySQL下的DB Link

Simon

MySQL

Apache Pulsar 在 BIGO 的性能调优实战(上)

Apache Pulsar

学习笔记2

Qx

学习

常用SQL语句分享

Simon

MySQL sql

云上攻击太多怎么办?不妨试试这些工具

华为云开发者联盟

黑客 云服务 数据安全 华为云 企业上云

图解JavaScript——进阶篇(执行上下文、变量对象、作用域、作用域链、闭包、this、原型及原型链、事件循环等一把梭)

执鸢者

Java 大前端 函数执行 事件循环

LeetCode题解:11. 盛最多水的容器,while循环双指针,JavaScript,详细注释

Lee Chen

大前端 LeetCode

疫情按下快进键,电商抢占市场红利需可靠的助力

华为云开发者联盟

高并发 电商 华为云 流量 云服务器

力扣题 - 29 解析大佬题解

Geek_663541

Java算法

不说再见

太以

疫情 毕业季 遗憾 大学

MySQL容器化详细教程

Simon

MySQL Docker 容器

Docker 架构及工作原理

哈喽沃德先生

Docker 容器 微服务

我与游戏相伴【自我访谈】

叶阳夏烟

系列 游戏 游戏观 访谈录

学习源码的第八个月,我成了Spring的开源贡献者

程序员DMZ

spring 开源

GrowingIO 数据采集 iOS SDK 测试实践

GrowingIO技术专栏

ios 数据采集 sdk

不完满的选择,要不要放弃

zhoo299

随笔杂谈

糖果不需要意义

zhoo299

随笔杂谈 电影

Docker入门与简单使用

Simon

Docker Linux

带着面试题学习红黑树操作原理,解析什么时候染色、怎么进行旋转、与2-3树有什么关联

小傅哥

Java 数据结构 小傅哥 红黑树 2-3树

ARTS打卡第一周(200511-200517)

老胡爱分享

ARTS 打卡计划 ARTS活动

[High Performance TIDB] Leeson 01:TIDB整体架构---作业

远鹏

高性能 #TiDB

Docker从入门到放弃---基础篇

书旅

Docker 容器

SecureBoost算法

soolaugust

学习 同态加密 secureboost

CSS属性整理

kidd

Flink任务执行-3

小知识点

大数据 flink

MySQL中几种常见的日志

Simon

MySQL 日志

CDN百科11 | 担心纸质病例被洪水淹没?ECS+CDN+OSS如何助力医疗上云

阿里云Edge Plus

CDN 存储 云服务器

TypeScript 设计模式之发布-订阅模式

Geek_z9ygea

typescript 大前端 设计模式

安全系列之——RSA的公钥私钥有多少人能分的清楚?RSA的签名验签与加密解密如何使用公私钥?

诸葛小猿

加密解密 非对称加密 rsa 签名验签

当操作系统告别了“碎片化”,会是种怎样的体验?_5G/IoT_郑思宇_InfoQ精选文章