36
MCS – 041 Block 1 Unit 1 Operating Systems : An Overview By Kirit A. Dhabalia

MCS – 041 Block 1 Unit 1 Operating Systems An Overview

Embed Size (px)

Citation preview

Page 1: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

MCS – 041Block 1 Unit 1

Operating Systems : An Overview

ByKirit A. Dhabalia

Page 2: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Content

• Purpose of OS• Goals of OS• Evolution of OS• Various Functions Performed By OS• Various Types of OS• Structures of OS

Page 3: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

What Is An OS?

• Four main components– Hardware– OS– Application Software– Users

• The OS controls and coordinates the use of the hardware among the various systems programs and application programs for the various users

Page 4: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

What Is An OS?

• Resource Allocator– Hardware and Software– CPU Time– Memory Space– Files Storage Space– Input / Output Devices

Application ProgramsOperating

SystemComputer Hardware

Compiler

Assembler

Text Editor

Database System

User 1

User 2

User 3

User n

Abstract View of the Components of a computer System

Request

Response

Page 5: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

OS Designed To Serve Two Basic Purposes

• To control the allocation and use of the computing system’s resources among the various users and tasks

• To provide an interface between the computer hardware and the programmer that simplifies and makes feasible the creation, coding, debugging and maintenance of application programs

Page 6: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

An Effective OS Should Accomplish The Following Functions

• Act as a command interpreter by providing a user friendly environment

• Should facilitate communication with other users• Facilitate the directory/file creation along with

the security option• Provide routines that handle the intricate

(Complicated) details of I/O programming• Provide access to compilers to translate programs

from high-level languages to machine languageCont…

Page 7: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

An Effective OS Should Accomplish The Following Functions

• Provide a loader program to move the compiled program code to the computer’s memory for execution

• Assure that when there are several active processes in the computer, each will get fair and non-interfering access to the central processing unit for execution

• Take care of storage and device allocation• Provide for long term storage of user information in the

form of files• Permit system resources to be shared among users when

appropriate and be protected from unauthorised or mischievous intervention as necessary

Page 8: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Content

• Purpose of OS• Goals of OS• Evolution of OS• Various Functions Performed By OS• Various Types of OS• Structures of OS

Page 9: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview
Page 10: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Goals Of An Operating System

• To execute an instruction in an efficient manner and to increase the productivity of processing resources attached with the computer system.

• Maximum CPU utilization is the main objective, since it is the main device which is to be used for the execution of the programs or instructions

• Goals– Convenient to use– Use the hardware in an efficient manner

Page 11: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Generations of Operating Systems

• Five distinct generations, characterized by Hardware component technology, Software development and mode of delivery of computer services– 0th Generation ( 1944 )– First Generation ( 1951-1956 )– Second Generation ( 1956-1964 )– Third Generation ( 1964-1979 )– Fourth Generation ( 1979- Present )

Page 12: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

0th Generation

• ENIAC (Electronic Numerical Integrator And Computer) (The Giant Brain) – By John Mauchly

• EDVAC (Electronic Discrete Variable Automatic Computer) – by John Von Neumann – 1944-46

• The development of EDVAC set the stage for the evolution of commercial computing and operating system software

• “Open-shop”

Page 13: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

1st Generation ( 1951-1956)• UNIVAC I in early 1951 and a bit later, the IBM 701 which was also known

as the Defence Calculator• “Closed shop”• Application programs were run one at a time and were translated with

absolute computer addresses that bound them to be loaded and run from these reassigned storage addresses set by the translator, obtaining their data from specific physical I/O device

• There was no provision for moving a program to different location in storage for any reason

• Magnetic Tape, Boot device• Machine Language, Assembly and later FORTRAN• System protection was a problem• “Mono-programmed operating system”

Page 14: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

2nd Generation (1956-1964)• “Mono-programmed batch processing operating systems”• The data channel allowed some I/O to be buffered ie. Input data can

read ahead and kept into a special block of memory called as buffer• Data channel’s ability to work asynchronously and concurrently with

the main processor• Significant innovation of the second generation – the interrupt• The data channel was able to interrupt the CPU with a message• The hardware developments led to enhancements of the operating

system. I/O and data channel communication and control became functions of the operating system

• JOB segmentation (priority)

Page 15: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

3rd Generation (1964-1979)

• IBM System/360• Adoption of multiprogramming• Spooling• CPU sharing• Preempt (anticipate) • Better hardware

Page 16: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

4th Generation (1979-Present)

• VLSI• “User-friendly”• Multi programming and time sharing• DOS & Unix• Remote login

Page 17: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Types of Operating Systems

