8 Critical Considerations for RTOS Selection
A real-time operating system (RTOS) is typically an option for most embedded projects. But is it always necessary? To answer this, you must carefully analyze and understand what an application is mandated to deliver to determine whether using an RTOS is an “extra” or a project requirement. Most embedded project programmers are not familiar with RTOS requirements and constraints. As a result, selection of an RTOS is often based on a programmer’s familiarity and comfort with the product as well as its performance. Unfortunately, this criteria is not usually sufficient. There are different RTOSs to select from that include open source RTOS, internally developed RTOS and commercial RTOS. Choosing the right one depends on the technical features and commercial aspects of the RTOS system. Technical features •Scalability: Most RTOSs are scalable; only the required code is added to the final memory footprint. Therefore, finding granular scalability in an RTOS is important because it saves memory usage. •Portability: An application may outgrow its hardware as product requirements increase. An RTOS with appropriate capabilities can be ported between specific target systems and processor architectures. •Run time facilities: Run time facilities are kernel services like events handling, inter-task communication, interrupts and synchronizations. Different application systems have different requirement sets that require frequent RTOS comparison between the kernel-level facilities they provide.