You are on page 1of 22

Evolution of Operating System

Operating System
Course Code: 14B11CI511
Evolution(Types Of Operating Systems)
1. Batch Processing
2. Multiprogramming
3. Multitasking
4. Real Time
5. Distributed System
Batch Processing
Batch processing is a technique in which an Operating System collects
the programs and data together in a batch before processing starts.
Batch Processing (Contd..)

An operating system does the following activities related to batch


processing −
The OS defines a job which has predefined sequence of commands,
programs and data as a single unit. Jobs with similar needs are
batched together and executed through the processor as a group.
Operator sort jobs as a deck of punch cards into the batch with similar
needs.
The OS keeps a number a jobs in memory and executes them without
any manual information.
Jobs are processed in the order of submission, i.e., first come first
served fashion.
When a job completes its execution, its memory is released and the
output for the job gets copied into an output spool for later printing or
processing.
Memory Layout of A Batch Operating System
Batch Processing (Contd..)

 Advantages
 In a batch job execute one after another saving time from
activities like loading compiler
 During batch execution no manual intervention is needed
 Disadvantages
 Memory limitation
 Interaction input output devices directly with the CPU
Multiprogramming
 Sharing the processor, when
two or more programs reside in
memory at the same time, is
referred as multiprogramming.
 Multiprogramming assumes a
single shared processor.
Multiprogramming increases
CPU utilization by organizing
jobs so that the CPU always has
one to execute.
Multiprogramming
 In multiprogramming system, when one program is waiting for I/O transfer; there is another
program ready to utilize the CPU. So it is possible for several jobs to share the time of the CPU.
Multiprogramming
An OS does the following activities related to multiprogramming.

 The operating system keeps several jobs in memory at a time.

 This set of jobs is a subset of the jobs kept in the job pool.

 The operating system picks and begins to execute one of the jobs in
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 never idle, unless there are no jobs to
process.
Multiprogramming
Advantages
 High and efficient CPU utilization.
 User feels that many programs are allotted CPU almost
simultaneously.
Disadvantages
 CPU scheduling is required.
 To accommodate many jobs in memory, memory
management is required.
Techniques of Multiprogramming
 Appropriate program mix
 The kernel keeps a mix of CPU-bound and I/O-bound programs
in memory, where
 A CPU-bound program is a program involving a lot of
computation and very little I/O. It uses the CPU in long bursts
—that is, it uses the CPU for a long time before starting an I/O
operation.
 An I/O-bound program involves very little computation and a
lot of I/O. It uses the CPU in small
 If two prog. arrive at same time one is iob and second is cb,
Then which should execute first??
Multi Programming
Time-Sharing System(Multi Tasking)
Multitasking is when multiple jobs are executed by the CPU simultaneously
by switching between them. Switches occur so frequently that the users may
interact with each program while it is running.
 An OS does the following activities related to
multitasking −
 The user gives instructions to the operating system or to a
program directly, and receives an immediate response.
 These Operating Systems were developed to provide interactive
use of a computer system at a reasonable cost.(Fast Response)
 As the system switches CPU rapidly from one user/program to
the next, each user is given the impression that he/she has
his/her own CPU, whereas actually one CPU is being shared
among many users.
 Swapping :- The technique of temporarily removing a
process from the memory of a computer system.
Real Time System
 Real-Time Application :- A program that responds to
activities in an external system within a maximum time
determined by the external system. Types of real time
systems based on timing constraints:
 Hard Real Time
 Soft Real Time
Hard real time system –

 Hard real time system –


 This type of system can never miss its deadline. Missing the
deadline may have disastrous consequences.
 The usefulness of result produced by a hard real time system
decreases abruptly and may become negative if tardiness
increases. Example: Flight controller system.
Soft real time system

 Soft real time system –

 This type of system can miss its deadline occasionally with


some acceptably low probability. Missing the deadline have no
disastrous consequences. The usefulness of result produced by
a soft real time system decreases gradually with increase in
tardiness.
 Example: Telephone switches.
Distributed Environment
 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.
Benefits of Distributed Operating Systems
Spooling
Spooling is an acronym for simultaneous peripheral
operations on line. Spooling refers to putting data of
various I/O jobs in a buffer. This buffer is a special area in
memory or hard disk which is accessible to I/O devices.
 An operating system does the following activities related to
distributed environment −
 Handles I/O device data spooling as devices have different data
access rates.
 Maintains the spooling buffer which provides a waiting station
where data can rest while the slower device catches up.
 Maintains parallel computation because of spooling process as a
computer can perform I/O in parallel fashion. It becomes possible
to have the computer read data from a tape, write data to disk and
to write out to a tape printer while it is doing its computing task.

You might also like