Evolution
Evolution
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
Monitor point of view: The monitor controls the sequence of events. For this to be so, much of
the monitor must always be in main memory and available for execution. That portion is
referred to as the resident monitor. The rest of the monitor consists of utilities and common
functions that are loaded as subroutines to the user program at the beginning of any job that
requires them. The monitor reads in jobs one at a time from the input device (typically a card
reader or magnetic tape drive). As it is read in, the current job is placed in the user program
area, and control is passed to this job. When the job is completed, it returns control to the
monitor, which immediately reads in the next job. The results of each job are sent to an output
device, such as a printer, for delivery to the user.
Processor point of view: At a certain point, the processor is executing instructions from the
portion of main memory containing the monitor. These instructions cause the next job to be
read into another portion of main memory. Once a job has been read in, the processor will
encounter a branch instruction in the monitor that instructs the processor to continue
execution at the start of the user program. The processor will then execute the instructions in
the user program until it encounters an ending or error.
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
• With each job, instructions are included in a primitive form of job control language (JCL).
• This is a special type of programming language used to provide instructions to the monitor.
Certain other hardware features are also desirable
• Memory protection
• Timer
• Privileged instructions
• Interrupts
• user program executes in a user mode, in which certain areas of memory are protected
from the user’s use and in which certain instructions may not be executed.
• The monitor executes in a system mode, or what has come to be called kernel mode, in
which privileged instructions may be executed and in which protected areas of memory may
be accessed.
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
Storage structure:
• The CPU can load instructions only from memory, so any programs to run must be
stored in main memory.
• Main memory commonly is implemented in a semiconductor technology called
dynamic random-access memory
• ROM is a read only memory that is used to store the static programs such as bootstrap
loader.
• Ideally, we want the programs and data to reside in main memory permanently.
• Main memory is usually too small to store all needed programs and data permanently
• Main memory is a volatile storage device that loses its contents when power is turned
off or otherwise lost.
• Most computer systems provide secondary storage as an extension of main memory.
• Volatile storage loses its contents when the power to the device is removed so that
the data must be written to nonvolatile storage for safekeeping.
• Caches can be installed to improve performance.
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
I/O Structure:
A large portion of operating system code is dedicated to managing I/O, both
because of its importance to the reliability and performance of a system.
• A general-purpose computer system consists of CPUs and multiple device controllers
that are connected through a common bus. Each device controller is in charge of a
specific type of device.
• The device controller is responsible for moving the data between the peripheral
devices that it controls and its local buffer storage
• Operating systems have a device driver for each device controller.
• To start an I/O operation, the device driver loads the appropriate registers within the
device controller.
• The controller starts the transfer of data from the device to its local buffer. Once the
transfer of data is complete, the device controller informs the device driver via an
interrupt that it has finished its operation. This is called as interrupt driven I/O.
CS8493-OPERATING SYSTEMS
ROHINI COLLEGE OF ENGINEERING & TECHNOLOGY
• The direct memory access I/O technique transfers a block of data directly to or from
its own buffer storage to memory, with no intervention by the CPU. Only one interrupt
is generated per block, to tell the device driver that the operation has completed,
CS8493-OPERATING SYSTEMS