QNX Real Time

Overview

The QNX Neutrino® Realtime Operating System (RTOS) is a full-featured and robust RTOS designed to enable the next-generation of products for automotive, medical, transportation, military and industrial embedded systems. Microkernel design and modular architecture enable customers to create highly optimized and reliable systems with low total cost of ownership. With the QNX Neutrino® RTOS, embedded systems designers can create compelling, safe, and secure devices built on a highly reliable RTOS software serving as the foundation that helps guard against system malfunctions, malware, and cyber security breaches.

  • High reliability with low risk
  • Advanced security mechanisms
  • Scalable and Standards Conforming
  • CPU accelerated graphics support
  • Extensive board support packages

QNX Neutrino architecture: Virtually any component can be automatically restarted if it fails, because every driver, protocol stack, filesystem, and application runs in the safety of memory-protected user space.

QNX RTOS

Benefits

  • High reliability with low risk
  • Advanced security mechanisms
  • Self-healing systems
  • Scalable, standards-conforming
  • Guaranteed system resources
  • Extensive hardware optimized board support
  • Advanced graphics subsystem with full GPU acceleration
  • Efficient product development

The QNX Neutrino RTOS offers built-in mission critical reliability, safety, and security. The QNX Neutrino RTOS provides a common software platform that can be deployed for safety certified and non-certified projects across a broad range of hardware platforms supporting a wide array of boards based on ARMv7, ARMv8, and x86 architectures.

The QNX® Neutrino® RTOS is used in demanding applications where failure-is-not-an-option. This standard of excellence has been built upon decades of real world experience and learning.

High reliability with low risk

Since 1980, manufacturers have relied on BlackBerry QNX technology to power their mission-critical applications — everything from medical instruments and Internet routers to telematics devices, power generators, 911 call centers, process control applications, high-speed rail and air traffic control systems.

Small or large, simple or distributed, these systems share an unmatched reputation for operating 24 hours a day, 365 days a year. Time-tested and field-proven, the QNX Neutrino RTOS sets the bar in the industry for reliability, fault tolerance, and scalability.

Advanced security mechanisms

The QNX Neutrino RTOS incorporates a complete multi-level policy-driven security model, that leverages BlackBerry’s legendary security technology and expertise.

Fine-grained privilege control, 256-bit AES encrypted file systems, address space layout randomization (ASLR), heap and stack protection, rootless execution and mandatory access control (MAC) provide unparalleled security for your system.

The advanced, layered security mechanisms, built directly into the OS and kernel enable you to build systems that offer the best possible security measures with features such as:

  • Granular control of system privilege levels
  • Modern, layered security architecture
  • Sandboxing
  • Integrity measurement
  • Secure Boot
  • Encrypted and self-verifying file systems
  • Mandatory access control
  • Heap, Stack, and Memory Protection, including ASLR
  • Rootless Execution
  • Anomaly Detection
  • All of the above result in a system with a reduced attack surface.

Self-healing systems

The BlackBerry QNX fault-isolating microkernel architecture, combined with the QNX High Availability Manager lends itself to systems that can provide unparalleled uptime and availability.

The QNX Neutrino RTOS provides a level of fault containment and recovery offered by no other commercial RTOS. Its microkernel architecture has every driver, protocol stack, file system, and application run outside the kernel, in the safety of memory-protected user space. Virtually any component can fail and be automatically restarted without affecting other components or the kernel.

Scalable, standards conforming

The same RTOS, tools, APIs, and source code are used for developing and implementing standards-conforming systems to meet all manner of requirements for single-processor and multi-processor systems, both large and small.

The QNX Neutrino RTOS was designed to conform to defacto industry standards as well as POSIX 1003.1 – and has achieved certification to the POSIX PSE52 profile specified by IEEE 1003.13-2003.

Guaranteed system resources

Real time scheduling ensures that threads run when they are supposed to, and the BlackBerry QNX patented adaptive partitioning guarantees that there is always enough access to CPU time to go around among program threads.

Under normal operating conditions, the BlackBerry QNX adaptive partitioning technology allows applications to use all available CPU cycles to maximize CPU and system efficiency, but during overload conditions, it enforces hard resource guarantees to ensure that all applications receive their budgeted share of resources.

Extensive hardware optimized board support packages

The QNX Neutrino RTOS has hardware-optimized support packages for the latest boards – the ones that matter to you; the ones you are developing on today.

