Outlook on Automotive Operating Systems

Operating systems (OS) are essential for managing all hardware and software based on computer systems and are a key software platform in the automotive industry.The focus of this article is to provide tutorial information and some insights on automotive OS strategies.

Each OS varies significantly in functionality, program size, complexity, development workload, hardware requirements, as well as lifecycle maintenance, support workload, and cost. An OS can be a simple control program with thousands of lines of code or tens of millions of lines of code used in mainstream OS like Linux, macOS, iOS, and Windows. The size of the Linux kernel code varies by distribution, with the GitHub version having about 28 million lines of code.Wikipedia is a great information source for the history, technology, and products of OS. While there is detailed data about OS technology, most of the content focuses on traditional computer systems from mainframes and PCs to smartphones and tablets. There is general information about leading automotive OS like Linux and QNX, but little context and information about the use of automotive OS.Overview of Operating SystemsAn OS is the interface between computer hardware and applications. It restricts an application from using hardware by following the rules and programs embedded in the OS. The OS also includes services that simplify application development and execution. These services include managing all hardware resources that applications will use (loading programs into memory), communicating with sensors and actuators, storing results, and many other functions.Many additional software functionalities are considered part of the OS, including so-called middleware, libraries, and other system software.The capabilities and ecosystem of an OS are also crucial for developing applications and software platforms required for software-defined vehicles. In other words, the best OS choice requires a vast ecosystem and infrastructure to support the future-growing software-defined vehicles.The table below summarizes the requirements for automotive OS.Outlook on Automotive Operating Systems

Many characteristics of an OS determine its capabilities. A single-task OS can only run one program at a time, while a multitasking OS can run multiple programs. A single-user OS does not have tools to differentiate users but can allow multiple programs to run simultaneously.

