View stunning SlideShares in full-screen with the new iOS app!Introducing SlideShare for AndroidExplore all your favorite topics in the SlideShare appGet the SlideShare app to Save for Later — even offline
View stunning SlideShares in full-screen with the new Android app!View stunning SlideShares in full-screen with the new iOS app!
A programmer would first write the program on paper.
The programmer or a data entry operator would then punch the program and its data on cards or paper tape.
The programmer would the submit the deck of cards or the paper tape containing the program and data at the reception counter of computer system.
An Operator would then take the cards deck pr paper tape and load it manually into the system from card reader or paper tape reader. Before loading of the job, the operator had to use the front panel switches of the system to clear any previous data from memory.
The Operator would then set the appropriate switches in the front panel to run the job.
Finally the operator would print and submit the result of execution of the job at the reception counter for the programmer to collect it later.
It is interleaved execution of multiple jobs(often referred to as tasks of same user) in a single user system.
Progress of different tasks is viewed on different windows in a multitasking system
Card reader reads one job after another, and stored in the main memory.
The processed output of various jobs are stored in the memory and printed one by one, on the printer.
CPU switches from one task to another while reading or processing the task
Ultimately saves CPU idle Time as well as peripheral Devices Idle Time.
Each user has at least one program executing in memory process.
If processes don’t fit in memory, swapping moves them in and out to run
Virtual memory allows execution of processes not completely in memory
USER JOB Operating System CPU Execution in progress OS AREA User program Area
It is interleaved execution of two or more different and independent programs by a computer.
Multiprogramming needed for efficiency
Single user cannot keep CPU and I/O devices busy at all times
Multiprogramming organizes jobs (code and data) so CPU always has one to execute
A subset of total jobs in system is kept in memory
One job selected and run via job scheduling
When it has to wait (for I/O for example), OS switches to another job
Partition 1 Partition n User Area Divided into n Equal Sized Partition OS Area Operating System Partition 2 Partition 3 Partition 4 . . Multiprogramming memory model with fixed number of memory partition
OS Free OS Free OS Free OS Free P1 P2 P1 P1 P2 P3 OS Free Free 2 P1 P3 OS Free P4 P1 P3 OS Free Free 3 P3 OS Free 1 P5 P3 Free 2 P4 Free 2 Free 2 P4 P1 Enters P2 Enters P3 Enters P4 Enters P1 Left P5 Enters
This Module take care of allocation and De-Allocation of memory space to programs in need of particular resource.
All data in memory before and after processing
All instructions in memory in order to execute
Memory management determines what is in memory when
Optimizing CPU utilization and computer response to users
Memory management activities
Keeping track of which parts of memory are currently being used and by whom
Deciding which processes (or parts thereof) and data to move into and out of memory
Allocating and de-allocating memory space as needed.
When the program to be executed is very large to be accommodate in the memory, the problem of how to execute the program arises, as the program has to be in main memory to get executed. This problem is solved by the “SWAPPING”
One purpose of OS is to hide peculiarities of hardware devices from the user
I/O subsystem responsible for
Memory management of I/O including buffering (storing data temporarily while it is being transferred), caching (storing parts of data in faster storage for performance), spooling (the overlapping of output of one job with input of other jobs)
This module take care of interpreting user commands, and directing system resources to process the commands. With this mode of interaction with a system, users are not much concerned about hardware details of the system.