You are on page 1of 191

OPERATING SYSTEMS

Semester 5
Department of Computer Science & Engineering
Jyothi Engineering College

OBJECTIVES

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as
1. Device Management

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as
1. Device Management
2. Process Management

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as
1. Device Management
2. Process Management
3. Memory Management

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as
1. Device Management
2. Process Management
3. Memory Management
4. File Management

OBJECTIVES
1. This course primarily aims to focus on the need to have an
interface between Computer Hardware & the End User
2. A generic viewpoint of Operating Systems structure will be
presented
3. A study of fundamental issues such as
1. Device Management
2. Process Management
3. Memory Management
4. File Management

PERSPECTIVES OF A COMPUTER

Application
Software
System
Software
Hardware

PERSPECTIVES OF A COMPUTER

Application
Software
System
Software
Hardware

PERSPECTIVES OF A COMPUTER

Application
Software
System
Software
Hardware

PERSPECTIVES OF A COMPUTER

Application
Software
System
Software
Hardware

SYSTEM SOFTWARE
Software API

System Software

Hardware

SYSTEM SOFTWARE
Software API

Hardware

SYSTEM SOFTWARE
Software API

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Linker

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Linker

Loader

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Linker

Loader

Compiler

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Linker

Loader

Compiler
Libraries

Hardware

SYSTEM SOFTWARE
Software API
Command Line
Interpreter

Linker

Compiler

Loader

DBMS
Libraries

Hardware

SYSTEM SOFTWARE
Software API

OS

Hardware

SYSTEM SOFTWARE

SYSTEM SOFTWARE
Hardware

SYSTEM SOFTWARE
Kernel and
system software
Hardware

SYSTEM SOFTWARE
Kernel and
system software
Hardware

Shell

SYSTEM SOFTWARE
Kernel and
system software
Hardware

Shell

Other Applications

SYSTEM SOFTWARE
Kernel and
system software
Hardware

Shell

Users

Other Applications

SYSTEM SOFTWARE

SYSTEM SOFTWARE
1. System software provides a general programming environment

SYSTEM SOFTWARE
1. System software provides a general programming environment
2. The programming environment exists to create specific
application software or a generic commercial software

SYSTEM SOFTWARE
1. System software provides a general programming environment
2. The programming environment exists to create specific
application software or a generic commercial software
3. System software creates two kinds of environments

SYSTEM SOFTWARE
1. System software provides a general programming environment
2. The programming environment exists to create specific
application software or a generic commercial software
3. System software creates two kinds of environments
1. Allow users to interact with the computer
Examples : Application GUIs, Desktops, Graphical Menus

SYSTEM SOFTWARE
1. System software provides a general programming environment
2. The programming environment exists to create specific
application software or a generic commercial software
3. System software creates two kinds of environments
1. Allow users to interact with the computer
Examples : Application GUIs, Desktops, Graphical Menus
2. Provide tools and libraries to be used for application
program development
Examples : Interpreters, Compilers, Assemblers, Loaders,
Linkers

SYSTEM SOFTWARE COMPONENTS

SYSTEM SOFTWARE COMPONENTS


1. Command Line Interpreter (Shell) : Text based program which
the user invokes to interact with the rest of the system
software

SYSTEM SOFTWARE COMPONENTS


1. Command Line Interpreter (Shell) : Text based program which
the user invokes to interact with the rest of the system
software
2. Window system: System software that provides a virtual
terminal to an application program.

SYSTEM SOFTWARE COMPONENTS


1. Command Line Interpreter (Shell) : Text based program which
the user invokes to interact with the rest of the system
software
2. Window system: System software that provides a virtual
terminal to an application program.
1. The system software matches the virtual terminal
operations so that they match to a physical region on the
screen

SYSTEM SOFTWARE COMPONENTS


1. Command Line Interpreter (Shell) : Text based program which
the user invokes to interact with the rest of the system
software
2. Window system: System software that provides a virtual
terminal to an application program.
1. The system software matches the virtual terminal
operations so that they match to a physical region on the
screen
2. It then translates the softwares operations to appropriate
operations on the physical terminal

SYSTEM SOFTWARE COMPONENTS


1. Command Line Interpreter (Shell) : Text based program which
the user invokes to interact with the rest of the system
software
2. Window system: System software that provides a virtual
terminal to an application program.
1. The system software matches the virtual terminal
operations so that they match to a physical region on the
screen
2. It then translates the softwares operations to appropriate
operations on the physical terminal
3. Examples : Macintosh , Linux X-windowing system,
Windows Desktop Manager

