Key Technologies and Development Trends of Industrial Real-Time Operating Systems

The article “Key Technologies and Development Trends of Industrial Real-Time Operating Systems” by Meng Yan, Li Mingshi, and Deng Changyi from the National Industrial Information Security Development Research Center was published in the 3rd issue of 2024 in “New Industrialization”. The full text is shared as follows:

Key Technologies and Development Trends of Industrial Real-Time Operating Systems

Research

Meng Yan, Li Mingshi, Deng Changyi

(National Industrial Information Security Development Research Center, Beijing 100040)

Industrial Real-Time Operating Systems (RTOS) play a critical role as the central nervous system in various industrial scenarios and are an important foundation for digital industry. Currently, the global market for industrial real-time operating systems is largely occupied by foreign manufacturers, who have provided a complete range of upstream and downstream software support around mainstream RTOS product kernels, and have conducted a large number of hardware bundling in embedded form, forming a stronghold. This article outlines the key technologies and development trends in the software system of industrial real-time operating systems, providing references for the accelerated development of domestic systems.

1. Overview of RTOS

RTOS is a real-time operating system aimed at industrial applications, widely used in key scenarios of industrial automation, military, electricity, new energy, and other industrial fields. It typically does not have high requirements for processor performance and has relatively limited resource needs, but has strict requirements for the real-time, parallelism, reliability, and power consumption of the operating system. The update cycle of its processor chips usually ranges from several years to decades. In industrial products or manufacturing processes, real-time operating systems usually serve as the “brain” of equipment or production systems in embedded form, significantly improving the intelligence of equipment and production processes, and meeting industrial production requirements for efficiency, reliability, real-time performance, and environmental sustainability. In practical applications, RTOS is not a single, closed software tool, but is widely connected and coordinated with hardware, protocols, application software, etc., forming an interconnected ecological network. Modern RTOS should focus on the new challenges brought by the development trends of ubiquitous perception, interconnection, and human-machine-object integration in the industrial Internet, such as how to achieve task optimization scheduling and arbitrary migration in cooperative environments at the cloud, edge, and terminal under conditions of embedded software-hardware coupling, resource constraints, hardware heterogeneity, multi-category or no operating system, and varying communication methods.

2. Current Development Status at Home and Abroad

With the advancement of national strategies such as “Industry 4.0” and smart manufacturing, in-depth research on real-time operating systems has increasingly attracted attention from research teams at home and abroad, achieving a large number of research results. However, from an overall perspective, research in the RTOS field in China is still in the development stage, and there are still many challenging tasks that need further exploration. The following elaborates and analyzes the current research status around the overall framework of RTOS and further sorts out the currently mainstream real-time operating system products globally.

(1) Related Research Work Currently, a large number of studies have been conducted domestically around the overall framework design of industrial operating system software, focusing on improving system security, reliability, and trustworthiness. To ensure the safety and reliability of the operating system kernel, the East China Normal University team has introduced formal methods into the verification of operating system kernels, proposing a universal automated verification framework for operating system kernels to assist in solving the safety and reliability issues of basic components in software systems. In response to the inefficiency of existing embedded operating systems based on MILS architecture in performing correct and safe migration after operational failures, the team from Xi’an Aviation Computing Technology Research Institute proposed a multi-level security domain dynamic management architecture for embedded operating systems, ensuring dynamic migration of tasks and functional reconstruction. The Zhejiang University team proposed a high-trust embedded operating system based on artificial intelligence, capable of achieving high trustworthiness, precision, and recall rates under varying numbers and categories of tasks.
(2) In addition, research on RTOS software frameworks has gradually deepened and closely integrated with typical scenarios in key industries. For example, the Nanjing University of Science and Technology team built an overall framework for a fire control system based on the SylixOS embedded real-time operating system, simulating the ballistic calculation and fire control hit process. Based on the analysis of the flight control software requirements for aircraft, the Beijing Aerospace Automatic Control Institute team proposed a multi-core distributed flight control software architecture based on the battle star embedded real-time operating system, improving the reliability and safety of flight control software. In response to the high-speed, high-real-time, and high-stability requirements of current phased array antenna control systems, the Xi’an Jiaotong University team designed a real-time control system based on Zynq-7000 and the RT-Thread operating system, ensuring the real-time performance and stability of system execution. In the fields of shipping and marine aviation, the team from China Shipbuilding Industry Corporation 713 Research Institute designed a system control software based on VxWorks, which achieved good control effects in terms of stability and speed; the Nanchang University team designed a general software architecture for ship operating systems based on embedded technology, achieving precise route control for ships in harsh marine environments.
(3) Major Products at Home and Abroad

