Real Time Operating System (RTOS)
Real-time operating systems (RTOS) are used in environments where a large number of events, mostly external to the computer system, must be accepted and processed in a short time or within certain deadlines. such applications are industrial control, telephone switching equipment, flight control, and real-time simulations. With an RTOS, the processing time is measured in tenths of seconds. This system is time-bound and has a fixed deadline. The processing in this type of system must occur within the specified constraints. Otherwise, This will lead to system failure.
Examples of the real-time operating systems: Airline traffic control systems, Command Control Systems, Airlines reservation system, Heart Pacemaker, Network Multimedia Systems, Robot etc.
The real-time operating systems can be of 3 types –
- Hard Real-Time operating system:
These operating systems guarantee that critical tasks be completed within a range of time.
For example, a robot is hired to weld a car body. If the robot welds too early or too late, the car cannot be sold, so it is a hard real-time system that requires complete car welding by robot hardly on the time.
- Soft real-time operating system:
This operating system provides some relaxation in the time limit.
For example – Multimedia systems, digital audio systems etc. Explicit, programmer-defined and controlled processes are encountered in real-time systems. A separate process is changed with handling a single external event. The process is activated upon occurrence of the related event signalled by an interrupt.
Multitasking operation is accomplished by scheduling processes for execution independently of each other. Each process is assigned a certain level of priority that corresponds to the relative importance of the event that it services. The processor is allocated to the highest priority processes. This type of schedule, called, priority-based preemptive scheduling is used by real-time systems.
- Firm Real-time Operating System:
RTOS of this type have to follow deadlines as well. In spite of its small impact, missing a deadline can have unintended consequences, including a reduction in the quality of the product. Example: Multimedia applications.
The advantages of real-time operating systems are as follows-
- Maximum consumption –
Maximum utilization of devices and systems. Thus more output from all the resources.
- Task Shifting –
Time assigned for shifting tasks in these systems is very less. For example, in older systems, it takes about 10 microseconds. Shifting one task to another and in the latest systems, it takes 3 microseconds.
- Focus On Application –
Focus on running applications and less importance to applications that are in the queue.
- Real-Time Operating System In Embedded System –
Since the size of programs is small, RTOS can also be embedded systems like in transport and others.
- Error Free –
These types of systems are error-free.
- Memory Allocation –
Memory allocation is best managed in these types of systems.
The disadvantages of real-time operating systems are as follows-
- Limited Tasks –
Very few tasks run simultaneously, and their concentration is very less on few applications to avoid errors.
- Use Heavy System Resources –
Sometimes the system resources are not so good and they are expensive as well.
- Complex Algorithms –
The algorithms are very complex and difficult for the designer to write on.
- Device Driver And Interrupt signals –
It needs specific device drivers and interrupts signals to respond earliest to interrupts.
- Thread Priority –
It is not good to set thread priority as these systems are very less prone to switching tasks.
- Minimum Switching – RTOS performs minimal task switching.