Wang Mei: Engineer at the Institute of Informationization and Industrialization Integration, China Academy of Information and Communications Technology.
Introduction
The upgrade of strategic industries and the development of large-scale markets have driven the application of the Internet of Things (IoT) into a new wave of development. According to Gartner’s prediction, by 2020, the number of connected devices globally will reach 26 billion, and the IoT market size will reach $1.9 trillion.
In response to the demand for large-scale networking of new IoT terminals, traditional embedded operating systems cannot be directly applied to IoT devices due to their closed characteristics. Mobile operating systems like iOS and Android cannot adapt well to IoT terminals due to their larger size and higher power consumption. Therefore, operating systems need to undergo a new round of development and innovation. Architecturally, to achieve generalization, the structures are gradually becoming consistent and possess unique characteristics of IoT; technologically, operating systems are continuously improving their performance to meet the demands for security, low power consumption, and interconnectivity of new terminals. In recent years, emerging operating systems such as ARM’s Mbed, Microsoft’s Win10 IoT, and Google’s Fuchsia have developed and been applied in the IoT field, while China’s Huawei’s liteOS and Alibaba’s yunOS have also performed well.
Development Characteristics of IoT Operating Systems
2.1 Operating Systems and IoT Platforms Become Dual Core of Ecology
In the era of mobile Internet, the basis of industry and ecology is smart terminals, with most of the value residing in numerous APP applications. The operating system provides a unified interface for applications and serves as the core of the ecological framework. In contrast, the IoT focuses on connections and data, making data aggregation and processing the focus of industrial development. The operating system serves as the data aggregation and access interface, leading to a change in ecological positioning.
The upward transfer of ecological value in IoT and the change in the ecological positioning of operating systems have led to a transition from a single-core to a dual-core ecology in IoT. On one hand, IoT primarily emphasizes big data services, focusing on the cloud interconnection of massive data, enhancing the ecological value of IoT platforms, which becomes a core link in the IoT ecology. On the other hand, the ecological model of IoT is derived from mobile Internet, and IoT operating systems remain important tools for shielding underlying hardware differences and managing software and hardware, maintaining their influence. Additionally, data collection and interconnection require capabilities from underlying sensors, upper-layer applications, and the cloud, with the operating system providing interfaces as important support for data access, aggregation, and processing.
2.2 New Demands for Low Power, Security, and Interoperability in IoT Operating Systems
With the emergence of new IoT application services, the target users have gradually shifted to the general public. The new IoT differs significantly from traditional dedicated modes in terms of operation and maintenance models, network architecture, and data processing, moving from independent and closed to open and interconnected systems. Meanwhile, with the continuous maturity of technologies such as communication, artificial intelligence, and autonomous driving, the intelligence of IoT terminals deepens, and the demand for enhanced capabilities in terminal devices poses new requirements for IoT operating systems. Firstly, to achieve interconnectivity and interoperability among devices from different manufacturers, operating systems must meet interoperability requirements. Secondly, IoT devices are resource-constrained, making low power consumption a necessary feature of IoT operating systems. Thirdly, as the number of connected devices continues to increase, network security must be enhanced, making it essential to ensure software and hardware security at the operating system level. Fourthly, IoT devices exhibit diverse forms and functions, necessitating increased support capabilities for software and hardware. Lastly, concerning a large number of heterogeneous terminals, IoT operating systems must achieve modular requirements, enabling customization and rapid adaptation.
2.3 Three Development Paths for IoT Operating Systems
Due to the difficulty of existing operating systems fully matching the demands of IoT applications, three technological paths have emerged in the field of IoT operating systems. One path involves customizing and tailoring existing operating systems like Android and iOS to meet the needs of IoT access devices. Another path is based on traditional embedded operating systems and real-time operating systems, adding functionalities such as device networking to meet the interconnectivity needs of IoT access devices, forming new embedded operating systems. The third path is the emergence of new types of operating systems specifically designed for IoT.
Recent Developments in New IoT Operating Systems at Home and Abroad
3.1 Continuous Upgrading and Optimization of Operating System Technologies for New IoT Demands
(1) Operating System Architecture Differentiates from the Internet, Gradually Aligning with IoT Applications
IoT operating systems consist of sub-modules including the kernel, peripheral functional components, IoT collaborative frameworks, universal intelligent engines, and integrated development environments. These sub-modules cooperate with each other and form hierarchical dependencies, collectively constituting a complete software foundation platform for various IoT application scenarios.
At the kernel level, scalability, security, and low power consumption are achieved. In terms of scalability, the kernel adapts to different hardware platforms through recompilation and binary module selection and loading, achieving scalability in the range of K to M levels. In terms of security, it supports memory protection (such as VMM mechanisms) and exception management mechanisms to isolate erroneous code when necessary, providing kernel statistics and monitoring functions to assist maintenance or development personnel in fault localization. For low power consumption, two common technical approaches are employed: one is to reduce the CPU running frequency or shut down the CPU during idle periods; the other is to minimize the frequency of interruptions.
Peripheral modules are added to support basic functions such as connectivity and graphics. To achieve lightweight functionality, IoT operating systems provide functional modules on demand. Therefore, IoT operating systems separate components such as file systems, TCP/IP network protocol stacks, and databases from the kernel, forming peripheral functional components. In many cases, only one or two functional components are needed to meet requirements, while others must be trimmed away.
Through collaborative frameworks, the mutual interaction of IoT devices is achieved. IoT devices need to interact and collaborate with each other to accomplish functions that a single IoT device cannot complete. The IoT collaborative framework provides the technical foundation for collaboration between IoT devices, including functionalities such as device discovery mechanisms, initialization and configuration management of IoT devices, collaborative interaction between IoT devices, and cloud services.
(2) Interconnectivity Becomes an Important Focus for IoT Terminal Interconnection
Compatibility with IoT communication protocol interfaces and improving collaborative framework functionalities are essential. As IoT is a scenario of interconnected devices, the demand for interconnection and interoperability among devices is significant. Additionally, various IoT connection scenarios exist, such as in smart home environments, where short-range high-speed communication connects various home devices with mobile phones and PCs, while in smart logistics scenarios, communication protocols with wide coverage and low power are required to support long-distance transmission. Therefore, IoT operating systems must support more new types of IoT communication protocols to facilitate interconnectivity.
The emergence of integrated operating systems is still in its early stages, with prospects remaining to be seen. Microsoft’s Win10 IoT achieves API sharing through device series, allowing development tools to access common APIs, automatically identifying device environments during installation and compiling dedicated APIs, ensuring that while code is uniformly written, it retains its unique attributes. However, user habits remain largely entrenched in Win32 systems, and Microsoft’s market share in IoT terminals remains low, leading manufacturers to be reluctant to invest resources in developing cross-terminal systems. Google has launched Fuchsia, which employs a new Magenta kernel, Escher renderer, and Dart language, supporting 32-bit and 64-bit ARM processors and 64-bit PC processors to create a new integrated operating system. Currently, this system is still under development, and changing the user habits and ecological habits established by Android in the short term remains challenging, leaving its development prospects uncertain.
(3) Low Power Technology Gradually Matures, Forming Various Solutions
As most IoT devices are wireless, maintaining low power consumption is essential for prolonged use. Currently, operating system companies are focusing on low power consumption to achieve this at the operating system level. For instance, Huawei’s liteOS has a power consumption of only 10~3mW; Mbed has collaborated with Silicon Labs to launch a low-power Mbed OS. In terms of specific technologies, IoT operating systems address low power consumption through scheduling mechanisms, transmission mechanisms, and power management. First, the scheduling mechanism has shifted from the original Linux real-time scheduling method to a centralized task scheduling approach. Secondly, in terms of transmission methods, system power consumption is reduced through optimizations in network protocol stacks and routing algorithms. Finally, in battery management, automatic selection of deep sleep modes significantly reduces energy consumption.
(4) Combining Software and Hardware to Enhance IoT Security
Based on ARM-M series TrustZone technology, hardware security is ensured. At the end of 2015, ARM introduced TrustZone technology into M series chips, providing hardware assurance for IoT security. TrustZone technology divides the hardware and software resources of the SoC and isolates them into two execution environments: a secure environment and a normal environment. The secure environment executes tasks in the security subsystem, such as storing keys and encryption algorithm software libraries, while the normal environment handles all other tasks. Unlike the TrustZone in the A series, the environment switching in the M series is based on hardware security state transitions, allowing for rapid switching that meets the low power consumption and real-time requirements of IoT.
Software-level security is ensured through isolation methods. Software-based security solutions achieve system security through data encryption or embedding security features in the operating system. For example, Mbed OS utilizes uVisor to divide some code into different BOXes, with different permission controls between each program’s BOX, and cross-BOX permission access is solidified within the operating system at the time of device manufacturing.
(5) Enhancing Software and Hardware Support Capabilities for New Intelligent Terminals
Vehicle operating systems are aimed at vehicular networks and autonomous driving, enhancing connectivity and adding ADAS interfaces. In terms of connectivity, the networking of vehicles is gradually becoming a trend, requiring operating systems to provide communication support for vehicular networks from the ground up, supporting V2X vehicular communication protocols to enhance underlying data access and processing capabilities from three aspects: in-vehicle networks, inter-vehicle networks, and mobile vehicle networks. In terms of intelligence, with the continuous advancement of autonomous driving technology, vehicle operating systems are also strengthening their coupling with ECUs, connecting sensor data through network interfaces with computing systems, and managing and scheduling computing resources to provide a software foundation for autonomous driving.
Robot operating systems are oriented towards artificial intelligence, incorporating AI engines. From the perspective of underlying hardware, robots enhance their motion control and other capabilities by continuously improving perception functions, placing higher demands on underlying sensors. From the perspective of upper-layer software, robots introduce various native applications for different application scenarios, creating an ecosystem for robot operating systems, providing code libraries and other interfaces to support applications.
3.2 Gradual Increase in Patent Applications for IoT Operating Systems, but Still Relatively Weak
Currently, according to statistics from the China Academy of Information and Communications Technology, the number of patent applications for IoT operating systems has seen explosive growth since 2013, surging from 86 in 2012 to 189 in 2013, and continues to show a gradual upward trend. Patents focus on mobile operating systems such as iOS and Android, as well as IoT operating systems like Contiki, Tiny OS, ARM Mbed, and Huawei LiteOS, with some patents filed by Chinese enterprises or individuals. However, compared to the higher volume of patent applications in areas such as sensors, wired communication technologies, and short-range communication technologies, the number of technical patents focused on IoT operating systems remains low, and the pace of technological development and innovation is still slow.
3.3 Development Trend of IoT Operating Systems Primarily Open Source, with Closed Source Coexisting
On one hand, from an industrial perspective, China’s IoT is still in the development phase and needs to lower technical barriers to accelerate popularization. Open source, as a means of ecological construction, is conducive to accelerating the development of IoT in China. From a technical perspective, due to the diverse forms of IoT terminals, high interconnectivity requirements, and severe fragmentation, the compatibility requirements for software and hardware development are high. Open source can provide a foundation for compatibility. Emerging IoT operating systems such as LiteOS, Brillo, and Tizen adopt open source strategies, with LiteOS’s code being open source, building an open-source community that includes players such as chip manufacturers, modules, open-source hardware, makers, and software developers. However, to ensure security and maintain control, some operating systems may adopt an open-source model similar to Android’s “AOSP open source, GMS closed source” approach, where most of the code is open-source but key components are closed-source and licensed, such as Mbed being free and partially open-source yet containing binary mechanisms, with some components provided in the form of closely guarded closed-source drivers by system-on-chip products offered by chip manufacturers.
On the other hand, certain special industries have their own unique requirements, such as aerospace and hydropower, where high security and confidentiality are necessary, thus requiring the coexistence of closed-source strategies.
3.4 Gradual Establishment of IoT Ecology Centered Around Operating Systems and IoT Platforms
As the ecological core of IoT gradually shifts towards a dual core of operating systems and IoT platforms, enterprises developing new IoT operating systems are increasingly supporting the construction of IoT platforms, each focusing on their strengths to build an IoT ecosystem.
Focusing on the operating system as the core. Leveraging the strong influence of the mature ecosystem of mobile and PC operating systems, enterprises focus on the operating system when developing IoT operating systems, transferring the technological and ecological advantages of mobile/PC to IoT. For instance, Apple has adopted a fully closed development strategy, successively launching CarPlay, Watch OS, and HealthKit, deeply integrating the iOS system and application ecology into automobiles and wearable devices, and participating deeply in the development, production, and manufacturing processes of upstream components through funding and technical support, creating an ultimate user experience from terminals to applications, as shown in Figure 1.
Focusing on the dual core of operating systems and IoT platforms. New operating systems are specifically designed for IoT, requiring new products to rapidly establish a complete industrial chain to enter the market; at the same time, most enterprises’ main businesses are in the Internet or connectivity, giving them an advantage in cloud interconnectivity. Therefore, new operating systems focus on constructing IoT ecosystems with dual cores. For example, ARM lays out the IoT ecosystem centered around Cortex-M architecture, Mbed OS, device management systems, and open-source communities, establishing close cooperative relationships with MCU chip providers through physical IP package licensing, processor licensing, architecture/instruction set licensing; providing mbed OS to partners free of charge with partial open-source and support for secondary development; and collaborating with cloud service providers such as IBM, Stream, Ericsson, and KDDI to create a unified development environment to attract third-party developers, as well as cooperating with system integrators to provide various IoT solutions for industry users, as shown in Figure 2.
Focusing on the IoT platform as the core. On one hand, embedded operating systems have relatively weak interactivity and interoperability; on the other hand, such operating systems are mostly applied in industrial sectors, where the demand for large-scale networking is increasing. Therefore, traditional embedded operating systems need to leverage IoT platforms to enhance connectivity, analysis, and processing capabilities.
Development Suggestions for IoT Operating Systems in China
4.1 Opportunities for the Development of IoT Operating Systems in China
The incremental market brings numerous new opportunities. Currently, there is no mature product that can fully meet IoT application needs, even traditional operating system companies like Microsoft and Wind River need to adjust their product lines to adapt to the new market. China’s IoT industry is rapidly developing, becoming the largest market globally. Thus, a significant portion of the incremental market for IoT operating systems will undoubtedly come from China.
IoT operating systems are closely integrated with cloud computing and mobile Internet. Currently, Chinese manufacturers developing IoT operating systems all have relevant backgrounds in the Internet and cloud, which can facilitate advantageous transitions. For example, Alibaba launched yunOS based on Alibaba Cloud and supported by the Yoc open platform; Huawei launched liteOS and Oceanconnect IoT platform based on Huawei Cloud, leveraging its connectivity advantages to promote low-power wide area networks, gaining an edge in connectivity.
4.2 Current Application Status of IoT Operating Systems in China
Currently, the development of IoT operating systems in China varies across different fields. In the smart home sector, Qingke Mico and Alibaba yunOS are performing well, forming a preliminary ecosystem with underlying hardware and home appliance manufacturers. Alibaba Cloud, centered around Yun OS and cloud platforms, has established partnerships with over 40 hardware manufacturers, launching numerous smart home products with good applications, employing strategies such as forming commercial alliances, adopting open operational models, and innovating product service strategies to create a beneficial profit-sharing mechanism. In the robotics field, there are artificial intelligence-level operating systems applied to robots, but no ecosystem has yet been formed. For instance, the AI startup Turing Robots has released an artificial intelligence robot operating system called Turing OS. In the automotive system sector, Wince, QNX, and Android occupy most of the market share, while domestic new operating systems have yet to produce mature products.
4.3 Suggestions for the Development of IoT Operating Systems in China
(1) Rely on “IoT” and “Smart Hardware”, Supported by Policies/Market Guidance
The development of heavyweight IoT operating systems in China is relatively slow. By relying on policies such as smart hardware and smart cities, establishing special funds, and vigorously accelerating the development of heavyweight operating systems. Lightweight IoT operating systems are developing well, and as market demand continues to stimulate, they should drive operating systems towards application scenarios and segmented markets, facilitating differentiated development; linking upstream and downstream to achieve collaborative development.
(2) Accelerate R&D of Innovative Technologies
Focus on the technology field of IoT operating systems, vigorously develop technologies related to security, low power consumption, and interconnectivity; heavyweight operating systems should gradually expand functionalities, tightly coupling with cutting-edge technologies such as artificial intelligence and data analysis. In terms of security, leverage TrustZone technology and isolation concepts to enhance software security at the operating system level; simultaneously, utilize TLS to build a full lifecycle security system covering the kernel, transmission, and cloud. Regarding low power consumption, improve scheduling and transmission mechanisms for low power consumption solutions, emphasizing a balance between low power consumption and real-time performance, and strengthening innovation in low power consumption mechanisms. In terms of interconnectivity, leverage the advantages of domestic low-power wide area networks to enhance operating systems’ support capabilities for connectivity; within heavyweight operating systems, integrate cloud application engines to strengthen cloud interconnectivity.
(3) Strengthen Cooperation with Various Links in the Industry Chain
Focus on the operating system and IoT platform, strengthen cooperation between operating systems and hardware enterprises, developers, and platform operators to establish an IoT ecosystem. Firstly, strengthen cooperation with hardware enterprises. Define standard hardware driver interfaces to achieve separation between the kernel and hardware drivers. By defining standard API interfaces, achieve separation between applications and hardware. Through this cooperation, operating systems can better understand the main requirements from operating systems, making targeted efforts in hardware drivers, software-hardware separation, terminal adaptation, and collaboration. Secondly, strengthen cooperation with application developers. Optimize solutions in conjunction with specific scenarios, and collaboratively optimize algorithms and code. Thirdly, strengthen cooperation with platform operators. The terminal-side operating system needs to cooperate with the platform-side to realize functionalities such as state queries, configuration management, alarm management, and sensor management. Strengthening cooperation can promote the rapid establishment of the “operating system + IoT platform” ecosystem.
