0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

多OS混合部署框架的基础架构

openEuler 来源:openEuler 作者:openEuler 2022-07-07 11:25 次阅读

背景:混合关键性系统

嵌入式场景中,虽然 Linux 已经得到了广泛应用,但并不能覆盖所有需求,例如高实时、高可靠、高安全的场合。这些场合往往是实时操作系统的用武之地。有些应用场景需要 Linux 的管理能力、丰富的生态又需要实时操作系统的高实时、高可靠、高安全,那么一种典型的设计是采用一颗性能较强的处理器运行 Linux 负责富功能,一颗微控制器/ DSP /实时处理器运行实时操作系统负责实时控制或者信号处理,两者之间通过 I/O、网络或片外总线的形式通信。这种方式存在的问题是,硬件上需要两套系统、集成度不高,通信受限与片外物理机制的限制如速度、时延等,软件上 Linux 和实时操作系统两者之间是割裂的,在灵活性上、可维护性上存在改进空间。

受益于硬件技术的快速发展,嵌入式系统的硬件能力越来越强大,如单核能力不断提升、单核到多核、异构多核乃至众核的演进,虚拟化技术和可信执行环境(TEE)技术的发展和应用,未来先进封装技术会带来更高的集成度等等,使得在一个片上系统中(SoC)部署多个 OS 具备了坚实的物理基础。

同时,受应用需求的推动,如物联网化、智能化、功能安全与信息安全等等,整个嵌入式软件系统也越发复杂,全部由单一 OS 承载所有功能所面临的挑战越来越大。解决方式之一就是不同系统负责各自所擅长的功能,如 Windows 的 UI、Linux 的网络通信与管理、实时操作系统的高实时与高可靠等,而且还要易于开发、部署、扩展,实现的形式可以是容器、虚拟化等。

面对上述硬件和应用的变化,结合自身原有的特点,嵌入式系统未来演进的方向之一就是「混合关键性系统(MCS,Mixed Criticality System)」, 这可以从典型的嵌入式系统——汽车电子的最近发展趋势略见一斑。

「图 1」 openEuler Embedded 中的混合关键性系统大致架构

9742b1ec-f6d4-11ec-ba43-dac502259ad0.png

从 openEuler Embedded 的角度,混合关键性系统的大致架构如图 1 所示,所面向的硬件是具有同构或异构多核的片上系统,从应用的角度看会同时部署多个 OS /运行时,例如 Linux 负责系统管理与服务、1 个实时操作系统负责实时控制、1 个实时操作系统负责系统可靠、1 个裸金属运行时运行专用算法,全系统的功能是由各个 OS /运行时协同完成。中间的「混合部署框架」和「嵌入式虚拟化」是具体的支撑技术。关键性(Criticality)狭义上主要是指功能安全等级,参考泛功能安全标准 IEC-61508,Linux 可以达到 SIL1 或 SIL2 级别,实时操作系统可以达到最高等级 SIL3;广义上,关键性可以扩展至实时等级、功耗等级、信息安全等级等目标。

在这样的系统中,需要解决如下几个问题:

「高效地混合部署问题」:如何高效地实现多 OS 协同开发、集成构建、独立部署、独立升级。

「高效地通信与协作问题」:系统的整体功能由各个域协同完成,因此如何高效地实现不同域之间高效、可扩展、实时、安全的通信。

「高效地隔离与保护问题」:如何高效地实现多个域之间的强隔离与保护,使得出故障时彼此不互相影响,以及较小的可信基(Trust Compute Base)。

「高效地资源共享与调度问题」:如何在满足不同目标约束下(实时、功能安全、性能、功耗),高效地管理调度资源,从而提升硬件资源利用率。

对于上述问题,openEuler Embedded 的当前思路是「混合关键性系统 = 部署 + 隔离 + 调度」,即首先实现多 OS 的混合部署,再实现多 OS 之间的隔离与保护,最后通过混合关键性调度提升资源利用率,具体可以映射到「混合部署框架」和「嵌入式虚拟化」。混合部署框架解决「高效地混合部署问题」和「高效地通信与协作问题」,嵌入式虚拟化解决「高效地隔离与保护问题」和「高效地资源共享与调度问题」。