A multi-user OS extends multitasking to run programs from multiple users. This requires tracking the hardware and software resources each user is using. The system allows multiple users to interact with the system simultaneously.OS KernelThe OS kernel includes all critical functions for managing hardware and software. There are two main approaches to organizing kernels: monolithic or microkernel OS. A monolithic architecture includes all core OS functions in kernel space, with all system calls and OS services in one place. Linux is a leading monolithic OS.A microkernel OS has the minimal amount of software necessary to provide the mechanisms needed to implement the OS. Other OS services are organized as layered services that can be activated by the microkernel as needed. This means that microkernel OS has a modular architecture.The advantage is that the code space of the microkernel is small and is more secure than a monolithic OS. The modular OS structure is more suitable for most automotive ECUs. QNX is a leading microkernel OS.Hypervisor OSA hypervisor is a small software platform used to manage multiple OS platforms and their applications. It can also be referred to as a virtual machine (VM) monitor, which is software that runs VMs.Since the 1960s, virtualization technology has been applied in the computer industry and is a key technology in IT data centers. Hypervisors are crucial for combining infotainment and functional safety features.Functional Safety OSMany ECUs require an OS with functional safety certification. This means passing ISO 26262 certification and obtaining various ASILs (Automotive Safety Integrity Levels). ASIL levels range from low to high: ASIL A, B, C, D.All AUTOSAR-based OS (such as Vector’s Microsar OS, ETAS’s RTA-OS, and Elektrobit’s EB Tresos Safety OS) have functional safety ratings. The other three products are also widely used in automotive ECUs, including Green Hills Integrity RTOS, Wind River VxWorks, and BlackBerry QNX.Functional safety OS cannot manage large complex software code ECUs like infotainment systems and emerging ADAS/AD ECU. The only exception is QNX, which leads in the infotainment sector and is well-positioned in ADAS and AV ECU.The demand for high-performance OS in infotainment systems has opened the door for Linux versions, making it the most popular infotainment OS globally in the last five years (excluding China). One downside of Linux is the lack of functional safety certification. When functional safety applications need to be part of a Linux-based ECU, hypervisor OS has been the solution for Linux.It appears that Linux will have at least one functional safety version in the near future. In May 2022, General Motors announced it would use a Red Hat Linux version, which is in the process of obtaining functional safety certification. General plans to launch products in 2023. It is still unclear whether Red Hat has obtained functional safety certification, but other Linux vendors are likely to attempt to obtain functional safety certification. Google’s infotainment OS is rapidly evolving and seems to be a candidate for functional safety.OS Ecosystem SupportThe key to the success of an OS is the support of a vast ecosystem. The more software platforms that support an OS, the more successful it becomes. Equally important is that the OS can run on leading microprocessor platforms and specific MCU implementations. However, since automotive ECUs are mainly based on Arm microprocessors, this requirement is easily met.All MCU application software must run through the OS, which means a successful OS must have good software development support.OS Cost FactorsThere are many factors that determine the cost of using an OS. This article assumes that the OS is purchased by automotive OEMs rather than developed.The first factor is the licensing cost of the OS, which includes the OS kernel, middleware, and library software (such as mathematics, floating point, graphics, etc.). The Linux kernel OS is an open-source free software platform. In most cases, middleware and some libraries in Linux require licensing fees.The size of the OS will affect the amount of hardware needed to run software and its applications. The total code size impacts the maximum permanent storage size required. In the disk era, this was not a significant factor, as most hard drives were large enough. Today, permanent storage is mainly NAND chips or eMMC modules, which often add extra costs for OS size.The footprint of the OS is the RAM required to run the OS and its applications. Similarly, the size of the OS footprint will affect the memory costs of the system.Another factor is hardware costs, as the OS may impact the cost of the MCU. A large OS may increase the required performance of the MCU, which can raise hardware costs.The discussion in this article aims to weigh all potential OS cost factors. It is easy to assume that the free OS kernel of Linux will provide enough cost savings to outweigh the potential additional costs of a large OS.ECU Software DevelopmentECU software development is critical to the automotive industry, and its complexity and workload are continuously increasing. Traditional ECU software development was initially completed through SDKs provided by multiple vendors. SDKs have been replaced by IDEs, which offer better functionality and have expanded into web-based IDE systems. The Eclipse IDE has become the most popular software development system in the automotive and many other industries. Eclipse is managed by the Eclipse Foundation, a non-profit organization created by IBM in 2001.Web-centric software development is rapidly evolving, with Amazon AWS being particularly active. AWS is forming partnerships to meet better software development needs, including SaaS capabilities. Microsoft Azure and other companies are also experiencing similar growth.Providing software development systems focused on functional safety applications is also a trend. Apex.AI is a typical example of this trend.Demand for Emerging ECUsThe OS also needs to support the demand for emerging technologies. Cybersecurity is paramount, and all OS will have security as a core feature. Additional hardware, software, and cloud-based cybersecurity are becoming standard for software-defined vehicles, requiring as much support as possible, including from the OS.OTA software updates are also becoming increasingly important and can use additional support from OS services. The capabilities of OTA platforms in embedded software and cloud functionalities are increasing.ECU data extraction is the third type of functionality for connected vehicles. It can also benefit from OS services and new features.OS Strategic PerspectiveAll automotive ECUs require a control program or OS to manage various programs to control hardware components and each ECU’s designed applications. As the complexity of ECUs increases, so does the complexity of the OS. Automakers will need multiple OS to cover the wide range of capabilities and functionalities of ECUs.For simple ECUs, OEMs seem to prefer AUTOSAR-based OS. The capabilities of AUTOSAR have improved, but it cannot handle the complexity of high-end ECUs, such as infotainment and most domain controllers. Green Hills and Wind River both have excellent OS with high security and safety ratings, making them good choices.High-end ECUs primarily use QNX or Linux versions as the OS, with QNX being the preferred choice when functional safety is required. Linux has surpassed QNX to become the most popular infotainment operating system. QNX is becoming the preferred choice for domain controllers, at least for ADAS and AV domain controllers.Many media reports indicate that several automakers, including Volkswagen and Mercedes, are discussing the development of their own OS. Does this mean they are considering developing rather than purchasing? This strategy is not without risks.Developing an OS is a challenging task, and the OS may have a lifecycle of 30-40 years, with regular updates and ongoing technical improvements. Linux has evolved for about 30 years, while QNX has developed for nearly 40 years.Developing an automotive OS requires a significant amount of expertise, which is currently limited and requires years of development time.The strategy of General Motors is to use Red Hat Linux with functional safety certification, which is a better approach than developing an internal OS for complex ECUs.What is the best long-term OS strategy? The best practice is to start with the safest OS from two ECU categories (low complexity and high complexity). Why? Because cybersecurity issues will be the most challenging problems facing the automotive industry for decades, and the OS will play a crucial role.For low-complexity ECUs, Green Hills has the highest security and safety certifications, including FAA certification for aircraft use.For high-end ECUs, QNX has higher security and safety certifications than Linux versions and is likely to maintain this ranking (even if some Linux versions obtain ISO 26262 certification). QNX’s microkernel architecture makes the OS more secure. New standards for AVs (ISO 21448, UL 4600, and IEEE P2851) can utilize some useful features in the OS, and QNX may be the first to develop these features.

We welcome all enterprises in the entire automotive industry chain (including the electrification industry chain),to connect and land with technology enterprises; to find suppliers for automotive manufacturers;Please scan the administrator’s WeChat to join the group (Please indicate your company name)

Outlook on Automotive Operating Systems

Leave a Comment