SYSTEM SOFTWARE COMPONENTS

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software
2. Examples : Oracle, MySQL, DBASE etc.

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software
2. Examples : Oracle, MySQL, DBASE etc.
1. Users purchase systems on the basis of application domain

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software
2. Examples : Oracle, MySQL, DBASE etc.
1. Users purchase systems on the basis of application domain
2. However a system that supports all application domains is
widely preferred

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software
2. Examples : Oracle, MySQL, DBASE etc.
1. Users purchase systems on the basis of application domain
2. However a system that supports all application domains is
widely preferred
3. Hence the need for a Super system software

SYSTEM SOFTWARE COMPONENTS


3. Database Management System : Used to store information on
the computers permanent storage devices
1. Creates abstract data types (Schemas) for efficient query
processing from application software
2. Examples : Oracle, MySQL, DBASE etc.
1. Users purchase systems on the basis of application domain
2. However a system that supports all application domains is
widely preferred
3. Hence the need for a Super system software
4. The operating system is that part of system software that
manages the use of hardware by other system software and
all application software

OPERATING SYSTEMS

OPERATING SYSTEMS

An Operating system

OPERATING SYSTEMS

An Operating system
1. allocates the computers components to different
programs,

OPERATING SYSTEMS

An Operating system
1. allocates the computers components to different
programs,
2. synchronizes their individual activities,

OPERATING SYSTEMS

An Operating system
1. allocates the computers components to different
programs,
2. synchronizes their individual activities,
3. and generally provides all mechanisms so that programs can
execute in perfect harmony

OPERATING SYSTEMS

OPERATING SYSTEMS

An Operating system

OPERATING SYSTEMS

An Operating system
4. Interacts with hardware directly to be used by other
system software and application software

OPERATING SYSTEMS

An Operating system
4. Interacts with hardware directly to be used by other
system software and application software
5. Domain independence

OPERATING SYSTEMS

An Operating system
4. Interacts with hardware directly to be used by other
system software and application software
5. Domain independence
6. Resource Abstraction

OPERATING SYSTEMS

An Operating system
4. Interacts with hardware directly to be used by other
system software and application software
5. Domain independence
6. Resource Abstraction
7. Resource Sharing

OPERATING SYSTEMS

OPERATING SYSTEMS
Resource Abstraction

OPERATING SYSTEMS
Resource Abstraction
1. Hide underlying hardware from user

OPERATING SYSTEMS
Resource Abstraction
1. Hide underlying hardware from user
2. Provide operational models that are easy to use by
programmers and users alike

OPERATING SYSTEMS
Resource Abstraction
1. Hide underlying hardware from user
2. Provide operational models that are easy to use by
programmers and users alike
3. Thus provide abstract models in a single system

OPERATING SYSTEMS
Resource Abstraction
1. Hide underlying hardware from user
2. Provide operational models that are easy to use by
programmers and users alike
3. Thus provide abstract models in a single system
4. Each abstract model is a system on its own

OPERATING SYSTEMS

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed
MOVI #0x40,CL
Set seek distance

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed
MOVI #0x40,CL
Set seek distance
MOVI #0x54,BH
specify sector number

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed
MOVI #0x40,CL
Set seek distance
MOVI #0x54,BH
specify sector number
MOVI #0x55,CH
specify cluster size

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed
MOVI #0x40,CL
Set seek distance
MOVI #0x54,BH
specify sector number
MOVI #0x55,CH
specify cluster size
MOV [0x46],AX
read data

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
MOVA #0x0200
Location of device
OR #0x0010
Set control bit for reading
MOVI #0x02,BL
Set seek speed
MOVI #0x40,CL
Set seek distance
MOVI #0x54,BH
specify sector number
MOVI #0x55,CH
specify cluster size
MOV [0x46],AX
read data

OPERATING SYSTEMS

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do
read(*fd, buff,sizeof(buff));

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do
read(*fd, buff,sizeof(buff));

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do
read(*fd, buff,sizeof(buff));
even more easy way

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do
read(*fd, buff,sizeof(buff));
even more easy way
use a text editor and open the file

OPERATING SYSTEMS
Resource Abstraction - A basic level hard disk read
operation
much more easier to do
read(*fd, buff,sizeof(buff));
even more easy way
use a text editor and open the file

OPERATING SYSTEMS
T1

R1

T2

R2

T3

R3

Server with
OS

OPERATING SYSTEMS
T1

R1

T2

R2

T3

R3

An Operating system

Server with
OS

OPERATING SYSTEMS
T1

R1

T2

R2

T3

R3

An Operating system
1. Performs Resource Sharing

Server with
OS

OPERATING SYSTEMS
T1

R1

T2

R2

T3

R3

Server with
OS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing

OPERATING SYSTEMS
T1

R1