多 OS 混合部署框架

openEuler Embedded 中多 OS 混合部署框架的架构图如下所示,引入了开源框架 OpenAMP[1]作为基础,并结合自身需要进一步创新。

「图 2」 多 OS 混合部署框架的基础架构

975a0996-f6d4-11ec-ba43-dac502259ad0.png

在上述架构中,libmetal 提供屏蔽了不同系统实现的细节提供了统一的抽象,virtio queue 相当于网络协议中的 MAC 层提供高效的底层通信机制,rpmsg 相当于网络协议中的传输层提供了基于端点(endpoint)与通道(channel)抽象的通信机制,remoteproc 提供生命周期管理功能包括初始化、启动、暂停、结束等。

在 openEuler Embedded 22.03 中,集成了 OpenAMP 相关支持,并与 openEuler 的 SIG Zephyr[2] 合作实现了 openEuler Embedded 与实时操作系统 Zephyr[3] 在 QEMU 平台上的混合部署,具体可以参考

多 OS 混合部署 Demo[4]

在此基础上,openEuler Embedded 的混合部署框架还会继续演进,包括对接更多的实时操作系统,如国产开源实时操作系统 RT-Thread[5],实现如图 3 所示的多 OS 服务化部署并适时引入基于虚拟化技术的嵌入式弹性底座。

「图 3」 多 OS 服务化部署架构

97664080-f6d4-11ec-ba43-dac502259ad0.png

在上述多 OS 服务化部署架构中,openEuler Embedded 是中心,主要对其他 OS 提供管理、网络、文件系统等通用服务,其他 OS 可以专注于其所擅长的领域,并通过 shell、log 和 debug 等通道与 Linux 丰富而强大维测体对接从而简化开发工作。

原文标题:Embedded SIG | 多 OS 混合部署框架

文章出处:【微信公众号:openEuler】欢迎添加关注!文章转载请注明出处。

审核编辑:彭静
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19188

    浏览量

    229280
  • 嵌入式
    +关注

    关注

    5076

    文章

    19044

    浏览量

    303767
  • 硬件
    +关注

    关注

    11

    文章

    3273

    浏览量

    66144
  • openEuler
    +关注

    关注

    2

    文章

    310

    浏览量

    5838

原文标题:Embedded SIG | 多 OS 混合部署框架

