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.
The real time operating systems can be of 2 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 robot welds too early or too late, the car cannot be sold, so it is a hard real time system that require to complete car welding by robot hardly on the time.
Soft real time operating system:
This operating systems provides some relaxation in time limit.
For example – Multimedia systems, digital audio system 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 signaled 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 scheduling, called, priority based preemptive scheduling is used by real time systems.
The advantages of real time operating systems are as follows-
Maximum consumption –
Maximum utilization of devices and system. Thus more output from all the resources.
Task Shifting –
Time assigned for shifting tasks in these systems are very less. For example in older systems it takes about 10 micro seconds. In shifting one task to another and in latest systems it takes 3 micro seconds.
Focus On Application –
Focus on running applications and less importance to applications which are in queue.
Real Time Operating System In Embedded System –
Since size of programs are 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 type of systems.
The disadvantages of real time operating systems are as follows-
Limited Tasks –
Very few task run at the same time 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 interrupt signals to response earliest to interrupts.
Thread Priority –
It is not good to set thread priority as these systems are very less pron to switching tasks.
Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.
- Difference between Hard real time and Soft real time system
- Difference between Real-time Tasks and Non-Real-time Tasks
- Difference between Firm Real-time Tasks and Soft Real-time Tasks
- Applications of Real-time System
- Basic Model of a Real-time System
- Timing Constraints in Real-time System
- Difference between Batch Processing and Real Time Processing System
- Difference between Delay and Deadline Constraint in Real-time System
- Feedback Structure of a Real-time System
- Embedded Real-time System
- Classification of Events in Real-time System
- Difference between Time Sharing OS and Real-Time OS
- Least Slack Time (LST) scheduling Algorithm in real-time systems
- Real Time Systems
- Tasks in Real Time systems
- Resource Reservation Protocol in Real-time Systems
- Scheduling in Real Time Systems
- Real-time Transport Control Protocol (RTCP)
- Characteristics of Real-time Systems
- Conditioning in Real-time Systems
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.