The QNX Neutrino device drivers are implemented using a resource manager framework and, unlike conventional drivers, run in memory-protected user space and simplifies driver development for custom hardware. User-level drivers are easier to develop and debug, they do not require a kernel rebuild to embed new functionality, and are not kernel version sensitive. This implementation reduces development, debug, and certification time and effort.

GPU accelerated graphics support

The QNX Neutrino RTOS includes optimized support for a wide range of popular GPUs including those provided by Imagination, VeriSilicon, NVIDIA, Qualcomm, and Intel. The solution includes a graphics compositing windowing system (Screen) that has complete GPU hardware acceleration and can integrate multiple GUIs into a single scene.

Efficient product development

The QNX Neutrino RTOS enables rapid and efficient product development in a number of ways:

  • The microkernel architecture facilitates faster bug identification and resolution; and enables safe and rapid component upgrades without costly downtimes or system outages by moving development out of the kernel and into user space.
  • Just one OS and one set of binaries can target single-processor devices, SMP systems, or processor clusters.
  • Open-source UNIX, Linux, and other code can be ported with a simple recompile because QNX Neutrino achieves certification to the POSIX PSE52 profile specified by IEEE 1003.13-2003.
  • Standard POSIX APIs not only let developers easily reuse application code, but also provide a familiar development environment.
  • Development teams can reuse code and reduce their verification efforts thanks to field-tested binaries — drivers, applications, custom OS services – which can be implemented across entire product lines.
  • Out-of-the-box support for a wide range of networking protocols and flash file systems, and a built-in high availability solution reduce overall development work.

Technology

The QNX Neutrino is a full-featured and robust OS with a number of unique technological features that set it apart from all other competitive products.

Realtime

The QNX Neutrino RTOS provides high-performance and deterministic response times at the application level and in all subsystems. Thread priority inheritance eliminates priority inversion problems.

Multicore

The QNX Neutrino RTOS provides a full multi-core solution that has been deployed on multi-core processors in virtually every embedded environment. The solution offers:

  • Symmetric multiprocessing (SMP)
  • Asymmetric multiprocessing (AMP)
  • Bound multiprocessing (BMP)
  • Inherent scalability — symmetric and bound multiprocessing scale seamlessly to 4, 18, 16+ cores
  • Support for a wide range of popular multiprocessor SOCs and boards

In addition to its unparalleled reliability and self-healing capabilities, the QNX Neutrino microkernel architecture offers significant advantages over monolithic kernels.

Monolithic kernels

Monolithic kernels, such as Microsoft Windows or Linux, require either big kernel locks (BKL) or fine-grain locking. This architecture is problematic for the following reasons:

  • BKLs can cause long delays for threads requiring kernel access when the kernel is running on a different core, greatly degrading coherency.
  • Fine grained locking introduces a large amount of complexity into code, creating fragile, difficult to understand system level interactions, without solving the entire problem — timeliness of access is still restricted to the degree of locking implemented in the current subsystem.
  • Microkernel architecture

With the QNX microkernel, kernel operations are relatively few and of short duration. This minimal locking approach improves the performance of the rest of the system because neither BKL or fine grained locking approaches are necessary.

Long time-scale operations (including process managers) run in process space, and because of that, they do not halt the scheduling of other threads in the system: applications, drivers, or protocol stacks. Keeping extended duration operations in process threads (and outside the kernel) grants the microkernel the freedom to schedule regular process threads across multiple CPUs.

Efficient development

The QNX Neutrino RTOS enables rapid time-to-market for multi-core applications:

  • Reuse existing applications
  • Advanced visualization tools for multi-core systems
  • Multi-core debugging and optimization tools
  • SMP and BMP provide full visibility of all application processes and system resources
    POSIX certified

This rich, standards-based environment includes familiar shells, and command-line interfaces, as well as allows developers to quickly migrate Linux, UNIX, and other open source programs to BlackBerry QNX.

The QNX Neutrino RTOS is certified for conformance to the POSIX PSE52 Realtime Controller 1003.13-2003 System product standard. Government agencies as well as commercial customers can choose the QNX Neutrino RTOS with the assurance that it provides both the code portability and the realtime determinism needed for an array of military, networking, medical, and automotive systems.

Self-healing systems

Thanks to the microkernel architecture of the QNX Neutrino RTOS, virtually any component — even a low-level driver — can fail without damaging the kernel or other components. What is more, failed components can be restarted quickly and intelligently.

Adaptive partitioning

With the QNX Neutrino RTOS, spare CPU capacity is used when available (that is, processes can exceed their budget limits). However, if resources are constrained, processes are guaranteed to get their budgeted share.

Realtime scheduling ensures that process threads run when they are supposed to make sure that there is always enough CPU to go around – guaranteed.

