Operating Systems : Overview

Similar documents
Operating Systems Overview. Chapter 2

Operating System. Operating System Overview. Layers of Computer System. Operating System Objectives. Services Provided by the Operating System

Operating System Overview. Operating System

Operating System Overview. Chapter 2

Operating Systems Overview. Chapter 2

Operating System. Operating Systems Structure Chapter 2. Services Provided by the OS. Evolution of an Operating System

Computer System Overview

Operating Systems Overview

Operating System. Operating System Overview. Structure of a Computer System. Structure of a Computer System. Structure of a Computer System

Chapter 2 Operating System Overview

Process Description and Control

Operating Systems: Internals and Design Principles. Chapter 2 Operating System Overview Seventh Edition By William Stallings

Introduction to Operating Systems

Operating Systems. studykorner.org

Sistemas Operacionais I. Valeria Menezes Bastos

OPERATING SYSTEMS UNIT - 1

CHAPTER-1: INTRODUCTION TO OPERATING SYSTEM:

Announcement. Exercise #2 will be out today. Due date is next Monday

Introduction. CS3026 Operating Systems Lecture 01

Introduction to OS (cs1550)

Operating System Review

What is an Operating System? A Whirlwind Tour of Operating Systems. How did OS evolve? How did OS evolve?

CSE 4/521 Introduction to Operating Systems. Lecture 29 Windows 7 (History, Design Principles, System Components, Programmer Interface) Summer 2018

CONTENTS. Computer-System Structures

Solved MCQs on Operating System Principles. Set-1

CS 571 Operating Systems. Midterm Review. Angelos Stavrou, George Mason University

2. The system of... generally ran one job at a time. These were called single stream batch processing.

Process Description and Control

Concurrency, Mutual Exclusion and Synchronization C H A P T E R 5

OS Design Approaches. Roadmap. OS Design Approaches. Tevfik Koşar. Operating System Design and Implementation

CHAPTER NO - 1 : Introduction:

Chapter 1: Introduction

OS - Introduction Ezio Bartocci Institute for Computer Engineering

Spring It takes a really bad school to ruin a good student and a really fantastic school to rescue a bad student. Dennis J.

OPERATING SYSTEMS INTERNALS AND DESIGN PRINCIPLES. William Stallings SIXTH EDITION. Pearson Education International. Prentice Hall

CSc33200: Operating Systems, CS-CCNY, Fall 2003 Jinzhong Niu December 10, Review

Overview of Operating Systems

The modularity requirement

CSC Operating Systems Fall Lecture - II OS Structures. Tevfik Ko!ar. Louisiana State University. August 27 th, 2009.

Announcements. Computer System Organization. Roadmap. Major OS Components. Processes. Tevfik Ko!ar. CSC Operating Systems Fall 2009

To provide a grand tour of the major operating systems components To provide coverage of basic computer system organization

Threads, SMP, and Microkernels

Chapter 3 Processes. Process Concept. Process Concept. Process Concept (Cont.) Process Concept (Cont.) Process Concept (Cont.)

Module 1. Introduction:

CHAPTER 3 - PROCESS CONCEPT

Chapter 3: Processes. Operating System Concepts 8 th Edition,

Overview of Operating Systems

Operating System Overview

Chapter 1: Introduction

Department of Computer applications. [Part I: Medium Answer Type Questions]

TYPES OF OPERATING SYSTEMS. Dimple Juneja

Process Description and Control. Chapter 3

OS and Computer Architecture. Chapter 3: Operating-System Structures. Common System Components. Process Management

Chapter 3: Operating-System Structures

Roadmap. Tevfik Koşar. CSE 421/521 - Operating Systems Fall Lecture - II OS Structures. University at Buffalo. OS Design and Implementation

OS Design Approaches. Roadmap. System Calls. Tevfik Koşar. Operating System Design and Implementation. CSE 421/521 - Operating Systems Fall 2013

Introduction to Operating Systems (Part II)

Main Points of the Computer Organization and System Software Module

Preview. The Thread Model Motivation of Threads Benefits of Threads Implementation of Thread

Course Details. Operating Systems with C/C++ Course Details. What is an Operating System?

Chendu College of Engineering & Technology

Module 1: Introduction

Module 3: Operating-System Structures. Common System Components

OPERATING SYSTEMS. P. PRAVEEN Asst.Prof, CSE

CS370 Operating Systems Midterm Review

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING UNIT-1

Operating Systems Fundamentals. What is an Operating System? Focus. Computer System Components. Chapter 1: Introduction

Subject: Operating System (BTCOC403) Class: S.Y.B.Tech. (Computer Engineering)

CLASS: II YEAR / IV SEMESTER CSE SUBJECT CODE AND NAME: CS6401 OPERATING SYSTEMS UNIT I OPERATING SYSTEMS OVERVIEW

