OPERATING SYSTEMS OVERVIEW Contents O S Functions The

  • Slides: 38
Download presentation
OPERATING SYSTEMS OVERVIEW

OPERATING SYSTEMS OVERVIEW

Contents à O. S. Functions à The Evolution of O. S. à Characteristics of

Contents à O. S. Functions à The Evolution of O. S. à Characteristics of O. S. à Basic hardware elements

Contents à O. S. Components à System calls à O. S. Structure

Contents à O. S. Components à System calls à O. S. Structure

USER 1 USER 2 USER 3 USER n compiler text editor interpreter database system

USER 1 USER 2 USER 3 USER n compiler text editor interpreter database system operating system computer hardware

Programming system components compilers loader linker comand interpreter (shell) …

Programming system components compilers loader linker comand interpreter (shell) …

O. S. purposes à to make a computer more convenient and easier to use

O. S. purposes à to make a computer more convenient and easier to use à to allow more efficient operations of the whole computer system

To simplify the program development The O. S. masks the details of the hardware

To simplify the program development The O. S. masks the details of the hardware from the programmer and provides the programmer with a convenient interface for using system resources (system calls)

To simplify the program development Definition of an extended (virtual) machine

To simplify the program development Definition of an extended (virtual) machine

VIRTUAL MACHINE ES: DISK CONTROLLER

VIRTUAL MACHINE ES: DISK CONTROLLER

à commands: read, write, head motion, ecc… à parameters: sector address, number of sectors

à commands: read, write, head motion, ecc… à parameters: sector address, number of sectors for each track, ecc… à state and error conditions

Hardware resource allocation Access to system resources must be controlled and conflicts for resource

Hardware resource allocation Access to system resources must be controlled and conflicts for resource contention resolved

Hardware resource allocation Any user should be provided with required resources, by following suitable

Hardware resource allocation Any user should be provided with required resources, by following suitable policies

The details for the management of hardware resources must be hidden to users

The details for the management of hardware resources must be hidden to users

System calls provide the interface between the application programs and the O. S.

System calls provide the interface between the application programs and the O. S.

THE EVOLUTION OF O. S.

THE EVOLUTION OF O. S.

Serial processing à à No O. S. Control by console Scheduling Setup time

Serial processing à à No O. S. Control by console Scheduling Setup time

Simple batch systems Monitor à Resident in main memory à Control of the program

Simple batch systems Monitor à Resident in main memory à Control of the program execution à “batch” solution

Uniprogramming systems Only one program in main memory Machine time alternates between execution of

Uniprogramming systems Only one program in main memory Machine time alternates between execution of user programs and monitor (OS)

Uniprogramming systems operating system user program main memory organization in a batch uni-programming system

Uniprogramming systems operating system user program main memory organization in a batch uni-programming system

Uniprogramming systems Hardware and software resources of the computer system are dedicated to only

Uniprogramming systems Hardware and software resources of the computer system are dedicated to only one program (monouser system)

Uniprogramming systems low CPU utilization I/O waiting t

Uniprogramming systems low CPU utilization I/O waiting t

Hardware characteristics à Memory protection à Timer à Privileged instructions à Interrupts

Hardware characteristics à Memory protection à Timer à Privileged instructions à Interrupts

Spooling (simultaneous peripheral operation on-line) disk card reader CPU and memory printer

Spooling (simultaneous peripheral operation on-line) disk card reader CPU and memory printer

Multiprogrammed Batch O. S. Systems job 1 job 2 job 3 A multiprogramming system

Multiprogrammed Batch O. S. Systems job 1 job 2 job 3 A multiprogramming system with three jobs in memory

Multiprogrammed Batch Systems Increase of resource utilization CPU utilization I/O waiting job 1 job

Multiprogrammed Batch Systems Increase of resource utilization CPU utilization I/O waiting job 1 job 2 t

Multiprogrammed Systems O. S. are more sophisticated à Algorithms for resource management (CPU, memory,

Multiprogrammed Systems O. S. are more sophisticated à Algorithms for resource management (CPU, memory, I/O)

Multiprogrammed Systems O. S. are more sophisticated à Protection of the environments of different

Multiprogrammed Systems O. S. are more sophisticated à Protection of the environments of different jobs

Multiprogrammed Systems Scheduling algorithms Job mix CPU-bound job I/O-bound job

Multiprogrammed Systems Scheduling algorithms Job mix CPU-bound job I/O-bound job

Multiprogrammed Batch Systems Example OS/36 O working on IBM 36 O e 37 O

Multiprogrammed Batch Systems Example OS/36 O working on IBM 36 O e 37 O series

Multiprogrammed Batch Systems à High efficiency in resource utilization à Users cannot directly interact

Multiprogrammed Batch Systems à High efficiency in resource utilization à Users cannot directly interact with the O. S. à Large response time

Interactive systems à direct communication between the user and the system

Interactive systems à direct communication between the user and the system

Interactive systems à the user gives instruction to the O. S. directly, by using

Interactive systems à the user gives instruction to the O. S. directly, by using either a keyboard or a mouse and waits for immediate results

Time-sharing systems Logical extension of multiprogramming à Multiple users simultaneously access the system through

Time-sharing systems Logical extension of multiprogramming à Multiple users simultaneously access the system through terminals

Time-sharing systems Logical extension of multiprogramming à The O. S. interleaves the execution of

Time-sharing systems Logical extension of multiprogramming à The O. S. interleaves the execution of each user program in a short burst or quantum of computation

Time-sharing systems At the end of the quantum (or during the quantum, if the

Time-sharing systems At the end of the quantum (or during the quantum, if the job executes an I/O instruction) the CPU is switched to a different job.

Time-sharing systems One of the first developed time sharing O. S. was the CTSS

Time-sharing systems One of the first developed time sharing O. S. was the CTSS (Compatible Time Serie System), MIT years 6 O’ MULTICS, UNIX, …

Overhead CPU utilization I/O waiting overhead job 1 job 2 t

Overhead CPU utilization I/O waiting overhead job 1 job 2 t