文章出处:【微信号:openEulercommunity,微信公众号:openEuler】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    详解MySQL实例部署

    详解MySQL实例部署
    的头像 发表于 11-11 11:10 184次阅读

    混合部署k8s集群方法有哪些?

    混合部署k8s集群方法是首先需在本地与公有云分别建立K8s集群,并确保网络连接。接着,配置kubeconfig文件连接两集群,并安装云服务插件以实现资源互通。然后,编写Deployment文件部署应用,并使用kubectl命令
    的头像 发表于 11-07 09:37 118次阅读

    混合部署 | 在迅为RK3568上同时部署RT-Thread和Linux系统

    和安全性的同时,灵活处理复杂的任务场景。 混合部署 在一般情况下,iTOP-RK3568 的四个 Cortex-A55 核心通常运行 Linux 系统,这种架构称为对称多处理(SMP)。而 AMP
    发表于 11-01 10:31

    混合部署 | 在迅为RK3568上同时部署RT-Thread和Linux系统

    和安全性的同时,灵活处理复杂的任务场景。 混合部署 在一般情况下,iTOP-RK3568 的四个 Cortex-A55 核心通常运行 Linux系统,这种架构称为对称多处理(SMP)。而 AMP
    发表于 09-18 10:54

    混合部署 | 在RK3568上同时部署RT-Thread和Linux系统-迅为电子

    混合部署 | 在RK3568上同时部署RT-Thread和Linux系统-迅为电子
    的头像 发表于 09-06 15:32 373次阅读
    <b class='flag-5'>混合</b><b class='flag-5'>部署</b> | 在RK3568上同时<b class='flag-5'>部署</b>RT-Thread和Linux系统-迅为电子

    英伟达推出Flextron AI框架:赋能灵活高效的AI模型部署

    在人工智能与机器学习领域,随着技术的不断演进,模型的高效部署与适应性成为研究的新热点。近日,英伟达与德克萨斯大学奥斯汀分校携手宣布了一项重大突破——推出了一种名为FLEXTRON的新型灵活模型架构及训练后优化框架,这一创新成果为
    的头像 发表于 07-18 15:22 2709次阅读

    蚂蚁集团发布首个开源金融场景智能体框架

    在第七届数字中国建设峰会上,蚂蚁集团宣布了一项引人注目的举措:正式开源其智能体框架agentUniverse。这一框架不仅是金融领域的首个开源智能体技术
    的头像 发表于 05-28 09:25 686次阅读

    小鹏汽车与大众汽车宣布签署E/E架构技术合作框架协议

    来源:Yole Group 中国智能电动汽车公司小鹏汽车与汽车制造商之一大众汽车宣布,小鹏汽车与大众汽车已签订关于电气/电子架构(“E/E 架构”)的技术合作框架协议。 小鹏汽车自主开发的E/E
    的头像 发表于 04-23 14:49 499次阅读
    小鹏汽车与大众汽车宣布签署E/E<b class='flag-5'>架构</b>技术合作<b class='flag-5'>框架</b>协议

    大众与小鹏签署电子电气架构技术战略合作框架协议

    小鹏汽车与大众汽车集团共同宣布签署了电子电气架构技术战略合作框架协议,为大众汽车在中国市场的电动车平台开发领先的电子电气架构,集成小鹏汽车最新一代基于中央计算和域控制器的架构
    发表于 04-22 10:45 395次阅读
    大众与小鹏签署电子电气<b class='flag-5'>架构</b>技术战略合作<b class='flag-5'>框架</b>协议

    RT-Thread混合部署Workshop北京站来啦!

    4月25日,下午我们将在北京举办RT-Thread混合部署线下workshop,在瑞芯微RK3568平台上实现同时运行RT-Thread和linux,本次workshop邀请到RT-Thread资深
    的头像 发表于 04-19 08:34 423次阅读
    RT-Thread<b class='flag-5'>混合</b><b class='flag-5'>部署</b>Workshop北京站来啦!

    如何把HPE RL300服务器引入x86-only的Web服务部署

    在上一篇《技术文章 | 架构部署:优势有哪些?》中,我们主要介绍了架构部署在能耗、占地空间和
    的头像 发表于 03-20 10:26 337次阅读
    如何把HPE RL300服务器引入x86-only的Web服务<b class='flag-5'>部署</b>?

    处理器架构部署的优势有哪些?

    Web 服务器、搜索引擎和内容管理系统等位于企业云基础设施前端的应用程序,是引入可扩展、高能效 arm64 架构的理想对象。
    发表于 03-15 14:39 407次阅读
    处理器<b class='flag-5'>多</b><b class='flag-5'>架构</b><b class='flag-5'>部署</b>的优势有哪些?

    AI推理框架软件ONNX Runtime正式支持龙架构

    近日,知名AI推理框架开源社区ONNX Runtime正式发布支持龙架构的版本1.17.0。
    的头像 发表于 03-12 12:23 550次阅读
    AI推理<b class='flag-5'>框架</b>软件ONNX Runtime正式支持龙<b class='flag-5'>架构</b>

    源2.0适配FastChat框架,企业快速本地化部署大模型对话平台

    北京2024年2月28日 /美通社/ -- 近日,浪潮信息Yuan2.0大模型与FastChat框架完成全面适配,推出"企业快速本地化部署大模型对话平台"方案。该方案主要面向金融、法律、教育等领域
    的头像 发表于 02-29 09:57 785次阅读
    源2.0适配FastChat<b class='flag-5'>框架</b>,企业快速本地化<b class='flag-5'>部署</b>大模型对话平台

    鸿蒙OS 技术架构

    HarmonyOS 整体遵从分层设计,从下向上依次为:内核层、系统服务层、框架层和应用层。系统功能按照“系统 > 子系统 > 功能/模块”逐级展开,在设备部署场景下,支持根据实际需求裁剪某些非必要
    的头像 发表于 01-25 16:58 723次阅读
    鸿蒙<b class='flag-5'>OS</b> 技术<b class='flag-5'>架构</b>