1. Major Foreign Products Advanced technologies and mainstream products related to RTOS are dominated by countries such as the United States, the United Kingdom, and Germany, with high maturity and usability, widely used in core areas such as aerospace, shipping, and energy, occupying a high proportion of the international market share. Among them, the main products from the United States include VxWorks from Wind River, μC/OS-II from Micrium, TI-RTOS from Texas Instruments, INTEGRITY RTOS and µ-velOSity RTOS from Green Hills Software, Azure RTOS from Microsoft, Lynx OS from Lynx Software, DEOS from DDC-I, Amazon FreeRTOS from Amazon, MIPS Embedded OS from MIPS, RTLinux from FSMLabs, etc.; major products from the United Kingdom include FreeRTOS from RTOS, Mbed OS and RTX from ARM, and SAFERTOS from WITTENSTEIN; major products from Germany include embOS from Segger, PikeOS from SYSGO, and Nucleus RTOS from Siemens. In addition, real-time operating system products such as ENEA OSE from Enea Data AB in Sweden, SCIOPTA from SCIOPTA Systems in Switzerland, QNX Neutrino RTOS from BlackBerry in Canada, MQX RTOS from NXP in the Netherlands, Zephyr from the Linux Foundation, µClinux from GPL, as well as TizenRT, OpenWrt, DuinOS, and Apache NuttX also occupy a stable market share.

2. Major Domestic Products In recent years, the scale of the RTOS industry in China has continued to grow, with many excellent companies and products emerging, including RT-thread from Shanghai Ruisaide, Huawei Lite OS, AliOS Things from Alibaba, Sylix OS from Yihui Information, Intewell-C from Dongtu Technology, Delta OS from Kexin, Intewell OS from Kedian, Acore OS Tianmai from AVIC Computing Institute, Hopen OS from Kaishi Haopeng, JARI-Works from China Shipbuilding 716 Research Institute, ReWorks from China Electronics Technology Group Corporation 32 Research Institute, and Aworks OS from Zhiyuan Electronics, among others. Among these, RT-thread and Huawei Lite OS were selected for the 2022 Top Real-Time Operating System Companies list published by SourceForge, a globally recognized open-source software development platform and repository. The major domestic and foreign RTOS products are shown in Figure 1.

Key Technologies and Development Trends of Industrial Real-Time Operating Systems

Figure 1 Major Domestic and Foreign Industrial Real-Time Operating System Products

Overall, the level of domestic industrial real-time operating system products still lags behind developed countries, with gaps in product reliability and 3D graphics support capabilities compared to foreign software, and a lack of a complete software-hardware ecosystem. Currently, the domestic market still primarily uses American products such as VxWorks and μC/OS-II, with a low localization rate in key areas. The market share of embedded real-time operating systems is shown in Figure 2.

Key Technologies and Development Trends of Industrial Real-Time Operating Systems

Figure 2 Market Share of Embedded Real-Time Operating Systems

Data Source: VDC report / Zhiyan Consulting and other research reports

Key Technologies and Development Trends of Industrial Real-Time Operating Systems

Figure 3 Industrial Real-Time Operating System Software Product System

