There are six types of operating system i.e.
- Batch Processing operating system
- Multi-Processing operating system
- Time sharing operating system
- Real time operating system
- Network operating system
- Distributed operating system
1. Batch Processing operating system
In the batch system requires the grouping of similar jobs which consists of programs data and system commands. The instructions, data and some controlled information are submitted to the computer operator in the form of job. The users are not allowed to interact with the computer system. Thus, the programs that do not require interaction are well served by batch OS.
Since the jobs are executed in the FIFO manner, the batch OS require very simple CPU scheduling techniques. In addition, batch system allow only one user program to reside in the memory at a time, thus memory management is also very simple affairs in batch OS.
Since only one program is in execution at a time any time critical device management is not required, which simplifies the I/O management. Since the files are accessed in a serial manner, a concurrency control mechanism is not required, making the file management also very simple matter in batch OS.
The problems with Batch Systems are as follows:
- Lack of interaction between the user and the job.
- CPU is often idle, because the speed of the mechanical I/O devices is slower than the CPU.
- Difficult to provide the desired priority .
2. Multi-processing operating system
A computer’s capability to process more than one task simultaneously is called multiprocessing. A multiprocessing operating system is capable of running many programs simultaneously, and most modern network operating systems (NOSs) support multiprocessing. These operating systems include Windows NT, 2000, XP, and UNIX.
A multiprocessing system uses more than one processor to process any given workload, increasing the performance of a system’s application environment beyond that of a single processor’s capability. Collections of processors arranged in a loosely coupled configuration and interacting with each other over a communication channel have been the most common multiprocessor architecture.
- Increase throughput
- Economy of scale
- Increased reliability
- If one processor fails then it will affect in the speed
- Multiprocessor systems are expensive
- Complex OS is required
- Large main memory required
3. Time Sharing Operating System
Time-sharing is a technique which enables many people, located at various terminals, to use a particular computer system at the same time. Time-sharing or multitasking is a logical extension of multiprogramming. Processor's time which is shared among multiple users simultaneously is termed as time-sharing. The main difference between Multi programmed Batch Systems and Time-Sharing Systems is that in case of multi programmed batch systems, the objective is to maximize processor use, whereas in Time-Sharing Systems, the objective is to minimize response time. Multiple jobs are executed by the CPU by switching between them, but the switches occur so frequently. Thus, the user can receive an immediate response. For example, in a transaction processing, the processor executes each user program in a short burst or quantum of computation. That is, if n users are present, then each user can get a time quantum. When the user submits the command, the response time is in few seconds at most.
- Provides the advantage of quick response
- Avoids duplication of software
- Reduces CPU idle time
- Problem of reliability
- Question of security and integrity of user programs and data
- Problem of data communication
4. Real Time Operating System
The time taken by the system to respond to an input and display of required updated information is termed as the response time. A real-time system is defined as a data processing system in which the time interval required to process and respond to inputs is so small that it controls the environment. It is a multitasking operating system that aims at executing real-time applications. Real-time operating systems often use specialized scheduling algorithms so that they can achieve a deterministic nature of behavior. The main object of real-time operating systems is their quick and predictable response to events. They either have an event-driven design or a time-sharing one. An event-driven system switches between tasks based of their priorities while time-sharing operating systems switch tasks based on clock interrupts.
- Hard real-time systems guarantee that critical tasks complete on In hard real-time systems, secondary storage is limited or missing and the data is stored in ROM. In these systems, virtual memory is almost never found.
- Soft real-time systems are less restrictive. A critical real-time task gets priority over other tasks and retains the priority until it completes. Soft real-time systems have limited utility than hard real-time systems. For example, multimedia, virtual reality, Advanced Scientific Projects like undersea exploration and planetary rovers, etc.
5. Network Operating System
A Network Operating System runs on a server and provides the server the capability to manage data, users, groups, security, applications, and other networking functions. The primary purpose of the network operating system is to allow shared file and printer access among multiple computers in a network, typically a local area network (LAN), and a private network or to other networks. Certain standalone operating systems, such as Microsoft Windows NT and Digital’s OpenVMS, come with multipurpose capabilities and can also act as network operating systems. Some of the most well-known network operating systems include Microsoft Windows Server 2003, Microsoft Windows Server 2008, Linux and Mac OS X.
Mainly there are two types of network operating.
Peer-to-peer network operating systems allow users to share resources and files located on their computers and to access shared resources found on other computers. In a peer-to-peer network, all computers are considered equal; they all have the same privileges to use the resources available on the network. Peer-to-peer networks are designed primarily for small to medium local area networks. Windows for Workgroups is an example of the program that can function as peer-to-peer network operating systems.
Client/server network operating systems allow the network to centralize functions and applications in one or more dedicated file servers. The file servers become the heart of the system, providing access to resources and providing security. The workstations (clients) have access to the resources available on the file servers. The network operating system allows multiple users to simultaneously share the same resources irrespective of physical location. Novell Netware and Windows 2000Server are examples of client/ server network operating systems.
6. Distributed Operating System
A distributed operating system is an operating system that runs on several machines. Its purpose is to provide a useful set of services, generally to make the collection of machines behave more like a single machine. Distributed operating systems typically run cooperatively on all machines whose resources they control.
These machines might be capable of independent operation, or they might be usable merely as resources in the distributed system. In some architectures, each machine is an equally powerful peer as all the others. In other architectures, some machines are permanently designated as master or are given control of particular resources. In yet others, elections or other selection mechanisms are used to designate some machines as having special roles, often controlling roles.
- Sharing of resources.
- Computation speedup