In this article, we are going to discuss “What is Operating System?”. We will discuss the various needs of an operating system, the generic architecture of an operating system, and the various roles that an operating system performs. So, let’s get started.
What is Operating System?
You might use a windows PC or a Macintosh device or some Linux device. What are Windows, macOS, and Linux? Yes, these are all Operating Systems (OS).
However, the question arises that why there are so many different operating systems. Do we even need them? What exactly is an operating system and what does it do?
So, to answer all these questions, let us consider a scenario. Consider that there are no Operating Systems in the computers or phones or laptops. So, now let us say we want to open “Google Chrome” on the laptop. How would we do that? For that, we will need to write a program instructing our computer to open Google Chrome for us.
Now, what if we want to create a word file or a PPT? For that, again we will have to write a program to perform our action.
So, without any Operating System in our computers, we will have to write programs to perform even the smallest tasks, and that too every time when we want to perform these tasks.
So, this is very inconvenient for us. This is the main reason why we need an operating system. We need an operating system for our convenience.
So, an Operating System is an interface between the user (i.e. us who use the computer) and the hardware. It lets the user interact with the hardware via using some application programs (or simply applications like word, power-point presentation, etc.).
As discussed above, the primary goal with which Operating Systems were developed is convenience. However, as the industry grew up, throughput and programming experience also became very important. So, for different types of needs, different operating systems came into the market.
Now that we have an idea of “What is Operating System”, let us now understand the general architecture of an operating system.
General Architecture of an Operating System
The diagram above shows the general architecture of an operating system. So, we can see that the users try to interact with the hardware via the software layer. The software layer has applications and some system software. So, the flow is like this.
The user interacts with the applications or the system software. The system software and applications via the operating system send messages or request to the hardware. The hardware, after performing the desired actions, also sends the message to the applications or system software via the operating system, and the applications or system software again sends the messages to the user.
So, this is how the Operating System acts as an interface between the user and the hardware.
So, now that we have a complete understanding of “What is Operating System”, let us now understand the roles an operating system performs in the computer.
Roles of an Operating System
An operating system performs the following roles:
1. Resource Manager/Governer: The Operating System acts as a resource manager so that the load on the processor can be minimum. This is especially helpful in the case of parallel processing when there are multiple processors and they need the resources simultaneously. Techniques like time multiplexing and space multiplexing are used to manage resources.
2. Process Management: The Operating System acts as a process manager to increase multi-tasking and reduce the idleness of a processor. This in turn increases the efficiency of the processor. Various CPU scheduling algorithms are used for process management by the Operating System.
3. Storage Management: Storage management means managing the files stored on the hard disk. NIFS, CIFS, etc are used for storage management by an Operating System.
4. Memory Management: Storage Management and Memory Management sound similar but are very different roles of an Operating System. Storage Management, as already discussed, is for the management of files stored on the hard disk. Memory Management, on the other hand, is actually RAM management, We know that all the processes that run in the processor require some memory in RAM. However, the size of RAM is limited. So, in order to get maximum output and maximum multitasking and multiprocessing, RAM or memory management is also done by the Operating System.
5. Security and Privacy: Security and Privacy are yet another important roles performed by an operating system. Security is required not only from external sources but also within the processes running together (inter-process security). Various steps are taken in different operating systems to ensure security and privacy. For instance, Windows uses Kerberos Security Protocol.
So, these are the different roles performed by the Operating System.
With this, we conclude our discussion on “What is Operating System?”. We hope that you have understood the meaning and roles of an operating system and also the need for it.