T2

R2

T3

R3

Server with
OS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS
R1

Server with
OS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS
T1
R1

Server with
OS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS
T2

R1

Server with
OS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS
R1

Server with
OS

T3
An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS

OPERATING SYSTEMS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing

OPERATING SYSTEMS

An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing

OPERATING SYSTEMS
T1
T2

R1

Server with
OS

T3
An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing

OPERATING SYSTEMS
T1
T2

R1

Server with
OS

T3
An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination

OPERATING SYSTEMS

OPERATING SYSTEMS
1. An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination

OPERATING SYSTEMS
1. An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination
2. Explicit Resource Sharing

OPERATING SYSTEMS
1. An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination
2. Explicit Resource Sharing
1. Resource Isolation

OPERATING SYSTEMS
1. An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination
2. Explicit Resource Sharing
1. Resource Isolation
1. Protectively separating various locations accessed by
different devices

OPERATING SYSTEMS
1. An Operating system
1. Performs Resource Sharing
1. Abstract machines & Transparent Resource sharing
1. Time-based multiplexing
2. Space-based multiplexing
3. Combination
2. Explicit Resource Sharing
1. Resource Isolation
1. Protectively separating various locations accessed by
different devices
2. Resource sharing with co-operation

OPERATING SYSTEMS

OPERATING SYSTEMS

1. Multi-programming
1. The computers memory is shared using space-multiplexing

OPERATING SYSTEMS

1. Multi-programming
1. The computers memory is shared using space-multiplexing
2. Multiple processors handling multiple abstract machines

OPERATING SYSTEMS

1. Multi-programming
1. The computers memory is shared using space-multiplexing
2. Multiple processors handling multiple abstract machines
T1
T2
T3

R1

Multi-core
system

OPERATING SYSTEMS

OPERATING SYSTEMS
1. Car Manufacturing Process

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS
1. Car Manufacturing Process
1. Building the Chassis
2. Paint Job
3. Fixing up parts
Building
Chassis

Paint Job

Fix up
mate

OPERATING SYSTEMS

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

P1

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

P1
P2

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

P1
P2
P3

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

Building
Building
P1
P2
Chassis
Job1
P3
Chassis

Paint
Job
Paint
JobJob
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

Building
Building
Chassis
Job1
Chassis

Paint
P1
Job
Paint
P2
Job
Job
P3
2

Fix
Fixup
up
mate
Job 3
mate

OPERATING SYSTEMS

1. Multi-programming
1. Does not improve any single processs performance, but it
can improve the overall performance of the system

Building
Building
Chassis
Job1
Chassis

Paint
Job
Paint
JobJob
2

Fix
up
Fix
up
P1
P2
mate
P33
Job
mate

OPERATING SYSTEMS

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly

Hardware Resources

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly

Software Hardware Interface

Trusted OS
Hardware Resources

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly

OS Interface

System Software

Software Hardware Interface

Trusted OS
Hardware Resources

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly

API

Application Software

OS Interface

System Software

Software Hardware Interface

Trusted OS
Hardware Resources

OPERATING
SYSTEMS
1. Trusted Software
1. Todays Operating systems are constructed such that they
are intended to perform exactly as intended in order for
the overall system to behave correctly
Human Computer Interface
API

Application Software

OS Interface

System Software

Software Hardware Interface

Trusted OS
Hardware Resources

STRATEGIES

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria
3. The earliest computers were dedicated to a single program-inexecution at a time

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria
3. The earliest computers were dedicated to a single program-inexecution at a time
4. Applications justified the cost of a system

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria
3. The earliest computers were dedicated to a single program-inexecution at a time
4. Applications justified the cost of a system
5. Since computers were so expensive, (even huge !) they were
only used in critical tasks such as national defense applications

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria
3. The earliest computers were dedicated to a single program-inexecution at a time
4. Applications justified the cost of a system
5. Since computers were so expensive, (even huge !) they were
only used in critical tasks such as national defense applications
6. Exclusive access was given to the programmer in order to
develop or debug his or her program

STRATEGIES
1. A strategy in this context refers to the general characteristics of
the programmers abstract machine
2. Strategies are selected on the basis of business and engineering
criteria
3. The earliest computers were dedicated to a single program-inexecution at a time
4. Applications justified the cost of a system
5. Since computers were so expensive, (even huge !) they were
only used in critical tasks such as national defense applications
6. Exclusive access was given to the programmer in order to
develop or debug his or her program
7. The concept of resource sharing didnt exist but resource
abstraction was important

STRATEGIES

STRATEGIES
From the early systems to the modern

