Everyone must have been familiar with the term OS (Operating Systems) as we use it in our PC’s, laptops, mobile etc. But what does a RTOS means? Whats so special about it? What are its applications? Wait up, this article focuses on answering these three major questions and illusrrates the importance of RTOS.
What is RTOS:
RTOS stands for Real Time Operating Systems and is widely used in many Embedded Applications. An RTOS is nothing but an operating system that supports real time applications by providing the processed result within the allotted time and possess a pretty deterministic behavior.
When coming to real time applications the response time should be very less to maintain a efficient functioning of the system and that way RTOS remain distinct from the general OS.Meanwhile basic structure of RTOS is pretty similar to the general OS other than the reduction in time latency and real time task scheduling.
Let me explain with an example, Air bags in our cars will suit the best. When a overspeeding car meets a accident Air bags should be deployed instantly to avoid the death of the driver. Even it was delayed by few milli seconds the damage will be catastrophic. So that’s exactly RTOS comes into play. Using RTOS the time limit the Air bags should be deployed from the moment vehicle meets an accident can be determined and therefore the task can be performed with no flaws.
Difference between General OS and RTOS
- Task Scheduling : This was the main difference when comparing a RTOS with General OS. In General purpose OS are capable of handling various applications and are optimized to run variety of applications at the same time. Since it switches between various processes very fast it creates a illusion that it all happens at the real time. Whereas in RTOS it schedule the tasks based on priority level and perform it with in the deadline. In real time embedded applications time latency can create a major difference and that’s why this task scheduling has a great significance in RTOS.
- Deterministic Behavior : The next important difference is their deterministic behavior. It means that OS consume only certain period of time for performing a certain operation. Therefore the time period of process completion are deterministic in nature. On the other hand general purpose OS need not to worry about the time latency.
- In RTOS all the operations handled by the Kernel are Preemptible.
Classification of RTOS:
Like i said earlier, the behavior of RTOS should be deterministic and the time latency should be minimum in nature. RTOS is classified into three types based on their tolerance in performing the operations within the deadline.
- Hard Real Time :These type of RTOS should strictly follow the deadlines associated with the tasks. There will be no tolerance for a missed deadline, it will lead to ultimate failure of the system.
- Firm Real Time: These type of RTOS should follow the deadlines whereas missing the deadlines will create undesired effects or reduction in quality. It will not lead to the failure of the system.
- Soft Real Time: These type of RTOS may miss deadlines occasionally but it will not create much impact in the quality of the system.
- Windows CE
- Free RTOS
Hope this article will be very helpful on understanding the basic concepts behind the Real time Operating systems (RTOS).