Types of Operating Systems
Operating Systems can be categorized according to different criteria like whether an operating
system is for mobile devices (examples Android and iOS) or desktop (examples Windows and Linux).
Here, we are going to classify based on functionalities an operating system provides.
8 Main Operating System Types: Categorized by Purpose and Functionality
Batch Operating System
Multi-Programming Operating System
Multi-Processing Operating System
Multi-User Operating Systems
Distributed Operating System
Network Operating System
Real-Time Operating System
Mobile Operating Systems
1. Batch Operating System
This type of operating system does not interact with the computer directly. There is an operator
which takes similar jobs having the same requirements and groups them into batches. It is the
responsibility of the operator to sort jobs with similar needs. Batch Operating System is designed to
manage and execute a large number of jobs efficiently by processing them in groups.
Batch Operating System
Advantages of Batch Operating System
Multiple users can share the batch systems.
The idle time for the batch system is very little.
It is easy to manage large work repeatedly in batch systems.
Disadvantages of Batch Operating System
CPU is not used efficiently. When the current process is doing IO, the CPU is free and could
be utilized by other processes waiting.
The other jobs will have to wait for an unknown time if any job fails.
In a batch operating system, average response time increases as all processes are processed
one by one.
Examples of Batch Operating Systems: Payroll Systems, Bank Statements, etc.
2. Multi-Programming Operating System
Multiprogramming Operating Systems can be simply illustrated as more than one program is present
in the main memory and any one of them can be kept in execution. This is used for better utilization
of resources.
Multi Programming
Advantages of, Multi-Programming Operating System
CPU is better utilized, and the overall performance of the system improves.
It helps in reducing the response time.
Multi-tasking/Time-sharing Operating systems
It is a type of Multiprogramming system with every process running in round robin manner. Each task
is given some time to execute so that all the tasks work smoothly. Each user gets the time of the CPU
as they use a single system. These systems are also known as Multitasking Systems. The task can be
from a single user or different users. The time that each task gets to execute is called quantum. After
this time interval is over, the OS switches over to the next task.
Advantages of Time-Sharing OS
Each task gets an equal opportunity.
Fewer chances of duplication of software.
CPU idle time can be reduced.
Resource Sharing: Time-sharing systems allow multiple users to share hardware resources
such as the CPU, memory, and peripherals, reducing the cost of hardware and increasing
efficiency.
Improved Productivity: Time-sharing allows users to work concurrently, thereby reducing the
waiting time for their turn to use the computer. This increased productivity translates to
more work getting done in less time.
Improved User Experience: Time-sharing provides an interactive environment that allows
users to communicate with the computer in real time, providing a better user experience
than batch processing.
Disadvantages of Time-Sharing OS
Reliability problem.
One must take care of the security and integrity of user programs and data.
Data communication problem.
High Overhead: Time-sharing systems have a higher overhead than other operating systems
due to the need for scheduling, context switching, and other overheads that come with
supporting multiple users.
Complexity: Time-sharing systems are complex and require advanced software to manage
multiple users simultaneously. This complexity increases the chance of bugs and errors.
Security Risks: With multiple users sharing resources, the risk of security breaches increases.
Time-sharing systems require careful management of user access, authentication, and
authorization to ensure the security of data and software.
3. Multi-Processing Operating System
A Multi-Processing Operating Systemis a type of Operating System in which more than one CPU is
used for the execution of resources. It betters the throughput of the System.
Multiprocessing Operating System
Advantages of a Multi-User Operating System
It increases the throughput of the system as processes can be parallelized.
As it has several processors, so, if one processor fails, we can proceed with another
processor.
4. Multi-User Operating Systems
These systems allow multiple users to be active at the same time. This system can be either a
multiprocessor or a single processor with interleaving.
5. Distributed Operating System
These types of operating systems are a recent advancement in the world of computer technology
and are being widely accepted all over the world and, that too, at a great pace. Various autonomous
interconnected computers communicate with each other using a shared communication network.
Independent systems possess their own memory unit and CPU. Systems. These systems' processors
differ in size and function. The major benefit of working with these types of operating systems is that
it is always possible that one user can access the files or software which are not present on his
system but on some other system connected within this network, i.e., remote access is enabled
within the devices connected to that network.
Distributed OS
Advantages of Distributed Operating System
Failure of one will not affect the other network communication, as all systems are
independent of each other.
Electronic mail increases the data exchange speed.
Since resources are being shared, computation is highly fast and durable.
Load on host computer reduces.
These systems are easily scalable as many systems can be easily added to the network.
Delay in data processing reduces.
Disadvantages of Distributed Operating System
Failure of the main network will stop the entire communication.
To establish distributed systems, the language is not yet well-defined.
These types of systems are not readily available as they are very expensive. Not only that the
underlying software is highly complex and not understood well yet.
Examples of Distributed Operating Systems are LOCUS, etc.
6. Network Operating System
These systems run on a server and provide the capability to manage data, users, groups, security,
applications, and other networking functions. These types of operating systems allow shared access
to files, printers, security, applications, and other networking functions over a small private network.
One more important aspect of Network Operating Systems is that all the users are well aware of the
underlying configuration, of all other users within the network, their connections, etc., and that’s
why these computers are popularly known a tightly coupled systems.
Network Operating System
Advantages of Network Operating System
Highly stable, centralized servers.
Security concerns are handled through servers.
New technologies and hardware upgrades are easily integrated into the system.
Server access is possible remotely from different locations and types of systems.
Disadvantages of Network Operating System
Servers are costly.
The user has to depend on a central location for most operations.
Maintenance and updates are required regularly.
Examples of Network Operating Systems are Microsoft Windows Server 2003, Microsoft Windows
Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, BSD, etc.
7. Real-Time Operating System
These types of OSs serve real-time systems. The time interval required to process and respond to
inputs is very small. This time interval is called response time. Real-time systems are used when
there are time requirements that are very strict like missile systems, air traffic control systems,
robots, etc.
Types of Real-Time Operating Systems
Hard Real-Time Systems: Hard Real-Time OSs are meant for applications where time
constraints are very strict, and even the shortest possible delay is not acceptable. These
systems are built for saving lives like automatic parachutes or airbags which are required to
be readily available in case of an accident. Virtual memory is rarely found in these systems.
Soft Real-Time Systems: These OSs are for applications where time is less strict.
For more, refer to the Difference Between Hard Real-Time OS and Soft Real-Time OS.
Real-Time Operating System
Advantages of RTOS
Maximum Consumption: Maximum utilization of devices and systems, thus more output
from all the resources.
Task Shifting: The time assigned for shifting tasks in these systems is very less. For example,
in older systems, it takes about 10 microseconds to shift from one task to another, and in the
latest systems, it takes 3 microseconds.
Focus on Application: Focus on running applications and give less importance to applications
that are in the queue.
Real-time operating system in the embedded system: Since the size of programs is small,
RTOS can also be used in 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.
Disadvantages of RTOS
Limited Tasks: Very few tasks run at the same time and their concentration is very less on a
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.
Device driver and interrupt signals: It needs specific device drivers and interrupt signals to
respond earliest to interrupts.
Thread Priority: It is not good to set thread priority, as these systems are much less prone to
switching tasks.
8. Mobile Operating Systems
Mobile operating systems are designed specifically for mobile devices such as smartphones and
tablets. Examples of such operating systems are Android and iOS. These operating systems manage
the hardware and software resources of the device, providing a platform for running applications and
ensuring a seamless user experience.
Advantages of Mobile Operating Systems
User-Friendly Interfaces: Mobile operating systems are designed to be intuitive and easy to use,
making them accessible to a wide range of users.
Extensive App Ecosystems: The availability of a vast number of applications allows users to
customize their devices to meet their specific needs.
Connectivity Options: Mobile operating systems support multiple connectivity options, enabling
users to stay connected wherever they go.
Regular Updates: Mobile operating systems receive regular updates, including new features, security
patches, and performance improvements.
Disadvantages Mobile Operating Systems
Battery Life Constraints: Despite advancements in power management, battery life remains a
challenge for mobile devices, especially with heavy usage.
Security Risks: Mobile devices are susceptible to various security threats, such as malware and
phishing attacks, which can compromise user data.
Fragmentation: In the case of Android, the wide range of devices and customizations can lead to
fragmentation, making it difficult for developers to ensure compatibility across all devices.
Limited Hardware Resources: Mobile devices have limited processing power, memory, and storage
compared to desktop computers, which can affect the performance of resource-intensive
applications.