QNX: About Safety and Automotive Security
Imagine fortifying your room with an array of locks on the door to ensure your security. You feel secure, and confident in the impenetrability of the door. However, someone bypasses your elaborate defenses by simply climbing in through the window. What do you do now? Optimally, the theoretical solution would be to secure every entry point—lock every door, secure every window, install surveillance cameras throughout the house, and store your valuables in a safe. Essentially, you create a comprehensive security system that leaves no vulnerabilities ..
This level of all-encompassing protection mirrors what Blackberry wants the QNX operating system to bring to the vehicle. This article delves into the architecture of the QNX operating system, its relevance for Functional Safety and automotive security, its suitability for embedded systems in cars, with a touch on automotive market presence. We will also explore alternative operating systems and competitors in the market.
Overview of BlackBerry QNX Neutrino Operating System
By consulting the Blackberry QNX guide, Blackberry introduces QNX as a real-time operating system (RTOS). It was initially created by Quantum Software Systems in 1982 and later acquired by BlackBerry in 2010. The QNX OS is designed for embedded systems, based on a microkernel architecture, which is a significant departure from the traditional monolithic kernel design found in many operating systems.
This architecture is composed of the following key layers:
Microkernel:
The QNX Neutrino RTOS microkernel is the core component responsible for critical system functions such as thread scheduling, inter-process communication (IPC), and interrupt handling. Its small, minimalist design ensures high reliability and real-time performance. Unlike a real-time executive, the QNX microkernel uses IPC services to extend kernel functionality through additional service-providing processes. This modular approach allows user-written processes to act as both applications and OS extensions, making the system open and easily extensible without compromising core reliability.
Process Manager:
In the QNX OS, the microkernel is paired with the Process Manager in a single module (procnto). This module is required for all runtime systems. Its main areas of responsibility include: process management, memory management, pathname management. It ensures that each process operates in its own memory space, enhancing system stability and security.
Resource Managers:
Resource managers provide higher-level services by managing system resources such as filesystems, network protocols, and device drivers. This may involve managing actual hardware devices (like serial ports, parallel ports, network cards, and disk drives) or virtual devices (like /dev/null, a network filesystem, and pseudo-ttys).
Device Manager:
The Device Manager (Dev) in QNX provides POSIX-compliant device control with extensions for real-time communications. Dev can be dynamically started, and device drivers can be attached or removed as needed. It handles baud rates up to 115 K baud on modest hardware due to the microkernel's low interrupt latency. Using MX messaging primitives, Dev directly receives application write operations into a ring buffer managed by an interrupt handler, optimizing data flow without redundant copying.
According to the certifications published on BlackBerry QNX website, QNX was able to obtain maturity level 2 ML2 in its ISO 21434 assessment for Road Vehicles Cybersecurity Engineering assessment. Adding also to its certification portfolio of ASIL-D for ISO 26262 Functional Safety.
Automotive Cybersecurity and Functional Safety
QNX has recently reached a notable milestone in their journey by obtaining certification to the ISO/SAE 21434:2021 - Road Vehicles Cybersecurity standard. This significant achievement not only showcases QNX's resilient cybersecurity stance but also emphasizes their expertise in supporting automotive OEMs to meet mandatory cybersecurity regulations throughout the vehicle lifecycle.
This OS is designed with robust security features that make it a suitable choice for automotive applications:
Microkernel Security, Modularity and Isolation:
The microkernel design inherently reduces the attack surface by running only essential services in kernel space. Most services and drivers run in user space. Meanwhile, the microkernel architecture allows for modular design and strong isolation between different system components. This isolation ensures that faults in one component do not propagate to others, enhancing overall system safety.
Functional Safety and Secure Boot:
QNX OS has been certified to various safety standards such as ISO 26262 ASIL D, which is the standard for functional safety in road vehicles. This certification demonstrates that QNX meets stringent safety requirements necessary for automotive applications. At the same time, QNX supports secure boot mechanisms, ensuring that only authenticated and trusted software runs on the system. This prevents unauthorized code from being executed, protecting the system from malware and tampering.
Market Presence
BlackBerry had a strong presence in CES 2024, where they showcased QNX strengths and versatile applications in automotive. The main focus was on the launch of QNX Software Development Platform 8.0, QNX Hypervisor in the cloud with Amazon AWS and Stellantis, Digital Cockpit with Google, and QNX Sound; an audio development platform for Software Defined Audio in the car.
With its significant market presence in the automotive industry, BlackBerry QNX software includes QNX® Neutrino® OS, QNX® Platform for ADAS, QNX® OS for Safety, QNX® CAR Platform for Infotainment, QNX® Platform for Digital Cockpits, QNX® Hypervisor 2.2 and QNX acoustics middleware.
Application Scale:
BlackBerry QNX is the market leader for safety-certified embedded software in automotive. Automakers and Tier 1s, including Aptiv, BMW, Bosch, Ford, GM, Honda, Mercedes-Benz, Toyota, and Volkswagen, trust BlackBerry QNX software for a broad range of critical systems. These include Advanced Driver Assistance Systems (ADAS), Digital Cockpits and Secure Data Gateways, all of which are becoming increasingly prevalent in vehicles. BlackBerry QNX has a considerable share of the automotive operating system market. According to BlackBerry, QNX is currently deployed in over 235 million vehicles worldwide.
Market Share:
QNX, Linux, and Android are the three main mainstream automotive operating systems worldwide. According to GMInsights, QNX holds 34% of the market share in 2022 and is expected to grow at a lucrative pace by 2032.
In conclusion, QNX is a highly suitable and widely adopted operating system for automotive applications. Its microkernel architecture, focus on Functional Safety, and robust security features, make it a reliable choice for embedded systems in cars. Despite facing competition from Linux-based systems, Android Automotive, and other RTOS alternatives, QNX's proven track record and ongoing advancements not only ensure its relevance and competitiveness in the automotive market but also solidify its position as a top choice for industry professionals. The versatility and adaptability of QNX further highlight its ability to meet the evolving demands of the automotive industry, providing a solid foundation for innovation and development in vehicle technologies.
Written by Li Ting - Reviewed by Ahmed