What is an Operating System? An OS can be defined as a system software that is designed to manage computer hardware and software resources. It is also meant to provide common services for computer programs. In layman language, it is a collection of software that does all the basic tasks like managing file, process, and memory. It acts as a manager of all the resources, and an interface between user and machine.
Types of Operating Systems
Basically, computer operating systems can be categorized based on their usages. The 5 most widely used OS are as follows:
Batch Operating System
This type of operating system isn’t designed to interact with the computer directly. What happens is that, an operator comes into play which takes similar jobs having same requirement and then, group them into batches. Here, the operator has the responsibility of sorting the jobs having the similar needs.
Advantages of Batch Operating System:
- Batch Systems’ processors know how much time the job would take when it is queued.
- Batch systems can be shared among multiple users.
- Managing large work repeatedly in batch systems becomes easy.
- Batch system’s ideal time is very less.
Disadvantages of Batch Operating System:
- It is very difficult to know the time required by any job to complete.
- The computer operators should be trained to work with batch systems.
- Debugging batch systems is a hard process.
- Costly (sometimes).
- If any job fails, it will take an unknown amount of time for other jobs to get started.
Examples of Batch based Operating System: Payroll System, Bank Statements etc.
Time Sharing Operating Systems
Here, a specific amount of time is given to each task that ensures smooth working for all the tasks. Each user gets CPU time as they use single systems. These are also known as Multitasking Systems. The task to be performed can be from single user or different users as well. Quantum is the termed coined for the time that each task gets for its execution. When this time is over, the OS switches to the next task.
Advantages of Time-Sharing OS:
- An equal opportunity is given to each task.
- Chances of duplication of software decreases.
- CPU ideal time is reduced.
Disadvantages of Time-Sharing OS:
- It isn’t very much reliable.
- Care of security and integrity of user programs and data must be taken.
- Data communication problem
Examples of Time-Sharing OSs are: Multics, Unix etc.
Distributed Operating Systems
This is a recent development in the the world of operating system and computer technology. These are now being widely accepted at a great pace. It utilizes a shared communication network to communicate among the various autonomous interconnected computers. Independent systems have their own memory and CPU. They are known as Loosely Coupled Systems or Distributed Systems. The system processors differ in sizes and functions. Remote Access is the major benefit of using this type of operating system. It means that a user can always access the files or software which are not actually present on his/her system but on some other system connected within the network.
Advantages of Distributed Operating System:
- Though connected over the network, all systems are independent from each other. So, failure of one system will not affect the rest of the network communication.
- Data exchange speed gets increased with the electronic mail.
- Computation becomes highly fast and durable as the resources are shared.
- Host computer’s load reduces.
- OS is easily scalable as many as required systems can be easily added to the network.
- Data processing becomes faster as the delay reduces.
Disadvantages of Distributed Operating System:
- Main network’s failure will stop the entire communication.
- Establishing distributed systems require the language which is not well defined yet.
- These are not readily available being expensive.
- Underlying software is highly complex and not understood well yet.
Examples of Distributed Operating System are- LOCUS etc.
Network Operating System
By running on a server, these systems provide the ability to manage date, users, groups, security, applications, and other networking functions. Such operating systems allow shared access of files, printers, security, apps, and other functions over a small private network. Another important point of network operating systems is that all the users using it knows the underlying configuration of all other users within the network, their individual connections, etc. This is the reason why these computers are also known as tightly coupled systems.
Advantages of Network Operating System:
- Centralized servers are highly stable.
- Servers handle the security issues.
- New tech and hardware up-gradation is easy with the system.
- Servers can be accessed remotely from different locations and systems.
Disadvantages of Network Operating System:
- Server cost increases.
- Users get dependent on central location for most operations.
- Regular maintenance and updates are required.
Examples of Network Operating System are: Microsoft Windows Server 2003, Microsoft Windows Server 2008, UNIX, Linux, Mac OS X, Novell NetWare, and BSD etc.
Real Time Operating System
These operating systems serves the real-time processes. It takes a very small time interval to process and respond to the inputs. This is known as response time. Real-time OS are used where there are strict time requirements like missile systems, air traffic control systems, robots, etc.
There are two types of real time operating systems. They are as follows –
Hard Real-Time Systems
These are meant for applications where time constraints are very strict and even the shortest delay is not acceptable. They are usually employed in life saving applications like automatic parachutes or air bags which are demanded to be readily available in case of any accident. Virtual memory is never found here.
Soft Real-time Systems
These types of OS are used in applications where constraint are not less strict.
Advantages of RTOS:
- Maximum Consumption: Devices and systems are utilized to the maximum capacity. Thus, more output is generated using all the resources.
- Task Shifting: Time assigned for shifting tasks in these systems is minimal. In older systems, it used to take about 10 micro seconds in shifting one task to another, while the latest systems takes about 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 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 type of systems.
Disadvantages of RTOS:
- Limited Tasks: Errors are avoided by running very few tasks at the same time and their concentration is very less on few applications.
- 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.
Examples of Real-Time Operating Systems are: Scientific experiments, medical imaging systems, industrial control systems, weapon systems, robots, air traffic control systems, etc.
These are the major types of operating systems that are widely used in the industry.