When selecting a commercial RTOS, consider the following:
Safety: Will you need to certify your embedded system to IEC 61508 (industrial), IEC 61511, EN 50128 (rail), IEC 62304 (medical) or ISO 26262 (automotive) or another industry standard? The choice of a pre-certified RTOS could help improve the system reliability and reduce your safety certification effort.
Security: A microkernel architecture, adaptive partitioning and a hypervisor can all help protect safety-critical processes from attack. In addition, some commercial real-time operating systems, like the one from BlackBerry QNX, include a security policy. This enables system architects and integrators to control access to specific system resources and determine the type of access that is permitted (e.g. no root access). Security is achieved with a layered approach that includes mechanisms such as secure boot, integrity measurement, sandboxing, access controls and rootless execution.
Development environment: A POSIX-compliant RTOS will simplify migration from a Linux-based prototype to a more reliable, secure and safe production system. Developers ramp up quickly on the QNX® Software Development Platform (SDP), because it looks and feels like Linux and uses the same tools, such as the GNU Compiler Collection (gcc).
Graphics and human machine interface (HMI): Does your embedded system drive one or more displays with HMIs? Choosing an RTOS with a graphics subsystem that provides all the functionality necessary to develop interactive user interfaces is key. A graphics framework that supports industry standards such as OpenGL ES means developers can more readily build graphics user interfaces and benefit from the hardware acceleration provided by graphics processing units (GPUs).
Maintenance and updates: Keeping your product up-to-date over its lifetime may require the ability to apply patches or easily add functionality. In a microkernel-based OS, a new service can be added to the user address space, without any kernel changes, whereas a monolithic OS requires the entire kernel to be modified.
Hardware support: An RTOS must be customized for each processor or board, so look for an RTOS that offers board support packages (BSPs) for your preferred hardware to jumpstart your development. In addition, an RTOS with an extensive list of BSPs indicates it is widely used in multiple embedded markets. For example, BlackBerry QNX provides board support packages for a long list of hardware, for x86 and ARM processors.
Licensing: Will you pay before, during or after your product is developed? An open source OS comes with hidden costs – there can be considerable engineering effort required to keep up with OS maintenance, patches and modifications to the kernel. Commercial RTOS vendors offer a variety of licensing options.
Vendor reputation and quality of support: Look for a software vendor with a positive reputation that provides easy access to quality documentation and excellent customer support. In addition, you may value a services team that helps develop and secure your product, navigate safety certification, and help ensure you hit your start of production dates.
Total cost of ownership: A commercial RTOS can provide lower total cost of ownership than an open source OS, such as Linux. BlackBerry QNX provides ongoing maintenance and support, allowing our customers to free up engineers for product innovation and differentiation, instead of kernel code changes.