国产开源OS调研浅析:龙蜥,鸿蒙和欧拉
sixwalter Lv6

国产开源OS调研浅析:龙蜥,鸿蒙和欧拉

在调研过程中依据开源操作系统的用户数量以及生态的丰富和完善性,选用了龙蜥,鸿蒙和欧拉作为调研目标

龙蜥(open Anolis)

支持多架构的安全高性能操作系统

系统框架

AnolisOS-8.8

  • L0层软件(内核层):
    • 内核版本 ANCK-5.10
  • L1层软件(核心层):
    • openssl 1.1.1 支持国密
  • L2层软件(系统层):
    • 系统工具更新(crash ,bison
    • 系统库更新(glib2 libtirpcrdma-coreIntel QATIntel SPR 特性
  • L3层软件(应用层):
    • 新增软件包 ancert
    • 新增软件包 ssar
    • 新增软件包 sysom
    • 新增软件包 sysak

龙蜥社区

  • 开源影响力:有超过 280 家合作伙伴参与共建开源社区,整体装机量达500多万,100余款企业产品完成与龙蜥操作系统的适配。
  • 运作模式:已成立 50+ 个 SIG 工作组,围绕芯片、内核、编译器、安全、虚拟化及云原生等操作系统核心领域进行技术创新

技术特性

image-20230414210042762
  • CentOS 迁移

    经典产品特性迁移

  • 云原生场景

    PaaS,CaaS 场景下的相关组件和特性

  • 一云多芯

    对多处理器芯片及多芯片平台相关的指令集,芯片的支持

  • 运维与性能

    降本增效相关的特性,包括系统诊断、跟踪、监控,性能优化

  • 软硬件协同

    RASD,各种硬件 offload,bypass 内核等以释放硬件能力为目标的技术特性

  • 安全可信

    包括但不限于提升系统安全可信,数据安全可信的相关产品特性

  • 编程语言

    编译器相关的运行时和工具和特性

  • 社区基础设施

    用于支撑操作系统产品的开发协同,研发流程,效能提升,版本质量相关的平台和工具。

鸿蒙(open Harmony)

面向全场景智能终端设备的操作系统平台

系统框架

image-20230414202557233
  • 系统功能按照“系统 > 子系统 > 组件”逐级展开

  • 采用分层设计:

    • 内核层:

      • 内核子系统:采用多内核(Linux内核或者LiteOS)设计,支持选用适合的OS内核。内核抽象层通过屏蔽多内核差异,对上层提供基础的内核能力:进程/线程管理、内存管理、文件系统、网络管理和外设管理等
      • 驱动子系统:驱动框架(HDF)提供统一外设访问能力和驱动开发、管理框架
    • 系统服务层

      OpenHarmony的核心能力集合,通过框架层对应用程序提供服务。

      • 系统基本能力子系统集:为分布式应用在多设备上的运行、调度、迁移等操作提供了基础能力。由分布式软总线、分布式数据管理、分布式任务调度、公共基础库、多模输入、图形、安全、AI等子系统组成。
      • 基础软件服务子系统集:提供公共的、通用的软件服务,由事件通知、电话、多媒体、DFX(Design For X) 等子系统组成。
      • 增强软件服务子系统集:提供针对不同设备的、差异化的能力增强型软件服务。由智慧屏专有业务、穿戴专有业务、IoT专有业务等子系统组成。
    • 框架层

      框架层为应用开发提供了C/C++/JS等多语言的用户程序框架和Ability框架,适用于JS语言的ArkUI框架,以及各种软硬件服务对外开放的多语言框架API。根据系统的组件化裁剪程度,设备支持的API也会有所不同。

    • 应用层

      应用层包括系统应用第三方非系统应用。应用由一个或多个FA(Feature Ability)或PA(Particle Ability)组成。其中,FA有UI界面,提供与用户交互的能力;而PA无UI界面,提供后台运行任务的能力以及统一的数据访问抽象。基于FA/PA开发的应用,能够实现特定的业务功能支持跨设备调度与分发,为用户提供一致、高效的应用体验。

系统类型

  • 轻量系统

    面向Arm Cortex-M、RISC-V 32位的设备,硬件资源极其有限。支撑的产品如智能家居领域的连接类模组、传感器设备、穿戴类设备等。

  • 小型系统

    面向应用处理器例如Arm Cortex-A的设备,支持的设备最小内存为1Mi。可支撑的产品如智能家居领域的IP Camera、电子猫眼、路由器以及智慧出行域的行车记录仪等。

  • 标准系统

    面向应用处理器例如Arm Cortex-A的设备,支持的设备最小内存为128MiB。可支撑的产品如高端的冰箱显示屏。

欧拉(open Euler)

面向数字基础设施的操作系统

image-20230414200910670
  • 支持服务器、云计算、边缘计算、嵌入式等应用场景

  • 每两年推出一个 LTS 版本

  • 将社区验证成熟的特性逐步回合到发行版中

  • 已支持 x86、ARM、SW64、RISC-V、LoongArch 多处理器架构

  • 新增发布面向边缘计算的版本 openEuler Edge、面向嵌入式的版本 openEuler Embedded

系统框架

  • 统一基于 Linux Kernel 5.10 构建
  • 文件系统:采用软更新、目录双视图
  • 内存分级扩展:支持用户态swap
  • 创新 CPU 调度算法
  • 创新业务优先级 OOM 内存回收算法

平台框架

image-20230414201654429

硬件支持

image-20230414201845892

总结

欧拉操作系统适用场景比较广泛:包括大数据,云计算,人工智能等。鸿蒙更加偏向智能终端设备如穿戴类设备,传感器设备,冰箱显示屏等。龙蜥操作系统兼容CentOS生态,支持多计算架构,提供稳定、高性能、安全、可靠的操作系统支持。

  • Post title:国产开源OS调研浅析:龙蜥,鸿蒙和欧拉
  • Post author:sixwalter
  • Create time:2023-08-05 11:14:26
  • Post link:https://coelien.github.io/2023/08/05/course-learning/MIT6.S081/research1/
  • Copyright Notice:All articles in this blog are licensed under BY-NC-SA unless stating additionally.
 Comments