To understand the difference between Uni-programming vs Multi Programming vs Time Sharing systems, let’s study them one at a time
Uni-programming – In uni-programming system jobs are submitted one by one to the system. From within the batch, the jobs are processed one by one. A collection of jobs forms a batch (batch processing) from which the jobs are executed one by one. Every user submits his/her job to the operator who forms a batch of jobs. The entire system is used by one process at a time. The sequence of steps is as follows:
Go through the below presentation which depicts the working of one of the batch. Note that the CPU time is wasted while the job is doing I/O.
In multi-programming more than one process can reside in the main memory at a time. Thus, when process P1 goes for I/O operation the CPU is not kept waiting and is allocated to some another process (lets say P2). This keeps the CPU busy at all times.
The presentation below shows the working of a multi programming OS
1. No user interaction
The concept of time sharing overcomes the problem of no user interaction as faced in the above two strategies. Time sharing is the logical extension of multi programing. In time sharing multiple jobs are executes at the same time and the CPU switches among them so frequently that each user can interact with each program while it is running. Time sharing system requires that each user be provided with input device (keyboard or mouse) and an output device (monitor) to interact with the system. This decreases the response time of the system for each user process. This gives each user the illusion that the CPU is working solely for him/her.
The presentation below tries to depict such a situation. Think of the processes from three different users. The CPU shifts between at regular intervals of time. While the CPU is with one of the process, the other users can interact with their process by doing some I/O.
|Uni-Programming||Multi Programming||Time Sharing|
|1. No user interaction||1. No user interaction||1. User interaction possible|
|2. Only one process uses the entire system resources at any given time||2. Multiple process can use system resources at same time||2. Multiple process can use system resources at same time|
|3. Less CPU utilization||3. More CPU utilization||3. More CPU utilization|
Previous Next Introduction to Operating System Operating system functions and services