MultiOS 混合多系统平台

项目介绍


      在嵌入式产品升级维护过程中,经常遇到以前对实时性无要求的产品,需要提高实时性提升价值,产品维护工程师一般会十分痛苦,大量基于非实时操作系统的代码不想修改,但又想大幅度提高产品实时性,这样的问题有没有解决方法?现在,小编告诉你,不用再做任何艰难的选择了:翼辉信息推出 MultiOS 混合多系统平台可轻松应对这种挑战。

      MultiOS 可理解为非对称多处理(Asym-metrical Mulit-Processing)操作系统平台技术,AMP 的优点在于精细的任务分工,可灵活地适应不同情景。



功能简介


      以一款4核 ARM 来说,翼辉信息的 MultiOS 可提供多种不同搭配方式:

      主核使用 SylixOS,其他核可随意搭配任意开源操作系统。例如:Linux、Bare-metal(裸跑)、SylixOS、SylixOS Lite……你也可以使用SylixOS的双核 SMP + Linux 的双核 SMP;或者你对实时性有非常苛刻的需求,非裸跑不可,你可以使用 SylixOS + Bare-metal + Bare-metal + Bare-metal;又或者你想使用硬实时操作系统,又不想被多核间的耦合所干扰,也不想维护多种系统平台,使用 SylixOS + SylixOS + SylixOS + SylixOS 将是最好的选择……小编负责任的告诉你:这些情况“通通没有问题!”,混合多系统平台可以满足你任何形式的搭配。


核间通信

      核间通信一般可分为两类:控制与状态信息的通信;数据通信。前者一般不携带或仅携带少量的数据,往往有较高的实时性要求;后者则主要进行数据传递,通常追求较高的数据吞吐率但实时性要求一般不强。控制/状态通信与任务间的同步操作较为相似。这类通信适合由系统软件实现并提供编程接口;而数据通信则往往与具体应用关联较大(尤其是在数据结构上),需要量体裁衣。



      在 MultiOS 上,我们为应对各种通信要求,提供了丰富的核间通信接口,不需要再为异构系统通信所烦恼了。MultiOS 已支持或正在支持的通信方式包括:1.消息队列;2.虚拟网卡;3.LCM(消息订阅与分发);4.MiniORB;5.共享内存;

      未来:更多便捷的、创新的、高效的通信接口会为大家呈现。


多核间影响

      为解决AMP模式中多核间产生的不确定影响,MultiOS 为您提供以下优化功能,让核与核之间更加独立:


      1.独立重启
      MultiOS 提供独立重启功能,即每个核的重启不会影响到其他核的任务运行,不会造成任何抖动;


      2.Cache划分
      MultiOS 支持 Cache 划分,你可以任意划分每个核所使用 L2 Cache、L3 Cache 的范围;


      3.其他优化
      以往 AMP 模式下,尽管运行不同操作系统,在进行一些操作时(比如系统调用,进程启动,内存映射等情况)仍然会对其他核造成抖动。MultiOS 已针对此类问题进行优化操作。


      展现在你面前的更像几个独立的计算机,让你的实时应用更加稳定,安全。


快速启动

      MultiOS 可快速启动,例如 SylixOS + Bare-metal 模式下,Bare-metal 的启动速度可达到 100ms 内,SylixOS 可达到 300ms 内。你可以这样理解:当你想重启设备时,一眨眼的功夫,你的应用程序又重新运行了。


实际效果


目前 MultiOS 支持 ARM 与 x86 的多核处理器,后期将会适配更多架构供大家使用。

Zynq UltraScale + MPSoC ARM Cortex-A53 四核实际效果:

同时加载和运行 Linux 和 SylixOS:


以上效果图展示的是 Linux + SylixOS 的模式。


寄语


      未来,我们将会推出可视化的配置界面,用户仅需点击配置软件即可选择所需的操作系统搭配,选择所需的核间通信方案以及各种驱动需求的编程模板;

      你说你想要五彩斑斓的黑?想在一颗处理器上既要通用性也要实时性还要高可靠性……为应对大家对操作系统平台的各种合(bian)理(tai)需求,相信 MultiOS 一定会是您的不二选择。