当前位置:网站首页>Embedded sig | multi OS hybrid deployment framework
Embedded sig | multi OS hybrid deployment framework
2022-06-30 12:06:00 【openEuler】
background : Hybrid critical systems
In an embedded scenario , although Linux It has been widely used , But it doesn't cover all the requirements , For example, high real time 、 Highly reliable 、 High security occasions . These occasions are often used by real-time operating systems . Some application scenarios require Linux Management ability 、 Rich ecology needs high real-time of real-time operating system 、 Highly reliable 、 High security , Then a typical design is to run on a high-performance processor Linux Responsible for rich functions , A microcontroller / DSP / The real-time processor runs the real-time operating system and is responsible for real-time control or signal processing , Between the two I/O、 Network or off chip bus . The problem with this approach is , Two systems are required for hardware 、 The degree of integration is not high , Communication constraints and off chip physical mechanisms such as speed 、 Delay, etc , Software Linux And real-time operating system , In terms of flexibility 、 There is room for improvement in maintainability .
Benefit from the rapid development of hardware technology , The hardware capability of embedded system is becoming more and more powerful , For example, the single core capability has been continuously improved 、 Single core to multi-core 、 The evolution of heterogeneous multicore and even multicore , Virtualization technology and trusted execution environment (TEE) Development and application of technology , In the future, advanced packaging technology will bring a higher degree of integration , So that in a system on chip (SoC) Deploy multiple OS Have a solid physical foundation .
meanwhile , Driven by application requirements , Such as the Internet of things 、 Intelligent 、 Functional security and information security, etc , The whole embedded software system is becoming more and more complex , All by a single OS The challenge of carrying all the functions is getting bigger and bigger . One solution is that different systems are responsible for the functions they are good at , Such as Windows Of UI、Linux Network communication and management 、 High real-time and high reliability of real-time operating system , And easy to develop 、 Deploy 、 Expand , The implementation can take the form of a container 、 Virtualization, etc .
In the face of the above hardware and application changes , Combined with its own original characteristics , One of the directions of embedded system evolution in the future is 「 Hybrid critical systems (MCS,Mixed Criticality System)」, This can be seen from a typical embedded system —— A glimpse of the recent development trend of automotive electronics .
「 chart 1」 openEuler Embedded General architecture of hybrid critical systems in
from openEuler Embedded The angle of , The general architecture of the hybrid critical system is shown in Figure 1 Shown , The hardware is a system on chip with homogeneous or heterogeneous multi-core , From the perspective of application, multiple... Will be deployed at the same time OS / Runtime , for example Linux Responsible for system management and service 、1 A real-time operating system is responsible for real-time control 、1 A real-time operating system is responsible for system reliability 、1 A bare metal runtime runs a dedicated algorithm , The functions of the whole system are determined by each OS / Runtime collaboration . In the middle of the 「 Hybrid deployment framework 」 and 「 Embedded virtualization 」 Is a specific support technology . Key (Criticality) In a narrow sense, it mainly refers to the functional safety level , Refer to the universal functional safety standard IEC-61508,Linux You can achieve SIL1 or SIL2 Level , The real-time operating system can reach the highest level SIL3; In broad sense , Criticality can be extended to real-time levels 、 Power consumption level 、 Information security level and other objectives .
In such a system , The following problems need to be solved :
「 Efficiently mix deployment issues 」: How to efficiently achieve multiple OS Collaborative development 、 Integrated build 、 Independent deployment 、 Independent upgrade . 「 Efficient communication and collaboration issues 」: The overall function of the system is completed by each domain , Therefore, how to achieve high efficiency between different domains 、 Scalable 、 real time 、 Secure communication . 「 Effectively isolate and protect problems 」: How to effectively implement strong isolation and protection between multiple domains , So that they do not affect each other when the fault is found , And smaller trusted bases (Trust Compute Base). 「 Efficient resource sharing and scheduling 」: How to satisfy different objective constraints ( real time 、 Functional safety 、 performance 、 Power waste ), Manage scheduling resources efficiently , So as to improve the utilization of hardware resources .
For the above questions ,openEuler Embedded Our current thinking is 「 Hybrid critical systems = Deploy + Isolation + Dispatch 」, That is to say, we should first realize multiple OS A hybrid deployment of , More OS Isolation and protection between , Finally, the resource utilization is improved by hybrid critical scheduling , It can be mapped to 「 Hybrid deployment framework 」 and 「 Embedded virtualization 」. The hybrid deployment framework solves 「 Efficiently mix deployment issues 」 and 「 Efficient communication and collaboration issues 」, Embedded virtualization solutions 「 Effectively isolate and protect problems 」 and 「 Efficient resource sharing and scheduling 」.
many OS Hybrid deployment framework
openEuler Embedded Zhongduo OS The architecture of the hybrid deployment framework is shown below , The open source framework is introduced OpenAMP[1] As the foundation , And further innovate in combination with their own needs .
「 chart 2」 many OS Infrastructure of hybrid deployment framework
In the above Architecture ,libmetal It provides a unified abstraction by shielding the details of different system implementations ,virtio queue Equivalent to... In the network protocol MAC Layer provides an efficient underlying communication mechanism ,rpmsg It is equivalent to that the transport layer in the network protocol provides endpoint based services (endpoint) And the passage (channel) Abstract communication mechanism ,remoteproc Provide lifecycle management functions including initialization 、 start-up 、 Pause 、 End, etc .
stay openEuler Embedded 22.03 in , Integrated OpenAMP Related support , And with openEuler Of SIG Zephyr[2] Cooperation has achieved openEuler Embedded With real-time operating systems Zephyr[3] stay QEMU Hybrid deployment on the platform , For details, please refer to
many OS Mixed deployment Demo[4]
On this basis ,openEuler Embedded The hybrid deployment framework will continue to evolve , Including docking with more real-time operating systems , Such as domestic open source real-time operating system RT-Thread[5], The implementation is as shown in the figure 3 Many are shown OS Service deployment and timely introduction of embedded elastic base based on virtualization technology .
「 chart 3」 many OS Service deployment architecture
In the above many OS Service deployment architecture ,openEuler Embedded It's the center. , Mainly for others OS Provide management 、 The Internet 、 File system and other general services , other OS Can focus on what they are good at , And pass shell、log and debug Isochannel and Linux Rich and powerful docking of large dimension measuring bodies to simplify the development work .
Pay attention to our
Embedded Already in openEuler Community open source . A series of topics will be shared , If you are right about Embedded The construction of , Application is interested in , Welcome to watch and join .
Project address :https://gitee.com/openeuler/yocto-meta-openeuler
Welcome to star、fork, Get involved in community development , Contribute more .
Enter the communication group
If you are interested in embedded applications , Welcome to join openEuler Embedded&Yocto SIG Technology exchange group , Discuss Embedded and Yocto And other related technologies . Please scan the QR code below to join the group chat .
quote
[1]https://www.openampproject.org/
[2]https://gitee.com/openeuler/community/tree/master/sig/sig-Zephyr
[3]https://www.zephyrproject.org/
[4]https://gitee.com/openeuler/yocto-embedded-tools/tree/openEuler-22.03-LTS/mcs
[5]https://www.rt-thread.org/
This article is from WeChat official account. - openEuler(openEulercommunity).
If there is any infringement , Please contact the [email protected] Delete .
Participation of this paper “OSC Source creation plan ”, You are welcome to join us , share .
边栏推荐
- Flutter 从零开始 006 单选开关和复选框
- Customize an annotation to get a link to the database
- DMA controller 8237a
- wallys/3×3 MIMO 802.11ac Mini PCIe Wi-Fi Module, QCA9880, 2,4GHz / 5GHzDesigned for Enterprise
- 如何使用插件化机制优雅的封装你的请求hook
- Shell first command result is transferred to the second command delete
- Embedded SIG | 多 OS 混合部署框架
- 8253计数器介绍
- R language ggplot2 visualization: use ggplot2 to visualize the scatter diagram and use scale_ x_ The log10 function configures the value range of the X axis to be logarithmic coordinates
- In depth analysis of Apache bookkeeper series: Part 4 - back pressure
猜你喜欢
会议预告 | 华为 2012 实验室全球软件技术峰会-欧洲分会场
If it is not listed again, Kuangshi technology will not be able to endure
Analysis of KOA - onion model
koa - 洋葱模型浅析
智慧法院新征程,无纸化办公,护航智慧法院绿色庭审
led背光板的作用是什麼呢?
A quietly rising domestic software, low-key and powerful!
Speech recognition - Fundamentals (I): introduction [speech to text]
限时预约|6 月 Apache Pulsar 中文开发者与用户组会议
聊聊怎么做硬件兼容性检测,快速迁移到openEuler?
随机推荐
R语言ggplot2可视化:使用ggplot2可视化散点图、在geom_point参数中设置alpha参数指定数据点的透明度级别(points transparent、从0到1)
beego开发博客系统学习(二)
串行通信接口8250
学习redis实现分布式锁—–自己的一个理解
Shell first command result is transferred to the second command delete
Redis - SDS simple dynamic string
用于生成学习任务的量子神经网络2022最新综述
Multiparty cardinality testing for threshold private set-2021: Interpretation
A high precision positioning approach for category support components with multiscale difference reading notes
Who still remembers "classmate Zhang"?
R language ggplot2 visualization: use ggplot2 to visualize the scatter diagram and use scale_ The size function configures the measurement adjustment range of the size of the data point
移除无效的括号[用数组模拟栈]
Multiparty cardinality testing for threshold private set-2021: Interpretation
【云原生 | Kubernetes篇】深入了解Deployment(八)
Go 语言入门很简单:Go 处理 XML 文件
HMS core audio editing service 3D audio technology helps create an immersive auditory feast
基于视觉的机器人抓取:从物体定位、物体姿态估计到平行抓取器抓取估计
STM32 移植 RT-Thread 标准版的 FinSH 组件
论文解读(AGC)《Attributed Graph Clustering via Adaptive Graph Convolution》
AUTOCAD——LEN命令