Operating-System Structures

CSE 153 Design of Operating Systems

Lecture 5: Process Description and Control Multithreading Basics in Interprocess communication Introduction to multiprocessors

System Call. Preview. System Call. System Call. System Call 9/7/2018

Module 4: Processes. Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess Communication

Module 4: Processes. Process Concept Process Scheduling Operation on Processes Cooperating Processes Interprocess Communication

Chapter 3: Process Concept

Chapter 3: Process Concept

Operating Systems. Lecture Course in Autumn Term 2015 University of Birmingham. Eike Ritter. September 22, 2015

QUESTION BANK UNIT I

Last class: OS and Architecture. OS and Computer Architecture

Last class: OS and Architecture. Chapter 3: Operating-System Structures. OS and Computer Architecture. Common System Components

Chapter 2. OS Overview

6.033 Spring Lecture #6. Monolithic kernels vs. Microkernels Virtual Machines spring 2018 Katrina LaCurts

Following are a few basic questions that cover the essentials of OS:

Chapter 3: Process Concept

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

CSI3131 Final Exam Review

Operating System. Chapter 4. Threads. Lynn Choi School of Electrical Engineering

SAZ4B/SAE5A Operating System Unit : I - V

CS6401- Operating System QUESTION BANK UNIT-I

Chapter 1: Introduction

Operating Systems. Peter Druschel and Rodrigo Rodrigues MPI-SWS and Saarland University. Required readings: Silberschatz/Galvin: Chapters 1-3

OPERATING SYSTEM SUPPORT (Part 1)

Windows 7 Overview. Windows 7. Objectives. The History of Windows. CS140M Fall Lake 1

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

Introduction to Operating Systems

CPSC 341 OS & Networks. Introduction. Dr. Yingwu Zhu

Chapter 3: Operating-System Structures

Chapter 3: Processes. Operating System Concepts 9 th Edition

Subject Name:Operating system. Subject Code:10EC35. Prepared By:Remya Ramesan and Kala H.S. Department:ECE. Date:

Transcription:

Operating Systems : Overview Bina Ramamurthy CSE421 8/29/2006 B.Ramamurthy 1

Topics for discussion What will you learn in this course? (goals) What is an Operating System (OS)? Evolution of OS Important OS Components Major achievements Operating system design hierarchy Sample systems 8/29/2006 B.Ramamurthy 2

Goals for the course Study the working of an OS. Study the design and implementation of various components of an OS. Learn about the alternatives available to a designer at all levels of abstraction in an OS. Learn concurrent programming using processes, threads, and system calls. Understand the basics of distributed systems. Explore how you may contribute to solving many open problems in OS and distributed systems. 8/29/2006 B.Ramamurthy 3

What is an Operating system? Interface manager Human interaction made easy interfacing, abstraction, control and sharing Resource manager Efficient use of resources Enhances hardware features virtual time, space and resource (processes, threads) System and data security and protection provider 8/29/2006 B.Ramamurthy 4

User Interface Operating system provides these facilities for the user: Program creation : editors, debuggers, other development tools. Program execution : load, files, IO operations. Access to IO devices: Read and writes. Controlled access to files: protection mechanisms, abstraction of underlying device. System access: Controls who can access the system. Error detection and response: external, internal, software or hardware error. Accounting: Collect stats., load sharing, for billing purposes. 8/29/2006 B.Ramamurthy 5

Resource Manager Processors : Allocation of processes to processors, preemption, scheduling. Memory: Allocation of main memory. IO devices : when to access io devices, which ones etc. Files: Partitions, space allocation and maintenance. Applications, Data, objects. 8/29/2006 B.Ramamurthy 6

Multiprogramming From uniprogramming to multiprogramming systems: Multiprogramming systems: batch programs, objective : maximize system (processor) utilization. Time sharing systems: Objective is minimize response time. Typical programs are interactive. 8/29/2006 B.Ramamurthy 7

Multiprogrammed Batch Systems If memory can hold several programs, then CPU can switch to another one whenever a program is awaiting for an I/O to complete This is multitasking (multiprogramming) 8/29/2006 B.Ramamurthy 8

Processes A program in execution, An entity that can be assigned to and executed on a processes, It is a unit of work. Multiprogramming, time-sharing and real-time transaction systems lead to the refinement of the concept of process. A process can be defined by its attributes and behaviors : it can be viewed as an Abstract Data Type (ADT). When instances of this ADT co-exist we have concurrent processing. Issues in concurrent processing : synchronization, mutual exclusion, deadlock, communication. 8/29/2006 B.Ramamurthy 9

