QNX OS for Safety
The QNX® OS for Safety is assessed to be compliant with two functional safety standards: ISO 26262 at ASIL D and IEC 61508 SIL3. It provides a reliable platform on which application developers can build safety critical systems that must meet the most stringent functional safety requirements in a variety of markets including, automotive, industrial automation, energy generation and railway transportation. Its predecessor is the QNX OS for Automotive Safety.
The current version of the product is based on QNX SDP 6.5.0 SP1 and contains the following components:
- Certified binaries (Neutrino kernel with APS and multicore support)
- Compiler toolchain qualification
- Safety Manual
- Installation and usage guide
The product is supported on multiple hardware platforms, including x86 and ARM platforms with multi-core capabilities through SMP.
The QNX OS for Safety incorporates many key characteristics required of a safety certified system. These include:
- Design safe state — a well-defined state to which the kernel reverts when it encounters a situation that it cannot handle
- Isolation — a spatial and temporal separation between application processes, and between applications processes and the kernel itself
- Scheduling predictability — guaranteed processor resources according to thread priorities, assurance against "lazy" resource allocations, and scheduling analysis through techniques such as deadline and rate monotonic scheduling
IEC 61508 codifies practices and standards associated not only with the production of code for mission- and safety- critical systems, but also with the resulting product. IEC 61508 provides recommendations or requirements for:
- Processes to be applied during the development lifecycle of software used in critical applications
- Techniques and tools to be applied to the software
- Target failure measures for systems acting in low demand, high demand or continuous mode
IEC 61508 provides the basis for many market-specific standards, such as IEC62304 (medical), and the CENELEC EN 5012x series (railway transportation).