Types of OS

 1. Single process OS

In this OS only one process can be executed at one time. This is a very old type of OS. Imagine there are 3 processes, then P1 will be executed first, once the first process is executed then only P2 will be executed followed by P3. In this process there are various drawbacks such as no maximum CPU utilization, process starvation, and no high priority process will be executed first. Example: MS DOS

2. Multiprogramming OS:
As we populate the ready queue with multiple jobs, let's consider when job J1 is actively using the CPU. If J1 enters an I/O operation, like copying and pasting, to maintain CPU utilization and prevent idle time, we promptly schedule job J2 for execution. This approach ensures that the CPU stays engaged and productive while J1 handles its I/O task. Context-switching plays a major role here.
Context switching refers to the operating system's technique for managing multiple processes on a single CPU. Imagine a scenario where there are many processes waiting to be executed, similar to studying for multiple subjects during an exam. For example, when focusing on studying physics during a JEE examination, all relevant books and materials—such as personal notes, friends' notes, and reference books—are open and actively used. If we decide to switch subjects suddenly, say to study chemistry, we bookmark where we left off with physics and set aside those materials temporarily. Similarly, if we have two processes P1 and P2, and the CPU is executing and P1 goes to perform I/O and we begin executing P2, this is known as context switching. When P1 goes to perform I/O we store all this information till we execute it last so that when P1 is done executing I/O the CPU is aware of where to begin executing this process again.
 
3. Multitasking OS:
It is an extension of multiprogramming OS. It also contains a single CPU and uses context-switching. The only difference is that it has time-sharing. In the previous OS if one job went to perform I/O then only context switching would take place, i.e. another job could be executed......if the job didn't go for I/O then until it was executed the next process couldn't be executed but here that is not the case!! In this OS we assign certain time to various jobs to get executed. This helps to prevent process starvation and helps in the maximization of CPU utilization. Also, if a high-priority job is to be executed with the help of context switching can be done. 

4. Multiprocessing OS:
In this also context switching, time sharing is applied, but the only difference is there are multiple CPUs here!! Here we can execute multiple tasks simultaneously. Here in case, one CPU is malfunctioning then others can still work but in the previous OS due to the presence of one CPU, the entire system will break down!
5. Distributed OS:
It is also known as loosely coupled OS. Imagine a big project, like building a skyscraper. Instead of one person doing all the work, many workers (computers) are involved. Each worker has their own set of tools (operating system), but they all follow a master plan (distributed system software) to ensure they work together efficiently. If one worker has to stop working, others can take over, so the construction doesn’t stop. For example: Google uses thousands of servers working together to handle searches, store data, and run applications. Each server has its own operating system, but they all cooperate to provide fast and reliable services.

6.RTOS (Real time OS):
A Real-Time Operating System (RTOS) is used in situations where many events need to be handled quickly and within strict time limits. RTOS often deals with inputs from outside sources, like sensors or user actions, and must respond promptly. 
1. Flight Control: In an airplane, when a pilot moves the control stick, the RTOS processes this input immediately to adjust the plane’s flight path. 
2. Touch Screens: In a smartphone, when you tap the screen, the RTOS quickly processes this touch input to open an app or perform an action.
3. In systems like medical devices or industrial machinery, a delayed response could lead to dangerous situations.

1. Hard Real-Time Operating System:  These operating systems guarantee that critical tasks are completed within a time range. 
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 the robot hardly on time.
2. A soft real-time operating system: this is used where few delays in time duration are acceptable. That is, if the given task takes a few seconds more than the specified time, then no critical damage occurs. In-car entertainment systems and dashboard displays, where responsiveness to user inputs and real-time data updates (like GPS navigation) are critical for driver and passenger convenience.
3. Firm real-time operating system: A firm real-time operating system lies between the hard and soft real-time operating system.






























Comments

Popular posts from this blog

Indexed allocation

Thrashing

Basics of paging