3. Key Technologies of RTOS

The RTOS product system mainly consists of three parts: kernel layer, middleware layer, and auxiliary design tools, as shown in Figure 3.

(1) Real-Time Operating System Kernel

The kernel provides the most basic functions of a real-time operating system and is the core part of the operating system’s work. The kernel expands the first layer of software based on hardware, mainly implementing functions such as task management, memory management, file management, queue management, and clock management. Industrial real-time operating systems have strong real-time constraints on the kernel, requiring it to process external requests quickly and respond to requests within a specified time, involving key technologies such as task scheduling, interrupt management, clock management, and synchronization and communication mechanisms. Currently, most real-time operating system kernels can be divided into microkernel and monolithic kernel categories. Microkernels generally only contain necessary core functions such as task scheduling and memory management, while peripheral driver services run in other processes and can communicate through the bare kernel, with the main advantage being modular flexibility. Monolithic kernels share space between the kernel and operating processes, allowing messages to be passed directly between processes, which has integration characteristics and does not require additional mediation modules between calls, providing a certain performance advantage.

Currently, operating system products such as VxWorks, widely used in key industrial scenarios, have adopted the monolithic kernel design. As the limited resources of hardware platforms are increasingly focused on, more and more emerging industrial real-time operating system products have adopted microkernel architecture to achieve advantages such as easy maintenance, convenient modification, and flexible operation.

1. Task Scheduling Algorithms

Task scheduling algorithms are key to improving the real-time management of multiple tasks. Efficient scheduling algorithms can enable the system to quickly complete task scheduling and switching under conditions of high performance and high stability.

Currently, domestic and foreign research teams have achieved certain research results and technological breakthroughs in task scheduling for real-time operating system kernels. The Shanghai University of Technology team proposed a hybrid critical-level task semi-partition scheduling algorithm that can recycle idle resources of multi-core processors and allocate idle time slices to abandoned low-critical-level tasks when a high-critical-level mode is triggered. In addition, this university team proposed a real-time hybrid task scheduling algorithm for embedded multi-core systems. Based on the improved boundary-fair real-time hybrid task algorithm, this algorithm introduces a relaxation parameter to improve the determination of task priorities and further proposes a heuristic algorithm that combines relaxation and heuristic strategies to improve task allocation strategies, effectively meeting the system’s real-time requirements. The Beijing University of Posts and Telecommunications team proposed an RTOS streaming data task scheduling model based on multi-core operating systems, which adopts a structure of real-time streaming processing task packets to improve the efficiency of stream data processing. The Henan University team proposed a heuristic independent task scheduling algorithm based on task execution time, which allocates tasks to different resources through preprocessing, decomposition, pre-scheduling, and adjustment of the task execution time matrix, saving task completion time while having a low time complexity.

2. Interrupt / Exception Management

Interrupt/exception management directly affects the system’s response and processing speed to external events, ensuring timely execution of time-sensitive functional parts. It mainly includes two processing parts: application-layer oriented and bottom-layer oriented, while providing users with a unified interrupt handling interface.

Regarding system exception verification and interrupt management, the Beijing Control Engineering Research Institute team proposed a verification framework based on Hoare-logic for operating systems oriented towards the SPARC processor architecture, which can be used to prove the correctness of exception management in SPARC processor architecture operating systems; the team from Xi’an Aviation Computing Technology Research Institute proposed an exception handling method for operating systems based on PowerPC processors, establishing a PowerPC exception handling mechanism; the Yunnan University team proposed a new interrupt task type around the Forth real-time system, which can handle real-time burst events in embedded operating systems and ensure the smooth operation of system terminals, backgrounds, and interrupt tasks based on the further proposed task scheduling algorithm; the Beijing Zhongkong Institute team proposed a real-time operating system exception management verification method based on SPARCv8 (Scalable Processor Architecture Version 8), establishing a Hoare-style program framework EMS and using the execution scenario of the real-time operating system SpaceOS on the BeiDou-3 satellite as an example to verify exception management.