• Batch• Time-sharing• Real-time • Multiprogramming Operating System• Multiprocessing system• Networking Operating System• Distributed Operating System• Operating System for Embedded Devices

Page 18: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

MCS - 022

Page 19: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Desirable Qualities of OSUsability Facilities

Robustness Sufficient for intended use

Accept all valid inputs and can handle them

Complete

Consistency Appropriate

Proportionality Costs

Convenience Want low cost and efficient services

Powerful with high level facilities Good algorithm

Adaptability Low overhead

Tailored to the environment Low maintenance cost

Changeable over time

Extendible - extensible

Page 20: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

OS - Examples

• DOS• UNIX• Windows• Macintosh• OS used by its users– Command language :- interact with os using

commands– System call :- invoke services of the os by means of run

time system calls during the execution of programs

Page 21: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Functions of OS

• Process Management• Memory Management• Secondary Storage Management• I/O Management• File Management• Protection• Networking Management• Command Iterpretation

Page 22: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

• Simultaneous peripheral operation online

Page 23: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Process Management

• The CPU executes a large number of programs• CPU is also needed for other activities called

processes• A process is a program in execution• Typically batch job is a process, a time shared

user program is a process and a system task spooling is also a process

• So, the process is a job or a time shared program

Page 24: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Process Management

• OS is responsible for the following activities in connection with processes management– Creation and deletion of both user and system

processes– Suspension and resumption of processes– Provision of mechanisms for process

synchronization– Provision of mechanisms for deadlock handling

Page 25: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Memory Management

• Most expensive part in the computer system• Is a large array of words or bytes, each with its own address• Interaction is achieved through a sequence of reads or writes

of specific memory address• Selection of a memory management scheme very much

depends upon the hardware design• OS is responsible for the following activities

– Keep track of which parts of memory currently being used and by whom

– Decide which process are to be loaded into memory when memory space becomes available

– Allocate and deallocate memory space as needed

Page 26: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Secondary Storage Management

• Execution of programs together with the data they access, must be in main memory during execution

• Since the main memory is too small to permanently accommodate all data and program, the computer system must provide secondary storage to backup main memory

• Modern systems uses disks as the primary on-line storage• Programs like compilers, assemblers, sort routines, editors,

formatters and so on, are stored on the disk until loaded into memory

• Hence, proper disk storage management is of central importance to the computer systems

Page 27: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Secondary Storage Management

• OS is responsible for the following activities in connection with disk management:– Free space management– Storage allocation– Disk scheduling

Page 28: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – I/O Management

• OS is responsible for the following activities in connection to I/O management– A buffer caching system– To activate a general device driver code– To run the driver software for specific hardware

devices as and when required

Page 29: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – File Management

• One of the most visible services of an OS• Medias – Disk / Tape / CD / DVD / Blu …• A file is a collection of related information

defined by its creator• A file is a sequence of bits, bytes, lines or

records whose meaning is defined by its creator and user

Page 30: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – File Management

• OS is responsible for the following activities in connection to the file management– Creation and deletion of files– Creation and deletion of directory– Support of primitives for manipulating files and

directories– Mapping of files onto disk storage– Backup of files on stable (non volatile) storage– Protection and security of the files

Page 31: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Protection

• Various processes in an OS must be protected from each other’s activities

• Peripherals can be operated only after gaining proper authorization from the OS

• Memory addressing hardware ensures that a process can only execute within its own address space

• The timer ensures that no process can gain control of the CPU without relinquishing it

Page 32: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Protection

• No process is allowed to do its own I/O, to protect the integrity of the various peripheral devices

• Protection refers to a mechanism for controlling the access of programs, processes or users to the resources defined by a computer controls to be imposed, together with some means of enforcement

• Protection can improve reliability by detecting latent errors at the interfaces between component subsystems

• An unprotected resource cannot defend against use (or misuse) by an unauthorised or incompetent user.

Page 33: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Networking Management

• A distributed system is a collection of processor that do not share memory or a clock

• Each processor has its own local memory and processor communicate with each other through various communication lines such as high speed buses or telephone lines

• The processor in the system are connected through a communication network

• A distributed system provides the user with access to the various resources the system maintains.

• Access to a shared resource allows computation speed-up, data availability and reliability

Page 34: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

Function – Command Interpretation

• The command interpreter is the primary interface between the user and the rest of the system– The control card interpreter– The command line interpreter– The shell ( Unix)

Page 35: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview

OS in coordinating all the functions

Operating System

I/O Management

Process Management

Communication Management

Protection & Security

Memory Management

Secondary Storage

Management

NetworkingUser

Interface

File Interface

Page 36: MCS – 041 Block  1 Unit 1 Operating Systems  An Overview