Sunteți pe pagina 1din 28

IT2403 OPERATING SYSTEMS

UNIT I

INTRODUCTION

3 Credits
9

Introduction - Mainframe systems - Desktop Systems - Multiprocessor Systems - Distributed Systems


- Clustered Systems - Real Time Systems - Handheld Systems - Hardware Protection - System
Components - Operating System Services - System Calls - System Programs - Process Concept Process Scheduling - Operations on Processes - Cooperating Processes - Inter-process
Communication.
UNIT II SCHEDULING

Threads - Overview - Threading issues - CPU Scheduling - Basic Concepts - Scheduling Criteria Scheduling Algorithms - Multiple-Processor Scheduling - Real Time Scheduling - The Critical-Section
Problem - Synchronization Hardware - Semaphores - Classic problems of Synchronization - Critical
regions - Monitors.
UNIT III DEADLOCKS

System Model - Deadlock Characterization - Methods for handling Deadlocks -Deadlock Prevention Deadlock avoidance - Deadlock detection - Recovery from Deadlocks - Storage Management Swapping - Contiguous Memory allocation - Paging - Segmentation - Segmentation with Paging.
Operating System Concepts

IT2403 OPERATING SYSTEMS


UNIT IV PAGING AND FILE SYSTEM

3 Credits
9

Virtual Memory - Demand Paging - Process creation - Page Replacement - Allocation of frames - Thrashing - File
Concept - Access Methods - Directory Structure - File System Mounting - File Sharing - Protection
UNIT V

FILE MANAGEMENT

File System Structure - File System Implementation - Directory Implementation - Allocation Methods - Freespace Management. Kernel I/O Subsystems - Disk Structure - Disk Scheduling - Disk Management - Swap-Space
Management.
TOTAL: 45
TEXT BOOK
1.

Abraham Silberschatz, Peter Baer Galvin and Greg Gagne, Operating System Concepts, Sixth Edition, John Wiley &
Sons (ASIA) Pvt. Ltd, 2003.

REFERENCE BOOKS
1. Harvey M. Deitel, Operating Systems, 2nd Edition, Pearson Education Pvt.Ltd,2002.
2. Andrew S. Tanenbaum, Modern Operating Systems, Prentice Hall of India Pvt. Ltd, 2003.
3. William Stallings, Operating System, Prentice Hall of India, 4th Edition, 2003.
4. Pramod Chandra P. Bhatt - An Introduction to Operating Systems, Concepts and Practice, PHI, 2003.

Chapter 1: Introduction

What is an Operating System?


Mainframe Systems
Desktop Systems
Multiprocessor Systems
Distributed Systems
Clustered System
Real -Time Systems
Handheld Systems
Computing Environments
Operating System Concepts

Why should I study Operating Systems?

Need to understand interaction between the hardware and applications

New applications, new hardware..

Inherent use of ICT today

Need to understand basic principles in the design of computer systems

efficient resource management, security, flexibility

Increasing need for specialized operating systems

e.g. embedded operating systems for devices - cell phones, sensors and
controllers

real-time operating systems - aircraft control, multimedia services

Principles of Operating Systems - Lecture 1

Systems Today

Principles of Operating Systems - Lecture 1

Irvine Sensorium

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:


Execute user programs and make solving user problems easier.
Make the computer system convenient to use.

It uses the computer hardware in an efficient manner.

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

Abstract View of 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 (core or root) the one program running at all times
(all else being called as application programs)

Operating System Concepts

Mainframe Systems
First elementary operating system for commercial and scientific
applications
User submits a job: program, data and control information in the
form of punched cards
Reduce setup time by batching similar jobs
Automatic job sequencing automatically transfers control from one
job to another-called job scheduling
OS is resident in memory- main task is to transfer control from one
job to the next
Operating System Concepts

Memory Layout for a Simple Batch System

Operating System Concepts

Multiprogrammed Batch Systems


Several jobs are kept in main memory at the same time, and the CPU is
multiplexed among them.
1. Job scheduling: which job is to be loaded
Job pool
Selects a job
Loads the job
2. CPU scheduling:
which job is to be executed next ?
Multiple jobs running concurrently
is called multiprogramming
3. Process scheduling
4. memory management
5. And disk storage
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 I/O devices

Operating System Concepts

Time-Sharing SystemsInteractive Computing


Time-sharing (or multi-tasking) is a logical extension of multiprogramming
CPU executes multiple jobs by switching among them but the switches occur
so frequently that the user can interact with each program while it is running
Interactive computer system provides direct communication between user and
the system
The user gives instructions to the OS or to a program directly, using a keyboard or a
mouse and waits for immediate results.

Time shared OS allows many users to share the computer simultaneously.


uses CPU scheduling and multiprogramming to provide each user a small portion of the
time-shared computer
Each program loaded into the memory is executed for a short time before it finishes or
needs to perform I/O operation and it switches to another program
Interactive I/O operation : user input via KB or mouse at users speed of typing

During I/O, CPU is idle so CPU switches to another job

Desktop Systems - Features


Personal computers computer system dedicated to a single user.
Neither multiuser nor multi-tasking

I/O devices keyboard, mouse, display screen, small printer.


User convenience and responsiveness.

May run several different types of operating systems


Single task PC : Microsoft MS-DOS,
Multi-tasking PC: IBM OS/2 (improved version of MS-DOS)
Advanced features : Apple Macintosh OS, Microsoft Windows, UNIX, Linux

Operating System Concepts

Parallel Systems
Multiprocessor systems with more than one CPU in close
communication sharing the computer bus, the clock, memory and
peripheral devices
Parallel system or 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 degradation
Most modern operating systems support SMP

Asymmetric multiprocessing
Each processor is assigned a specific task; master processor schedules
and allocates work to slave processors.
More common in extremely large systems

Operating System Concepts

Symmetric Multiprocessing Architecture

Operating System Concepts

Distributed 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 Systems (cont)


Requires networking infrastructure

Local area networks (LAN) or Wide area networks (WAN)


May be either client-server or peer-to-peer systems

Operating System Concepts

General Structure of Client-Server

Operating System Concepts

Clustered Systems
Clustering allows two or more systems to share storage

Provides high reliability


Asymmetric clustering:

one server runs the application while other servers


standby
Symmetric clustering:

all N hosts are running the application

Operating System Concepts

Real-Time 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

Operating System Concepts

Real-Time 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

Soft real-time
Limited utility in industrial control of robotics
Useful in applications (multimedia, virtual reality) requiring advanced
operating-system features

Operating System Concepts

Handheld Systems
Personal Digital Assistants (PDAs)
Cellular telephones
Issues:
Limited memory
Slow processors
Small display screens

Operating System Concepts

Migration of Operating-System Concepts and Features

Operating System Concepts

Computing Environments

Traditional computing

Web-Based Computing

Embedded Computing

Operating System Concepts

S-ar putea să vă placă și