3. Clock

The clock is the pulse and heartbeat of real-time operating systems, and its granularity and accuracy affect the timeliness of task responses and the overall efficiency of the system. Clock management mainly includes time management, timing management, process accounting management, load management, etc. The clock interrupt mechanism drives all time-related operations in the operating system and is the foundation for all time-related operations in the system.

In terms of clock management research, the National University of Defense Technology team has made certain breakthroughs in clock management for real-time operating systems, proposing a lightweight precise clock synchronization protocol implementation technology oriented towards MCUs, which uses a shared storage mechanism to reduce copying in data processing and replaces some precise computing processes with approximate computations achieved through shifting operations, reducing the occupation of computing and storage resources; the China Aerospace Engine Research Institute team proposed a high-precision clock synchronization method based on distributed simulation systems, which includes high-precision logical clock construction, network loop optimization, and online compensation for clock crystal oscillator frequency based on the analysis of factors affecting clock synchronization accuracy, promoting the practical application of clock synchronization in distributed simulation systems; the Budapest University team proposed a portable PTP clock synchronization implementation and performance evaluation method based on microcontroller systems, abstracting PTP packet timestamps, PPS signal generation, and external HW event timestamps to ensure good portability.

Synchronization and Communication Mechanisms Synchronization and communication mechanisms allow real-time operating systems to coordinate tasks and interrupts to ensure the collaborative completion of tasks. The technologies involved include priority inversion protocols, priority inheritance protocols, etc., which can be used to avoid delays caused by priority inversion and inversion.

In terms of research on synchronization and communication mechanisms, the Institute of Microelectronics, Chinese Academy of Sciences has achieved certain breakthroughs in synchronization and communication mechanisms for operating systems, proposing a multi-core communication mechanism based on a multi-core communication interface framework, which is divided into logical layer, operating system porting layer, transport layer, and porting layer to meet the needs of upper-layer application porting for embedded asymmetric multi-core processors; the East China Computing Technology Research Institute team proposed a deterministic inter-core communication mechanism for embedded operating systems, which designs an upper limit for end-to-end communication delays to meet the requirements of high-security embedded operating systems; the North China Institute of Science and Technology team has conducted a series of studies on synchronization and communication mechanisms for real-time operating systems, designing a concentration monitoring alarm device based on the synchronization and communication mechanism of the FreeRTOS operating system, and a human-computer interaction terminal based on the synchronization and communication mechanism of μC/OS-Ⅲ; the Eindhoven University of Technology team proposed a modeling, implementation, and analysis method for the application of the XRCEDDS communication standard in distributed multiprocessor real-time embedded systems, establishing a scenario-aware data flow model to capture the system behavior dynamics based on different execution scenarios.

(2) Middleware

The middleware layer is located between the real-time operating system kernel and application software, coordinating and managing communication and interaction between applications. Whether it supports rich middleware has become a key factor affecting the scalability of real-time operating systems. The middleware layer provides data management, application services, message passing, and other functions and services for application software, including file systems, network protocol stacks, graphical user interfaces, device driver frameworks, etc. In addition, there are a large number of industry-specific middleware and standard interfaces aimed at industries such as aviation, aerospace, automotive, and electronics. In terms of code volume, the development workload of middleware is far greater than that of real-time operating system kernels, making a weak middleware layer one of the main factors restricting the research and application of real-time operating system products in China.

