You are on page 1of 25

Introduction

What is an Operating System?


Functions of OS
Batch OS (Mainframe Systems)
Multiprocessor Systems
Time Sharing OS
Parallel OS
Distributed Systems
Real -Time Systems

Operating System Concepts


What is an Operating System?

A program that acts as an intermediary between a user of


a computer and the computer hardware.
Operating system goals:
Efficient use
User convenience
Noninterference
Act as platform for other software to run on computer
system.
Control and coordinates hardware components.

Operating System Concepts


Computer System Components

1. Hardware provides basic computing resources (CPU,


memory, I/O devices).
2. Operating system controls and coordinates the use of
the hardware among the various application programs for
the various users.
3. Applications programs define the ways in which the
system resources are used to solve the computing
problems of the users (compilers, database systems,
video games, business programs).
4. Users (people, machines, other computers).

Operating System Concepts


Computer System Components

Operating System Concepts


Operating System Definitions

Resource allocator manages and allocates resources.


Control program controls the execution of user
programs and operations of I/O devices .
Kernel the one program running at all times (all else
being application programs).
OS is like government. It performs no useful work but
provides an environment for other programs.
Examples: MS Windows (328), Unix/Linux/Solaris
/OpenBSD (803 M), Android (878 M), iOS/Mac OS (267
M), OS/360, Blackberry (24 M) etc.
Virtual Machine Manager
Virtualization of Processors, Memory, Disk, Devices etc.
Is an operating system essential to use a computer?

Operating System Concepts


How OS takes control - Booting

Power on self test (POST)

ROM BIOS Routine

Boot sector reading

Configuration file loading

Operating System Concepts


Functions of Operating System

Memory Management: Finds free space in memory and


allocates to different processes.
Processor Management: Allocates the processor to
execute a process.
I/O Device Management: Allocates a device to a
process.
File Management: Keeps tracks on files how they are
opened or closed.

Operating System Concepts


Functions of Operating System

Operating System Concepts


Memory Management
Primary Memory

Provides direct access to CPU.
Processes must be in main memory.
OS must decide
Policies
When to load process in memory
How much memory to allocate
When a process should be removed from memory
Mechanism
To keep track of memory in use
To keep track of unused memory
To protect memory space
Allocate, de-allocate spaces for processes
Swap processes: memory > disk

Operating System Concepts


Process Management
OS manages many kind of activities

User programs
System programs: printer spoolers, name servers, file
servers
Each is encapsulated in a process
A process includes code, data, PC registers, OS
resources in use etc.
A process is not a program: many processes can be
running the same program
OS must
Create, delete, suspend, resume, and schedule
processes
Supports inter-process communication,
synchronization, handle deadlock

Operating System Concepts


Disk Management
Disk

The actual h/w that stores file system
Large enough to store all user programs, data, OS
etc.
Persistent: recover from system failures
OS must
Manages disk space at low level:
Keep track of used / unused space
Keep track of bad sectors
Handles low level disk functions
Scheduling of disk operations
Head movement

Operating System Concepts


File System Management
File System

File system provides files and various operations on
files
A file system supports directories which contain files
and other directories
OS must
Create and delete files and directories
Manipulate files and directories
Provides general high level services like backup,
accounting, quotas

Operating System Concepts


Mainframe Systems (Batch Processing OS)

Reduce setup time by batching


similar jobs
Automatic job sequencing
automatically transfers control
from one job to another. First
rudimentary operating system.
Resident monitor
initial control in monitor
control transfers to job
when job completes, control
transfers back to monitor

An IBM System z9 mainframe

Operating System Concepts


Memory Layout for a Simple Batch System

Operating System Concepts


Multiprogrammed Batch OS

Several jobs are kept in main memory at the same time, and the
CPU is multiplexed among them.

Operating System Concepts


OS Features Needed for Multiprogramming

I/O routine supplied by the system.


Memory management the system must allocate the
memory to several jobs.
CPU scheduling the system must choose among
several jobs ready to run.
Allocation of devices.

Operating System Concepts


Time-Sharing OSInteractive Computing
The CPU is multiplexed among several jobs that are kept
in memory and on disk (the CPU is allocated to a job only
if the job is in memory).
A job swapped in and out of memory to the disk.
On-line communication between the user and the system
is provided; when the operating system finishes the
execution of one command, it seeks the next control
statement from the users keyboard.
On-line system must be available for users to access data
and code.
Advantages
Provides the advantage of quick response.
Avoids duplication of software.
Reduces CPU idle time.
Disadvantages
Problem of reliability.
Question of security and integrity of user programs and data.
Problem of data communication.
Operating System Concepts
Parallel Systems

Multiprocessor systems with more than one CPU in close


communication.
Tightly coupled system processors share memory
and a clock; communication usually takes place through
the shared memory.
Advantages of parallel system:
Increased throughput
Economical
Increased reliability
graceful degradation
fail-soft systems

Operating System Concepts


Parallel Systems (Cont.)

Symmetric multiprocessing (SMP)


Each processor runs an identical copy of the operating
system.
Many processes can run at once without performance
deterioration.
Most modern operating systems support SMP
Asymmetric multiprocessing
Each processor is assigned a specific task; master
processor schedules and allocated work to slave
processors. (Cell BE)
More common in extremely large systems

Operating System Concepts


Symmetric Multiprocessing Architecture

Operating System Concepts


Distributed Operating Systems

Distribute the computation among several physical


processors.
Loosely coupled system each processor has its own
local memory; processors communicate with one another
through various communications lines, such as high-
speed buses or telephone lines.
Advantages of distributed systems.
Resources Sharing
Computation speed up load sharing
Reliability
Communications

Operating System Concepts


Distributed Operating Systems (cont)

Requires networking infrastructure.


Local area networks (LAN) or Wide area networks (WAN)
May be either client-server or peer-to-peer systems.
Kernel, alpha, amoeba, Mach are examples of such OS.

Operating System Concepts


General Structure of Client-Server

Operating System Concepts


Real-Time Operating Systems

Often used as a control device in a dedicated application


such as controlling scientific experiments, medical
imaging systems, industrial control systems, and some
display systems.
Well-defined fixed-time constraints.
Real-Time systems may be either hard or soft real-time.
User convenience and resource utilization is secondary
objective.
Ex: Rocket launching, flight control, robotics, real time
simulation, telephone switching equipment etc.

Operating System Concepts


Real-Time Operating Systems (Cont.)

Hard real-time:
Secondary storage limited or absent, data stored in short
term memory, or read-only memory (ROM)
Conflicts with time-sharing systems, not supported by
general-purpose operating systems.
Ex: Multimedia, Virtual reality, etc.

Soft real-time
Limited utility in industrial control of robotics
Useful in applications (multimedia, virtual reality) requiring
advanced operating-system features.
Virtual memory is not found in real time systems.

Operating System Concepts

You might also like