OS2
OS2
Shinde Institute
of Technology
DEPT: Computer Engineering
Operating System 1
I/O Structure
After I/O starts, control returns to user
program only upon I/O completion
◦ Wait instruction idles the CPU until the next
interrupt
◦ Wait loop (contention for memory access)
◦ At most one I/O request is outstanding at a time,
no simultaneous I/O processing
After I/O starts, control returns to user
program without waiting for I/O completion
◦ System call – request to the OS to allow user to
wait for I/O completion
◦ Device-status table contains entry for each I/O
device indicating its type, address, and state
◦ OS indexes into I/O device table to determine
device status and to modify table entry to include
interrupt
Operating System 2
Storage Definitions and Notation Review
The basic unit of computer storage is the bit. A bit can contain one of two
values, 0 and 1. All other storage in a computer is based on collections of bits.
Given enough bits, it is amazing how many things a computer can represent:
numbers, letters, images, movies, sounds, documents, and programs, to name a
few. A byte is 8 bits, and on most computers it is the smallest convenient chunk
of storage. For example, most computers don’t have an instruction to move a bit
but do have one to move a byte. A less common term is word, which is a given
computer architecture’s native unit of data. A word is made up of one or more
bytes. For example, a computer that has 64-bit registers and 64-bit memory
addressing typically has 64-bit (8-byte) words. A computer executes many
operations in its native word size rather than a byte at a time.
Computer manufacturers often round off these numbers and say that a
megabyte is 1 million bytes and a gigabyte is 1 billion bytes. Networking
measurements are an exception to this general rule; they are given in bits
(because networks move data a bit at a time).
Operating System 3
Storage Structure
Main memory – only large storage media that
the CPU can access directly
◦ Random access
◦ Typically volatile
Secondary storage – extension of main memory
that provides large nonvolatile storage
capacity
Hard disks – rigid metal or glass platters
covered with magnetic recording material
◦ Disk surface is logically divided into tracks, which are subdivided into sectors
◦ The disk controller determines the logical interaction between the device and
the computer
Solid-state disks – faster than hard disks,
nonvolatile
◦ Various technologies
◦ Becoming more popular
Operating System 4
Storage Hierarchy
Operating System 5
Storage-Device Hierarchy
Operating System 6
Caching
Operating System 7
Clustered Systems
Operating System 8
Operating System Structure
Multiprogramming (Batch system) 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
Operating System 9
Memory Layout for Multiprogrammed System
Operating System 10
Operating-System Operations
Interrupt driven (hardware and
software)
◦ Hardware interrupt by one of the devices
◦ Software interrupt (exception or trap):
Software error (e.g., division by zero)
Request for operating system service
Other process problems include infinite
loop, processes modifying each other or
the operating system
Operating System 11
Operating-System Operations (cont.)
Operating System 13
Process Management
A process is a program in execution. It
is a unit of work within the system.
Program is a passive entity, process
is an active entity.
Process needs resources to
accomplish its task
◦ CPU, memory, I/O, files
◦ Initialization data
Process termination requires reclaim
of any reusable resources
Single-threaded process has one
program counter specifying location
of next instruction to execute
◦ Process executes instructions sequentially,
Operating System 14
Process Management
Activities
The operating system is responsible for the following activities in
connection with process management:
synchronization
Providing mechanisms for process
communication
Providing mechanisms for deadlock
handling
Operating System 15
Memory Management
To execute a program all (or part) of
the instructions must be in memory
All (or part) of the data that is
importance
Entire speed of computer operation
◦ Free-space management
◦ Storage allocation
◦ Disk scheduling Operating System 18
Performance of Various Levels of Storage