In terms of middleware-related research, the team from Shaanxi International Business College designed a real-time middleware based on a publish/subscribe mechanism, which has data synchronization functions and real-time assurance mechanisms based on distributed objects, as well as a publish-subscribe communication mechanism based on Ethernet, meeting the real-time requirements of data distribution in distributed applications; the Fudan University team designed a data service middleware that introduces virtual entities and protocol adapters, modeling the data of IoT environmental perception to eliminate data format heterogeneity; the Tianjin University of Technology team designed a hybrid computing middleware that effectively integrates high-concurrency real-time processing business logic, batch processing business logic, and cross-layer dynamic calling, shortening the development time; the TuSimple technology team proposed a middleware for robots that combines high performance and high reliability, which can reduce communication delay and CPU usage by more than 40% compared to traditional methods.

In terms of related products, after a long period of development, commercial companies like Micrium have equipped their kernels with rich middleware, and open-source projects like FreeRTOS have also accumulated relatively complete middleware in their commercial projects like OpenRTOS, capable of building a relatively complete real-time operating system software platform. Domestic products like RT-Thread, although providing POSIX interfaces, network protocol stacks, GUI, device file systems, shell, libc libraries, etc., rely heavily on other open-source components and lack corresponding auxiliary design and debugging tools.

(3) Auxiliary Design Tools

Mature and complete auxiliary design tools can significantly reduce the difficulty and cost of RTOS development and improve the overall technical level of design and development, making them an important foundation for building the RTOS ecosystem. Auxiliary design tools mainly include integrated development environments, simulators, and testing frameworks. Integrated development environments provide source code compilers, project management tools, and other tool modules; simulators can simulate software/hardware functions to achieve co-verification of embedded industrial real-time operating systems; testing frameworks can effectively improve the efficiency of developing, executing, and reporting automated test scripts.

In terms of research related to auxiliary design tools, the Wuhan University of Technology team proposed a knowledge graph-based testing case recommendation model for embedded operating systems that designs ontology models based on historical case knowledge and establishes a reuse recommendation model by combining knowledge recommendations, saving testing costs and having certain engineering application value; the Shanghai Micro Satellite Engineering Center team proposed an automated testing method for embedded operating systems that utilizes version management tools and continuous integration tools to achieve automatic compilation of scripts, automatic execution, and recording of test results, enhancing the level of automation in testing; the Capital Normal University team proposed a differential fuzz testing method aimed at ROS that can accurately identify vulnerabilities in functional packages of different versions of ROS; the Beijing Institute of Computer Technology and Application Research team proposed a compatibility testing method for domestic operating systems based on comparing dependency elements, which classifies dependency elements and obtains compatibility testing results for operating systems by comparing the consistency of dependency elements in two operating systems.

In terms of development languages, current domestic real-time operating systems mainly support C and C++. Compared to mainstream foreign products, domestic products are relatively lacking in support for languages like Python, JAVA, and RUST. At the same time, in specialized fields like robotics, there is a lack of complete upper-layer simulation and auxiliary design tools, leading to long design and debugging times, and issues such as existing results in control algorithms and control strategies not being fully utilized. In light of the increasing complexity and scale of embedded systems, automated development configuration and testing verification, as well as offline simulation development, have become important development directions to effectively improve development efficiency.

4. Development Trends of Industrial Real-Time Operating Systems

(1) Lightweight Trend

As the application of RTOS becomes more widespread and in-depth, the scale and complexity of systems have significantly increased, posing challenges to system flexibility, reliability, maintainability, and hardware requirements, requiring RTOS to achieve more functionality with a more streamlined structure. Meanwhile, users’ demands for the customizability of RTOS have become more pronounced, achieving flexible customization and configuration based on hardware and application environments through “plug-and-play” components, thereby reducing hardware costs and improving system operational efficiency and reliability. The realization of lightweight and flexible deployment of RTOS relies on strong openness support. Embedded real-time operating systems like RTlinux and μClinux, developed based on the Linux kernel, have the advantage of open source, utilizing Linux’s advanced microkernel architecture to achieve flexible customization of hierarchical structures and convenient system debugging. Additionally, the Linux ecosystem has accumulated rich resources and provides strong support for application development, leading to the rapid development of real-time operating systems based on Linux, which gradually forms strong competition against traditional embedded real-time operating systems.

