Types of operating systems





An operating system can also be divided into many types according to it’s working module.

The main types of operating systems are:

Batch System:
In older days I.e. in second generation computer from 1955-65, the most common device were card reader and tape driver. The common o/p devices were printer, tap driver and punch card. The user does not directly interact with computer system. The programmer responsibility was to prepare the program, data or any information that is to be processed and their punch it on the cards, finally submitted to the computer operator. At some time later, when the computer finish the task whatever job it was running, and operator finally print the result. And hand over to the programmer. Much computer time was wasted while operators were walking around the machine room.
The method adopted to reduce the waste time was batch system.
The operating system used at that time was very simple, as its main job is to transfer the control automatically from one job to next.
The basic idea behind this was to collect the similar information and read them onto a magnetic tape. After collecting a batch of jobs, the tap was brought into the machine room, where it was mounted on the tap driver. The operator then loaded a special program which read the first job on tape and run it, the o/p was written into a second tape instead of being printed. After each job finished the operating system automatically read next job from the tape and begin running it when all the jobs were done. The next batch and brought the output for printing. This method is also called offline batch system.
After some advancement, the printer is connected to the main computer system, in that, as the first job finished instead of writing the o/p on tape, it is directly printed through the printer. This is known as online batch system.
Now a days batch system have been almost replaced by GUI systems , although the internal functions of an operating system are done even now through batch system , batch system is only used by very few technical workers and hobbyist.

 

Multi processing system

After the batch system operating system designer developed a concept of multiprogramming in which several jobs are in the main memory. As we know that single user cannot keep CPU or any other input output devices busy at all the time. Multiprogramming concept increases the CPU utilisation by managing continuous job to the CPU.

In this concept, memory is being portioned into several pieces, with different job in each partition. The operating system could pick and start the execution of one in the memory. Whatever the job does not need CPU. I.e., the job has to do only with input and output devices and the CPU is idle at that time. The operating system switches from one job to another in the memory and CPU execute a portion of it fill this job issue a request for I/O or the first one has finished its o/p and soon

 

multi programmed system

multi programmed system

 

Another main feature of this type of operating system was the ability to read job from the cards onto the disk as soon as they were brought to the computer room. Then, whenever the running job finished, the operating system could load a new job from the disk into the non empty partition and run it. This technique is called spooling. The system adopted this was multiprogramming system.

 advantage of multiprocessing
a. High cpu utilisation
b. It appears that many programs are allocated CPU almost simultaneously.

disadvantage of multiprocessing
a. Jobs may have different sizes therefore, memory management is needed to accommodate then in memory.
b. Many jobs may be ready to run on the CPU, which implies that we need CPU scheduling.

 

Timesharing System:

Multiprogramming both system provided such an environment where various system resources (CPU, memory, I/O devices) where utilised efficiently. But still interaction of user with computer was not possible.
Time sharing system was advance form of multiprogramming system in which CPU execute multiple task by switching from one task to another. But now user can interact computer system provided direct communication between the user and the computer system. The user can give instruction to operating system through keyboard and wait for immediate result. The response time was approximately less than 1 second.
Time sharing operating system also allows users to share computer. The commands and instructions used in time sharing system was very short so little CPU time are needed for each user. So system switches very fast from one user to another due to very fast switching, user got the impression that entire computer system is dedicated to particular user but it is actually shared with number of users.
In time sharing system, one more important concepts is introduced that is virtual memory, sometime the size of any program is too large to fit on physical memory, in that case, the particular program will not execute.
The main advantage of virtual memory is to store the remaining portion of program that is not fitting in main memory so as to run that particular program.
Time sharing system also provides the concepts of file system, i.e. the proper management of file on the memory or any storage device. UNIX operating system is an example.

Multiprogramming both system provided such an environment where various system resources (CPU, memory, I/O devices) where utilized efficiently. But still interaction of user with computer was not possible.

Time sharing system was advance form of multiprogramming system in which CPU execute multiple task by switching from one task to another. But now user can interact computer system provided direct communication between the user and the computer system. The user can give instruction to operating system through keyboard and wait for immediate result. The response time was approximately less than 1 second.

Time sharing operating system also allows users to share computer. The commands and instructions used in time sharing system was very short so little CPU time are needed for each user. So system switches very fast from one user to another due to very fast switching, user got the impression that entire computer system is dedicated to particular user but it is actually shared with number of users.

In time sharing system, one more important concepts is introduced that is virtual memory, sometime the size of any program is too large to fit on physical memory, in that case, the particular program will not execute.

The main advantage of virtual memory is to store the remaining portion of program that is not fitting in main memory so as to run that particular program.

Time sharing system also provides the concepts of file system, i.e. the proper management of file on the memory or any storage device. UNIX operating system is an example.

Real time operating system:
Real time operating system has well defined fixed time limit i.e. processing must be done within the defined time limit otherwise the system will fail. Some of the applications of the real time operating system are:-
a. System that controls scientific experiments
b. Fuel- injection
c. Air traffic system
d. Control system
Examples of real time operating system are harmony (developed by the national research council of Canada), maruti (university of Maryland) etc

distributed system:
An interesting development that begins taking place during the mid 1980’s is the growth of network of personal computer running distributed operating system. In true distributed system, users should not aware of where their program are being run or where there files are located. That should be handled automatically and efficiently by the operating system. Distributed system allows program to run on several processor at the same time.
Some of the examples of distributed os are ameaba, angle, mach etc.

 

multiprocessor system
Another concept was developed i.e. Multiprocessor concept. At any given time there is a technological limit on the speed with which a single processor ship can operate. If the system work load cannot be handled satisfactory by the single processor. The response is to apply multiple processors to the problem and is known as multiprocessor environment.

symmetrical multiprocessing system
In symmetrical multiprocessing system, all the operations are essentially identical and perform identical function.
Some of the characteristics are:-
a. Any processor can initiate the I/O operation, can handle any external interrupt and can run any process in the system.
b. All the processes are potentially available to handle whatever need to be done next.

symmetric multiprocessing system

symmetric multiprocessing system

Asymmetrical multiprocessing system
Asymmetry implies some differences between processor. Thus, in asymmetric multiprocessing, different processor do different things. One processor will be the supervisor of other in asymmetric multiprocessing, if the supervisor processor handling the specific work fails, the entire system will go down.

Assymetric multiprocessing system

Assymetric multiprocessing system



Related posts:

  1. Introduction to operating system Operating System: An operating system is a collection of system...