Types of the operating system:
- the most commonly used desktop operating system is “Microsoft Windows” with a market share of around 76.45%. macOS by Apple Inc. is in second place 17.72%, and the varieties of Linux are collectively in third place 1.73%.
- In the mobile sector (including smartphones and tablets), Android’s share is up to 72% in the year 2020. According to third-quarter 2016 data, Android’s share of smartphones is 87.5 percent with also a growth rate of 10.3 percent per year, followed by Apple’s iOS with 12.1 percent with per year decrease in market share of 5.2 percent, while other operating systems amount to just 0.3 percent.
- Linux distributions are dominant in the server and supercomputing sectors. Other specialized classes of operating systems, such as embedded and real-time systems, exist for many applications.
Types of the operating system:
- Simple Batch operating system
- Multiprogramming Batch System
- Distributed operating System
- clustered Operating system
- Embedded Operating system
- Realtime Operating System
Simple Batch operating system:
This Operating system runs similar jobs in batch, Basically, the operating system does not interact with the user. the user only able to submit the job to the operator with help of cards or taps.
the similar jobs are grouped together into batches with the assistance of some operator and these batches are executed one by one. for instance, allow us to assume that we’ve 10 programs that require to be executed. Some programs are written in C++, some in C and rest in Java. Now, anytime after we run these programmes individually then we’ll load the compiler of that specific language then execute the code. But what if we make a batch of those 10 programmes. The benefit with this approach is that, for the C++ batch, you would like to load the compiler just one occasion. Similarly, for Java and C, the compiler must be loaded just the once and also the whole batch gets executed. the subsequent image describes the working of a Batch software.
Advantages of Batch Operating System:
- It is very difficult to guess or know the time required for any job to complete. Processors of the batch systems know the way long the task would be when it’s in queue
- Multiple users can share the batch systems
- The idle time for the batch system is incredibly less
- It is easy to manage large work repeatedly in batch systems
Disadvantages of Batch Operating System:
- The computer operators should be known with batch systems
- Batch systems are hard to debug
- It is sometimes costly
- The other jobs will expect an unknown time if any job fails
- Examples: Payroll System, Bank Statements, etc.
Multiprogramming Batch System:
- The following figure shows the memory layout for a multiprogramming system.
- An OS does the subsequent activities associated with multiprogramming.
- The software keeps several jobs in memory at a time.
- This set of jobs may be a subset of the roles kept within the job pool.
- The software picks and begins to execute one among the roles within the memory.
- Multiprogramming operating systems monitor the state of all active programs and system resources using memory management programs to ensures that the CPU is rarely idle unless there are not any jobs to process.
- High and efficient CPU utilization.
- The user feels that several programs are allotted CPU almost simultaneously.
- CPU scheduling is required.
- To accommodate many roles in memory, memory management is required.
Distributed operating System:
- Multiple systems involved, users at one site utilize the resources of systems and other sites for resource-intensive tasks.
- Fast processing.
- Less load on the Host Machine.
- Types of Distributed Operating Systems
- Following are the 2 varieties of distributed operating systems used:
- Client-Server Systems
- Peer-to-Peer Systems
Clustered Operating system:
- Symmetric Cluster: In this type of clustering, all the nodes run applications and monitor other nodes at the same time.
- Asymmetric Cluster: In this type of clustering, one of the nodes is in a hot standby mode, while the rest of the nodes run different applications. The node which is in hot standby mode continuously monitors the entire cluster and acts as a replacement if any of the nodes fails.
- Parallel Cluster: These clusters enable multiple users to access the same data on the shared storage. It is accomplished by using special software versions and applications.
- Load Balancing clusters: In this type of cluster, nodes share the workload for load balancing which enhances the system performance.
- High Availability: To increase the availability of the clustered system, additional nodes are present in the cluster. These extra nodes are put to use when any of the existing nodes fails. These clusters are known as failover clusters or HA clusters.
- High Performance
- Increased fault tolerance
- High scalability
- Expensive to implement
- System establishment, monitoring, and maintenance is complex
- Since it’s dedicated to a specific job, so it’s fast.
- Low cost.
- These consume less memory and other resources.
- Only one job may be performed.
- It is difficult to upgrade or is almost scalable.
Real-time Operating System:
- There is maximum utilization of devices and resources.
- These systems are almost error-free.
- Real-time Operating System using by algorithms is very complex.
- Specific device drivers are used for responding to the interrupts ASAP.