当前位置:网站首页>Open source embedded sig in the openeuler community. Let's talk about its multi OS hybrid deployment framework
Open source embedded sig in the openeuler community. Let's talk about its multi OS hybrid deployment framework
2022-07-24 03:00:00 【Euler open source community】
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
If you are interested in embedded applications , Welcome to your attention openEuler Embedded&Yocto SIG , Discuss Embedded and Yocto And other related technologies . You can 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/
边栏推荐
猜你喜欢

Audio processing based on time-frequency diagram matlab

An introductory example of structure and combinatorial ideas in go language

Composition API (in setup) watch usage details

Example of producer consumer code implemented by the destructor framework without lock

ssm的求职招聘系统兼职应聘求职

Interpretation of steam education with the deepening of educational reform
![SSM based blog system [with background management]](/img/6b/6a488f5d6926de07c8b1b365362ff6.png)
SSM based blog system [with background management]

Acwing 4498. pointer (DFS)
![js传参时传入 string有数据;传入 number时没有数据;2[0]是对的!number类型数据可以取下标](/img/4e/3d0c25d9579b6d5c00473048dbbd83.png)
js传参时传入 string有数据;传入 number时没有数据;2[0]是对的!number类型数据可以取下标

SkyWalking分布式系统应用程序性能监控工具-上
随机推荐
动态规划-01背包问题
Analyze the overall planning of steam and maker education classroom
Programmers can't JVM? Ashes Engineer: all waiting to be eliminated! This is a must skill!
Ugui source code analysis - maskablegraphic
kettle
C language exercises
AcWing 4499. 画圆 (相似三角形)
Go IO operation - file write
Is it safe to open an account for Xiaobai stock? Can I apply online?
CMT registration - Google Scholar ID, semantic scholar ID, and DBLP ID
开源量子开发框架 Cirq
String.split() the most detailed source code interpretation and precautions
The function of SIP account - tell you what is SIP line
Detailed vector
SIGIR‘22 推荐系统论文之多样性篇
compostion-api(setup中) watch使用细节
Liveqing live broadcast on demand streaming media OBS streaming live broadcast how to obtain interface verification token video verification streamtoken and configure token validity
Some properties of differential array operation
攻防世界WEB练习区(backup、cookie、disabled_button)
攻防世界WEB练习区(webshell、command_execution、simple_js)