Introduction to Operating Systems – Types and Functions
Operating systems are the connecting link between software and hardware systems. Because of their existence, users can perform complex tasks such as process management and memory management without having to think about the underlying structure or the hardware and enjoy a seamless experience getting the best out of their devices. In this article, we will touch upon the existence, need and vitality of operating systems and also understand the different types available in the market for our use. Readers are encouraged to make notes and follow the words mentioned in the article meticulously.
The whole computer revolution, different types of gadgets that are as easy to use and easily accessible to anyone having no idea about technology. It is not just an overnight magic, but a great deal of work and a lot of programs working behind it. An essential part of any modern-day technology is an Operating System, which we will discuss in detail today.
Using a fancy term like Operating System (OS) could be very easy, but understanding its in-depth core meaning and functionalities is another. This article discusses a non-specialist, easy-to-understand approach to one of the most complex technical topics.
What is an Operating System?
The word operating system contains two words – Operating and Systems, which means a system that helps you manage and precisely as per its literal meaning. It essentially helps us organize complex systems, programs, and file management functions and controls all these tasks in a way that it can easily be used by even a layman who knows nothing about the system itself. Deep diving into the operating system as a technical component and its role in the smooth functioning of a computer, we can describe an operating system based on its three essential defining functions.
- Connecting link between user and Hardware: An OS acts as an intermediary between the two functioning parties, the user, and the computer hardware, enabling both to complete their task efficiently and conveniently.
- Resource Allocator: The modern-day OS is known for handling multiple tasks with the most negligible throughput quickly and efficiently. But the catch here is that the OS does all this on top of the limited Hardware and resources it gets. To make this possible, the Operating System does efficient resource utilization by allocating it to the right task at the right time. Managing this whole resource system is a significant function of the OS. Another essential feature of this role of OS is that it does this distribution unbiased, i.e., the entire division is driven only by efficiency. OS allocates the following hardware resources:
- CPU Time
- System Buses
- The base for Applications: OS serves as a medium for other programs and applications. All the other programs function on top of the OS.
Why use an Operating System?
A well-known proverb says: “Innovation is led by Invention,” which implies in this context, as it is evident that Operating Systems exist and are being used widely because there is a need for it. So to understand why it was required to be run in the first place, we need to know how systems used to run before OS was developed.
Before 1956, when IBM had not launched its first Operating System, computer work was done by loading programs via tape drives and punch drives and running them one by one. This was a prolonged and inefficient process as most of the CPU time was spent idle, it took a lot of time to load programs and unload and reload the subsequent users’ agenda. This led to the need to develop a program that could help the users to run multiple programs simultaneously, saving time.
Features of an Operating System
Jumping back to the modern era, the current operating systems have some efficient and advantageous features which make our work very easy. Three of these features are also its defining functions, as discussed in the “What is an Operating System?” section. Apart from that, following are the other features of the OS:
- File Management: As modern computers have a storage system, proper organization and hierarchy of files are crucial. This is also the responsibility of the OS.
- Booting: At the beginning of the computer system, the functions and programs are loaded from the Read Only Memory, and then the OS and the computer run according to that. This process also comes under the operations of OS.
- Device Management: Modern-day computers have a system of devices that run parallel to the computer. OS keeps a record of every device being attached and used with the system hardware at any given time.
- Error Detection: A computer system containing lots of critical data and programs crashing or failing is the last thing any person would want. The OS works to prevent such situations by constantly keeping track of the system and maintaining its bugs and faults.
Major Functionalities of Operating System: Components of Operating System
At the time of performing any task, the Operating System utilizes its two components: the Shell and the Kernel. Following are these components’ details and how they harmonize a function for the OS.
Shell (The Interpreter)
It interprets the code or program written in a human language into a language that can be understood by the machine and transfers this to the kernel.
It is called the Heart of the OS, and it is the kernel crucial to perform every task given to the OS. On receiving a request from the shell, it processes it and presents the output. The following are the critical kernel operations:
- Keeps a check on the state of a process to break it down to simpler terms and reviews the update on the request given by the user.
- Allocates memory to the running process.
- Maintains a schedule for all the processes to be run or run at a given time.
- File Management
Types of Operating Systems
As was aforementioned, the OS was developed due to a need that arose. The preliminary study of the OS is complete, with the analysis of how it and its needed functionalities changed over time.
This section contains a brief history of the various types of Operating Systems that were developed in the past and the ones that are still prevalent.
Batch OS worked on removing the biggest drawback of the traditional Computers discussed before, where every program was loaded and processed all over again. Instead, it worked on removing the downtime of loading the programs for similar tasks again and again.
Batch OS grouped the tasks with similar requirements and loaded and processed all of them at once. This saved a lot of time packing each job and its requirements separately.
Let us take an actual example:
Suppose you need to run ten programs in different languages on your system. Still, the key is all of them will run on separate compilers, and you need to close all the previous setups before you run the next compiler (this mimics the lack of memory in the early computers). Assume you were given the programs with languages in the order C++, Java, Python, Java, C++, Python, Java, C++, Java, Python. It would become an extremely taxing task, even with modern fast compilers and programs, to reload the compilers of the same languages.
Now imagine if these tasks were given to you in an ordered manner with all the programs in one language together. How easy and convenient would it be? This is precisely what Batch OS did.
Typical examples where these systems are still used are Payroll Systems and Bank Statements.
Its most significant advantage was that tasks were allocated in batches to the system, so a lot of time was saved in loading compilers and other requirements for the functions.
The disadvantage was that interactive or multiprogramming was still a far cry due to limited memory.
A Distributed OS is essentially a system that consists of multiple systems, either with or without separated hardware components, that contain the following four properties:
- Loosely Coupled
These components work under the influence of high-speed internet connectivity or a wired connection with constant communication. Each element contains a specific subpart of a more extensive application or task running individually on systems in parts. A very famous example is Solaris. This system utilizes the CPU in a very efficient way with minimum turnaround time.
But this system comes with the drawback of the complex schedule of the systems and the constant need for communication between sub-parts.
Multitasking OS is the most commonly known and used modern-day OS, with the most common example being the Windows series by Microsoft. This system efficiently switches between multiple tasks such that all of them work efficiently at the same time without any latency in any of them. This switching is also technically called Context Switching and is also known as the Time-Sharing System, as it simultaneously shares its time between multiple programs.
This is the OS that helps multiple systems to run and share information parallelly by sharing the data over the network, as is suggested by its name. A typical application of this OS is a program with multiple users, where each user is using the same server and functionality. The commonly known example of this system is Linux/Unix.
A real OS is a system with very fixed constraints on time. These systems are time bound, and even a millisecond latency can be extremely dangerous or critical. A typical example to understand such a system could be the air traffic control system.
The OS running modern smartphones, ubiquitous nowadays, is called the Mobile OS. Some of the well-recognized systems are Android, iOS, etc. Apart from phones, these systems are also used to run personal devices such as smartwatches, tablets, etc.
Examples of Operating Systems
Operating systems are everywhere. Every piece of technology that you are using today has an underlying operating system that lets you interact with the hardware components and provide with maximum throughput and efficiency. The most popular operating systems for desktops and laptops include Linux, Windows, and macOS. For mobile phones, the most popular operating systems seen include iOS and Android.
Operating System is an essential part of the modern-day technology world. Every smart appliance you can imagine is running based on one of these. In this article, we tried to understand the meaning of the term OS and briefly saw its various types with their specific usage and advantages and disadvantages.
Read more about learning paths at codedamn here
What is an operating system?
An operating system is a tool that enables communication between software and hardware. An operating system (OS) is the programme that, after being loaded into the computer by a boot programme, manages all the other application programmes in the computer.
How does operating system work?
The operating system (OS) oversees all the software and hardware on the computer. It carries out fundamental duties such processing input and output, managing files, memory, and processes, and managing peripheral devices like disc drives and printers.
What are the five types of operating systems?
The five types of operating systems are-batch OS, distributed OS, real-time OS, multitasking OS, and network OS.
The top five operating systems—Apple macOS, Microsoft Windows, Google’s Android OS, Linux, and Apple iOS—receive most of the attention in the IT sector.
What is the importance of an operating system?
An operating system is essential because it gives the users access to hardware resources, and It controls the computer’s memory, processes, and all software and hardware.
Sharing is caring
Did you like what Pooja Gera wrote? Thank them for their work by sharing it on social media.
- Understanding Time Sharing Operating Systems
- C VS C++ – Which one should you learn and why?