STRATEGIES
From the early systems to the modern
1. By 1960, economic pressures and software technology
evolved to a point where concurrent execution of multiple
programs on a single computer

STRATEGIES
From the early systems to the modern
1. By 1960, economic pressures and software technology
evolved to a point where concurrent execution of multiple
programs on a single computer
2. This resulted in resource sharing and ideas of abstract
machines and multiprogramming

STRATEGIES

STRATEGIES
Six different classes of operating systems with different
strategies

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs
2. A job is a pre-defined sequence of commands, programs
and data

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs
2. A job is a pre-defined sequence of commands, programs
and data
3. Jobs are self sufficient and require no human intervention

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs
2. A job is a pre-defined sequence of commands, programs
and data
3. Jobs are self sufficient and require no human intervention
4. Thus batch system are also non-interactive systems

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs
2. A job is a pre-defined sequence of commands, programs
and data
3. Jobs are self sufficient and require no human intervention
4. Thus batch system are also non-interactive systems
5. Batch system were the first to use the concept of multiprogramming

STRATEGIES
Six different classes of operating systems with different
strategies
1. Batch Systems
1. Handles collections, or batches of jobs
2. A job is a pre-defined sequence of commands, programs
and data
3. Jobs are self sufficient and require no human intervention
4. Thus batch system are also non-interactive systems
5. Batch system were the first to use the concept of multiprogramming

STRATEGIES

STRATEGIES

Six different classes of operating systems with different


strategies

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms
3. Personal Computers and Workstations

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms
3. Personal Computers and Workstations
1. Entire machine is devoted to a single human user

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms
3. Personal Computers and Workstations
1. Entire machine is devoted to a single human user
2. Execution times are predictable because all processes
belong to a single user

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms
3. Personal Computers and Workstations
1. Entire machine is devoted to a single human user
2. Execution times are predictable because all processes
belong to a single user
3. More important to minimize wait time instead of
maximizing hardware utilization

STRATEGIES

Six different classes of operating systems with different


strategies
2. Time sharing systems
1. Support multiple interactive users
2. Instantaneous support for users to issue commands
3. Timely response to users and sharpened focus on
resource management and protection mechanisms
3. Personal Computers and Workstations
1. Entire machine is devoted to a single human user
2. Execution times are predictable because all processes
belong to a single user
3. More important to minimize wait time instead of
maximizing hardware utilization
4. Todays systems also support multi-programming

STRATEGIES

STRATEGIES
Six different classes of operating systems with different
strategies

STRATEGIES
Six different classes of operating systems with different
strategies
4. Embedded Systems

STRATEGIES
Six different classes of operating systems with different
strategies
4. Embedded Systems
1. Used to control Autonomous Systems

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today
5. Small, Communicating Computers

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today
5. Small, Communicating Computers
1. Mobile, Wireless computers

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today
5. Small, Communicating Computers
1. Mobile, Wireless computers
2. Examples : Internet Applications, tablet computers, settop boxes, cell phones, and PDAs

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today
5. Small, Communicating Computers
1. Mobile, Wireless computers
2. Examples : Internet Applications, tablet computers, settop boxes, cell phones, and PDAs
3. Small, portable, low power systems used for
communications purpose

STRATEGIES
Six different classes of operating systems with different

strategies
4. Embedded Systems
1. Used to control Autonomous Systems
2. Examples : Hydro-electric dams, satellites, robots
3. Guaranteed response times and deadlines, since tasks are
critical
4. Real-time multimedia systems are very popular today
5. Small, Communicating Computers
1. Mobile, Wireless computers
2. Examples : Internet Applications, tablet computers, settop boxes, cell phones, and PDAs
3. Small, portable, low power systems used for
communications purpose
4. Net-books, Ultra slim laptops

STRATEGIES

STRATEGIES
Six different classes of operating systems with different
strategies

STRATEGIES
Six different classes of operating systems with different
strategies
6. Networking technology

STRATEGIES
Six different classes of operating systems with different
strategies
6. Networking technology
1. Evolving rapidly since 1980s

STRATEGIES
Six different classes of operating systems with different
strategies
6. Networking technology
1. Evolving rapidly since 1980s
2. High speed networking for interconnecting distributed,
systems, PCs, batch systems, Workstations, time sharing
systems, real-time systems and small computers

STRATEGIES
Six different classes of operating systems with different
strategies
6. Networking technology
1. Evolving rapidly since 1980s
2. High speed networking for interconnecting distributed,
systems, PCs, batch systems, Workstations, time sharing
systems, real-time systems and small computers
3. Influence of strategy is the importance of information
sharing and effective information handling between
sharing systems

NEXT CLASS

Well finally learn some history ...

NEXT CLASS

You might also like