RT-Thread熊谱翔:开源操作系统之异构计算

418 阅读3分钟

2022 年开源操作系统领域,发生了两件大事:CentOS 停服,Ubuntu 断供俄罗斯。前者使得国产操作系统厂商站出来承接 CentOS 生态延续与技术兜底的需求,后者引发国内开发者对开源操作系统供应链安全的担忧,发起建立自主开源根社区。借此机会,国产操作系统领域开始有了更深、更广的尝试。回到操作系统本身,实时异构、多样性算力、全场景支持、云原生,什么才是下一代操作系统的刚需?

我们邀请了多名国内开源操作系统领域的专家,为各位开发者解读开源操作系统的发展和流行趋势。

以下内容选自《2022中国开源开发者报告:前沿开源技术领域解读》

image.png

随着摩尔定律的放缓,近些年来异构计算备受瞩目,最典型的莫过于苹果的 M1/M2 处理器。在 M1/M2 之前,处理器主要以 CPU 作为计算中心,现在则更多地以 CPU + XPU(GPU,NPU,MCU,DSP等等)协同的方式工作,以解决一些专有细分领域的问题。比如在 AI 计算领域,卷积运算是最常用的方法,并且是以大规模并行机制进行。如果采用传统的 CPU 计算方式,虽然可以选择单核或有限核的高主频方式,但其性能依然不足以和数百甚至上千的并行单元相比拟,而通过专用架构单元的方式,可以做到对一些场景的极致追求。Chiplet 架构的出现,也势必让这种架构成为更大的可能。

在 CPU + XPU 组合中,XPU 更面向专用目的,XPU 上的软件系统也不需要一套完全通用性的操作系统。在一些实时控制的场合,它更需要一个精简、高效的 RTOS 系统。例如 CEVA 公司推出的 DSP 架构就可以通过硬件和软件密切配合的方式达到极致的实时性。因为 CEVA 的 DSP 架构是本地设计的,以支持 RTOS 功能和超快上下文切换,用 CEVA DSP 和 RT-Thread RTOS 实现的物联网设备可以处理不同资源之间的许多通信任务,而不会为此中断 RTOS。

在国内,一些大家熟悉的芯片厂商也在向这个方向发展:瑞芯微 RK3568 芯片上的多核 ARM A55 处理器 ,采用了 Linux + RT-Thread 异构方案;全志 V853 芯片,采用了 ARM Linux + RISC-V Melis 方案,其中 Melis 操作系统内核基于 RT-Thread。

异构系统间的交互很是关键,系统之间并不是完全独立的,而是相互无缝融合,甚至是一个分布式系统。当考虑到 Linux 这样一个通用系统和 RTOS 配合时,一套基于 virtio 方式的消息框架 rpmsg(Remote Processor Messaging)也随之流行起来。rpmsg 定义了异构多核处理系统中核与核之间进行通信时所使用的标准二进制接口。TI 和 Google 等公司早在 2011 的时候发起了 rpmsg,之后逐步演变成 Linux 上一套标准的异构系统间的通讯标准。

2021 年,RT-Thread 也和中科院软件所一起合作,推进 RISC-V 上的 OpenAMP、rpmsg 工作,希望推动在 RISC-V 芯片架构上系列的基础软件工作。在这方面,RT-Thread 也在和国内开放的 OpenEuler 社区一起紧密合作,在 2022 年底的时候提供更好的异构开源系统方案给到产业界,能够更好地用于工控、电力、机器人、能源等工业相关行业。


想要了解更多前沿开源技术领域解读,请访问《2022中国开源开发者报告》