High availability

If a device driver, protocol stack, or application experiences a problem, it does not take other components down with it. The QNX Neutrino RTOS high availability manager can terminate and restore the faulting component in isolation — often in just a few milliseconds, and without a reboot.

Networking

Supported networking technologies include IPv4, IPv6, IPSec, FTP, HTTP, SSH and Telnet. Unique transparent distributed processing enables an application to access resources on any node in a network for seamless peer-to-peer resource sharing.

Portability

Extensive support for POSIX standards facilitates application portability and rapid migration from Linux, UNIX, and other open source programs.

Runtime support and BSPs for the latest popular 32-bit and 64-bit chipsets from the ARM Cortex A-series and Intel/AMD x86 families lets designers select the best hardware platform for their embedded system, and then quickly get their systems up and running.

Security

BlackBerry QNX brings advanced, layered security mechanisms, built directly into the OS and kernel. With BlackBerry QNX you can build a system that offers the best possible security measures, such as:

  • Granular control of system privilege levels – restrict any process’s capabilities to only the elevated privilege level that is necessary for the specific operation (and only while required), without providing the process with unfettered access to the entire system. BlackBerry QNX features >50 distinct “abilities” that allow or deny operations with pinpoint accuracy across the system – even root processes can be limited.
  • Layered approach – comprehensive system approach that builds on existing and new SDP features. Incorporates industry best practices, such as chain of trust, integrity management, and mandatory access control (MAC). Provides the ability to audit and attest to the integrity of the system.
  • Sandboxing – limit the amount of damage a rogue process can do to only the “sandbox” it has been granted access.
  • Secure Boot – Trust zone / TPM maintains the chain of trust through signed code execution and image verification.
  • Encrypted file systems – the file system can be encrypted by dividing it into encryption domains, which can be locked, or unlocked for access. Strong AES 256 encryption is used, ensuring the safety of your data.
  • Self-verifying file systems – protect data using a read-only file system that compresses the files in blocks, yet still supports random access.
  • Reduced security attack surface – all processes, including drivers, file systems, etc. execute in user-mode, significantly reducing the damage compromised processes can do to the rest of the system.
  • Heap, Stack, and Memory Protection – heap, stack, and allocated memory blocks are protected by “guard pages” that the microkernel uses to detect and trap stack overflows and other “out of bounds” conditions usually associated with bugs or malware.
  • ASLR – The heap is protected by address space layout randomization (ASLR), which randomizes the stack start address and code locations in executable and libraries, as well as heap cookies, raising the difficulty level for attackers and malware.
  • Root-less operation – Root access is divided into >50 root level capabilities via QNX abilities. Processes can be limited to the QNX abilities they need. This removes the need for root access by limiting processes to QNX abilities.
  • Anomaly detection – Is a runtime behavior monitoring to detect anomalous behavior in the system. It will detect everything from periodic anomalies to illegal system call sequences. It can be trained and is continually self-learning. This is the first stage in offering a comprehensive system monitoring capability.
  • Integrity Measurement – A mechanism to securely log system activities to detect security violations (realized or attempted) or anomalous behavior in the system.

Graphics

QNX Neutrino includes a graphics compositing windowing system (Screen) that has complete GPU hardware acceleration and is capable of integrating multiple GUIs into a single scene. This scene is then rendered into one image that is associated with a display, allowing the designer to use the most appropriate graphics technology that corresponds with the image. Screen allows developers to build graphically rich, compelling UIs using built-in, high-performance OpenGL ES based transitions, supporting multi-touch displays, and rendering images from Qt, HTML5, video, and other technologies through a single compositing windowing system.

Integrated tool chain

The QNX® Momentics® Tool Suite offers all the development and debugging features commonly found in other Eclipse-based IDEs, plus unique BlackBerry QNX capabilities, such as multi-core profiling and an instrumented kernel (event gathering module).

Eclipse provides well-defined interfaces to ensure that tools work together seamlessly. Developers also benefit from an open, extensible platform for tool integration supported by a large and rapidly growing community of tool vendors and developers. They can plug in third-party tools, or build their own plug-ins using the industry-standard Eclipse framework.

FREE 30 DAY EVALUATION

free 30-day evaluation

This evaluation provides you with access to QNX® Software Development Platform, 7.0. If you have a commercial project and wish to evaluate QNX software, please follow these steps:

In order to receive your license keys please fill in the fields below. Please note that this form is for projects in the UK and Ireland. If you are somewhere else in the world, please continue your application here

* indicates required field