Process Introduced to obtain a systematic way of monitoring and controlling program execution A process is an executable program with: associated data (variables, buffers ) execution context: ie. all the information that the CPU needs to execute the process content of the processor registers the OS needs to manage the process: priority of the process the event (if any) after which the process is waiting other data (that we will introduce later) 8/29/2006 B.Ramamurthy 10

A simple implementation of processes The process index register contains the index into the process list of the currently executing process (B) A process switch from B to A consist of storing (in memory) B s context and loading (in CPU registers) A s context A data structure that provides flexibility (to add new features) 8/29/2006 B.Ramamurthy 11

Memory management Requirements: Process isolation, automatic allocation and maintenance, protection and access control, long-term storage facilities. Virtual memory and file system facilities together satisfy all these requirements. Virtual memory allows programs to address the memory from a logical point of view without regard to the amount of main memory available. File : persistent storage for programs and data. Can view file also as an ADT? File concept makes makes access control and protection convenient for the OS. 8/29/2006 B.Ramamurthy 12

Protection and Security When sharing resources, protection of the systems and user resources from intentional as well as inadvertent misuse. Protection generally deals with access control. Ex: Read only file Security deals usually with threats from outside the system that affects the integrity and availability of the system and information with the system. Example: username, password to access system. Data encryption to protect information. 8/29/2006 B.Ramamurthy 13

Scheduling and resource management Scheduling and resource management is an Operations Research (OR) problem. Goals : Efficient use of resources, satisfy the service time requested by a process, say, in a real-time system and of course, fairness. Short-term and long-term scheduling. Queuing is one of the basic operations associated with scheduling. Interrupt is another important concept in the context of scheduling. 8/29/2006 B.Ramamurthy 14

Scheduling and Resource Management Differential responsiveness discriminate between different classes of jobs Fairness give equal and fair access to all processes of the same class Efficiency maximize throughput, minimize response time, and accommodate as many users as possible 8/29/2006 B.Ramamurthy 15

File System Implements long-term store (often on disk) Information stored in named objects called files a convenient unit of access and protection for OS Files (and portions) may be copied into virtual memory for manipulation by programs 8/29/2006 B.Ramamurthy 16

System Structure Because of it s enormous complexity, we view the OS system as a series of levels Each level performs a related subset of functions Each level relies on the next lower level to perform more primitive functions Well defined interfaces: one level can be modified without affecting other levels This decomposes a problem into a number of more manageable sub problems 8/29/2006 B.Ramamurthy 17

Structure of OS Client-Server Model SERVERS: Splitting the OS into parts, each of which handles one facet of the system, such as file service, process service, terminal service, or memory service CLIENTS: User processes : A client process obtains services by sending messages to the servers. Advantages: Modularity : A bug in fileserver will crash only the fileserver and not the whole OS Adaptability to distributed system: Services could be provided from a remote computer. 8/29/2006 B.Ramamurthy 18

Characteristics of Modern Operating Systems New design elements were introduced recently In response to new hardware development multiprocessor machines high-speed networks faster processors and larger memory In response to new software needs multimedia applications Internet and Web access Client/Server applications 8/29/2006 B.Ramamurthy 19

Microkernel architecture Only a few essential functions in the kernel primitive memory management (address space) Interprocess communication (IPC) basic scheduling Other OS services are provided by processes running in user mode (servers) device drivers, file system, virtual memory More flexibility, extensibility, portability A performance penalty by replacing service calls with message exchanges between process... 8/29/2006 B.Ramamurthy 20

Multithreading A process is a collection of one or more threads that can run simultaneously Useful when the application consists of several tasks that do not need to be serialized Gives the programmer a greater control over the timing of application-related events All threads within the same process share the same data and resources and a part of the process s execution context It is easier to create or destroy a thread or switch among threads (of the same process) than to do these with processes 8/29/2006 B.Ramamurthy 21

Symmetric Multiprocessing (SMP) A computer with multiple processors Each processor can perform the same functions and share same main memory and I/O facilities (symmetric) The OS schedule processes/threads across all the processors (real parallelism) Existence of multiple processors is transparent to the user. Incremental growth: just add another CPU! Robustness: a single CPU failure does not halt the system, only the performance is reduced. 8/29/2006 B.Ramamurthy 22

Operating system Modular View Application Server Comm. Prmtvs File sys. Virtual Mem Hardware + interrupts Process + primitives Shell Directories User Processes Web Server Application Clients Devices Web Clients 8/29/2006 B.Ramamurthy 23

Types of OS Multiprocessing - multiple CPUs Multiprogramming - Time sharing, interactive Real-time : deadlines, time constraints, predictability Distributed systems : Sharing and fault tolerance, reliability, dependability. Network OS Network Transparent Systems : CORBA-like Network-centric Systems : Jini-like Component-based systems: Enterprise Java Read Chapter 1 8/29/2006 B.Ramamurthy 24