(2) Virtualization and Cloud Trends With the continuous development of computer technology, mainstream processor architectures have transitioned from single-core processors to multi-core processors, and hardware platforms based on multi-core systems are rapidly developing and widely applied. In multi-core systems, multiple computing cores operate independently, and tasks on each core share system resources such as cache and memory. Compared to multi-processor systems that also use parallel task computing modes, shared components can improve the utilization efficiency of hardware modules and reduce the number of hardware components. This interconnection of on-chip resources enhances communication efficiency between computing cores and presents more challenges for the resource use and allocation of real-time operating systems. Accompanying this technological trend, the virtualization process of embedded industrial real-time operating systems is accelerating, allowing the isolation of functions of different subsystems through virtualization technology, enabling multiple embedded systems to run on a single hardware system management program. Moreover, applications in scenarios such as the industrial Internet have promoted the cloud development of industrial real-time operating systems, such as centralizing the management of time-sensitive control processes in industrial control to the cloud or edge, facilitating interaction and cooperation between control processes, reducing system costs, and having high application value.
(3) Cross-Platform Portability and Networked Applications One major difficulty in the development process of embedded RTOS is poor code reusability. The upgrade and replacement of real-time operating systems involve a large amount of migration or even redevelopment of existing software, leading to serious waste of resources due to insufficient utilization of existing work results. Therefore, related standardization work has increasingly drawn attention. The rapid development of operating system-related applications also demands higher performance from the systems themselves. Single-processor chip computer systems can no longer adequately meet the demands of complex real-time application systems. Different hardware platforms based on X86, ARM, MIPS, C-SKY, PPC, and RISC-V architectures, as well as domestic hardware like Loongson processors and Feiteng processors, will see broader applications, while RTOS will pay more attention to cross-platform compatibility to improve the reusability of embedded software and enhance system portability and scalability. At the same time, with the rapid development of Internet technology, industrial real-time operating systems will become more easily portable and networked, providing support for protocols such as TCP and UDP, as well as unified MAC access layer interfaces, facilitating connections with various mobile computing devices.

5. Conclusion

RTOS is widely used in various critical scenarios, and compared to traditional software products, it requires the construction of a rich software and hardware ecosystem to further meet the demands of wide connectivity and diversified loads. In this context, unified and standardized interfaces and infrastructure are prerequisites for code portability and reusability, as well as the foundation for the collaboration of various software and hardware. Domestic RTOS should strengthen multi-party cooperation to fill in the gaps, enhancing the usability, reliability, and controllability of the system. First, strengthen research on key common technologies and promote the technological development of RTOS kernels in terms of high trustworthiness, high availability, and strong real-time performance; second, co-build an open product ecosystem, enrich the ecosystem of general and industry-specific middleware, promote software-hardware adaptation, and improve integrated and debuggable design development environments and tool support; third, strengthen the support and guarantee of quality standards, develop data models, interfaces, and management evaluation standards, enhance third-party evaluation capabilities, strengthen open-source risk prevention, and promote the standardized and secure development of industrial real-time operating systems.

Author Introduction

Meng Yan, National Industrial Information Security Development Research Center, Master, Engineer, research direction: industrial software, industrial real-time operating systems, robotics;

Li Mingshi, National Industrial Information Security Development Research Center, Doctor, Engineer, research direction: industrial IoT, industrial software, real-time operating systems;

Deng Changyi (corresponding author), Deputy Director of the Software Institute, National Industrial Information Security Development Research Center, Doctor, Senior Engineer, research direction: industrial software, cyber-physical systems, industrial control, artificial intelligence chips, email: [email protected].

Source:New Industrialization

Editor:Jin Hao

Submission Email:[email protected]

Contact Us:0933-8551597

Key Technologies and Development Trends of Industrial Real-Time Operating Systems

Leave a Comment