CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS

Similar documents
Distributed OS and Algorithms

Operating Systems : Overview

CONTENTS. Computer-System Structures

Chapter 2: Operating-System Structures. Operating System Concepts 8 th Edition

Architectural Blueprint The 4+1 View Model of Software Architecture. Philippe Kruchten

OPERATING SYSTEMS UNIT - 1

Last Class: OS and Computer Architecture. Last Class: OS and Computer Architecture

Operating System Services

Architectural Blueprint

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

Operating System Overview. Operating System

Concepts of Distributed Systems 2006/2007

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

Operating Systems Overview. Chapter 2

Operating systems Architecture

Operating Systems. studykorner.org

CAS 703 Software Design

Operating-System Structures

Topics. Operating System I. What is an Operating System? Let s Get Started! What is an Operating System? OS History.

Presented by: Alvaro Llanos E

Chapter 1: Introduction

Operating Systems. Antônio Augusto Fröhlich LISHA/UFSC. December 20, 2008

Chapter 1: Introduction

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

The modularity requirement

OPERATING SYSTEM OVERVIEW

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 1: Distributed Systems: What is a distributed system? Fall 2013

Topics. Operating System. What is an Operating System? Let s Get Started! What is an Operating System? Where in the Book are we?

Sistemas Operacionais I. Valeria Menezes Bastos

Chapter 1: Introduction. Operating System Concepts 8th Edition,

Chapter 3: Operating-System Structures

Chapter 3: Operating-System Structures

Computer System Overview

3C05 - Advanced Software Engineering Thursday, April 29, 2004

Operating- System Structures

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

Sistemi in Tempo Reale

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

CS420: Operating Systems

Process Description and Control

Chapter 2 Operating System Overview

Chapter 1: Introduction

02 - Distributed Systems

Misc. Third Generation Batch Multiprogramming. Fourth Generation Time Sharing. Last Time Evolution of OSs

02 - Distributed Systems

Introduction. Chapter 1

OPERATING SYSTEMS: Lesson 1: Introduction to Operating Systems

Distribution and web services

Operating-System Structures

EECS 3221 Operating System Fundamentals

EECS 3221 Operating System Fundamentals

CS420: Operating Systems

UNIT 2. OPERATING SYSTEM STRUCTURES

Software Architecture

Crossbar switch. Chapter 2: Concepts and Architectures. Traditional Computer Architecture. Computer System Architectures. Flynn Architectures (2)

SOFTWARE ARCHITECTURES ARCHITECTURAL STYLES SCALING UP PERFORMANCE

CS370 Operating Systems

Software Paradigms (Lesson 10) Selected Topics in Software Architecture

Introduction. Operating Systems. Introduction. Introduction. Introduction

Client Server & Distributed System. A Basic Introduction

The Impact of SOA Policy-Based Computing on C2 Interoperation and Computing. R. Paul, W. T. Tsai, Jay Bayne

Commercial Real-time Operating Systems An Introduction. Swaminathan Sivasubramanian Dependable Computing & Networking Laboratory

ELEC 377 Operating Systems. Week 1 Class 2

Introduction. CS3026 Operating Systems Lecture 01

Module 3: Operating-System Structures. Common System Components

Process Description and Control

Chapter 1: Introduction. Operating System Concepts 9 th Edit9on

CPS221 Lecture: Operating System Functions

CS30002: Operating Systems. Arobinda Gupta Spring 2017

System types. Distributed systems


Introduction to OS (cs1550)

Module 3: Operating-System Structures

Operating System Overview. Chapter 2

Lecture 1 Introduction (Chapter 1 of Textbook)

CSCI 3130 Software Architectures 1/3. February 5, 2013

Distributed Systems. Lecture 4 Othon Michail COMP 212 1/27

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

The memory of a program. Paging and Virtual Memory. Swapping. Paging. Physical to logical address mapping. Memory management: Review

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

Distributed Systems. Thoai Nam Faculty of Computer Science and Engineering HCMC University of Technology

Physical memory vs. Logical memory Process address space Addresses assignment to processes Operating system tasks Hardware support CONCEPTS 3.

European University of Lefke. Instructor: Dr. Arif SARI

Topics on Web Services COMP6017

Today: I/O Systems. Architecture of I/O Systems

CS370 Operating Systems

Four Components of a Computer System

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

Unit 2 : Computer and Operating System Structure

1 PROCESSES PROCESS CONCEPT The Process Process State Process Control Block 5

Operating Systems CS3502 Spring 2018

Distributed File Systems Issues. NFS (Network File System) AFS: Namespace. The Andrew File System (AFS) Operating Systems 11/19/2012 CSC 256/456 1

Last class: Today: Course administration OS definition, some history. Background on Computer Architecture

DHANALAKSHMI COLLEGE OF ENGINEERING, CHENNAI

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

Part V. Process Management. Sadeghi, Cubaleska RUB Course Operating System Security Memory Management and Protection

CHAPTER 3 - PROCESS CONCEPT

Transcription:

CHAPTER 1: OPERATING SYSTEM FUNDAMENTALS What is an operating system? A collection of software modules to assist programmers in enhancing system efficiency, flexibility, and robustness An Extended Machine from the users viewpoint A Resource Manager from the system s viewpoint What are the primary functions of an operating system? multiplexing the processor(s) scheduling processes coordinating interaction among processes, interprocess communication and synchronization managing system resources (I/O, memory, data files) enforcing access control and protection maintaining system integrity and performing error recovery providing an interface to the users 1

Evolution of modern operating systems 1. Centralized operating system: resource management and extended machine to support Virtuality (a) Resident Monitor (RM) - user=operator, single process (b) Batch Systems - user operator, single multiple processes (c) Timesharing Systems - interactive, multiple processes (d) Personal Computers - user=operator, single multiple processes 2. Network operating system: resource sharing to achieve Interoperability 3. Distributed operating system: a single computer view of a multiplecomputer system for Transparency 4. Cooperative autonomous system: cooperative work with Autonomicity A spectrum of modern operating systems 1st Decreasing Degree of Hardware and Software Coupling 3rd 4th 2nd centralized operating system distributed operating system cooperative autonomous system network operating system Decreasing Degree of Transparency 2

Operating system structuring methods modularization vertical partitioning (layered one-in-one-out structure) horizontal partitioning client/server model minimal (or micro) kernel subsystem with API and SPI Example of OS Partitioning: Applications accounting word processing manufacturing Subsystems programming environment database system Utilities compiler command interpreter library System Services file system memory manager scheduler Kernel CPU multiplexing, interrupt handling, device drivers synchronization primitives, interprocess communication 3

API and SPI: Applications API system services SPI (or HAL) Extensible Portable Platforms Windows NT: an example of operating system structure OS / 2 client Win 32 client POSIX client OS / 2 Win 32 POSIX subsystem subsystem subsystem User Mode system service API Kernel Mode object manager security reference monitor process manager local procedure call virtual memory manager I / O manager Executives kernel with hardware abstraction hardware platform 4

Overview of centralized operating systems: Resource Manager Process management interprocess communication process synchronization process scheduling Memory management memory allocation and deallocation logical to physical address mapping virtual memory support: segmentation and paging protection Device management device driver buffering spooling Data management file access file sharing concurrency control data replication 5

Process management interprocess communication process synchronization process scheduling Process States: Starting Halting Initialize PCB Halt/ABEND Dispatch/Context switch Ready Running TRO/Context switch Unblock Block Blocked 6

Memory management memory allocation and deallocation logical to physical address mapping virtual memory support: segmentation and paging protection Paged Memory: Logical Address Physical Address Page Number Offset Page Frame Offset Page Table Control Bits Page Frame V D S 7

Device management device driver buffering spooling Device Drivers and DMA: Hardware Independent Interface Generic Driver Code Hardware Dependent Code Physical Device Interface CPU RAM System Bus DMA Device 1 Device N 8

Data management file access file sharing concurrency control data replication Memory Management Unit: CPU TLB MMU Cache RAM System Bus 9

Unix File System: Directory Disk Blocks File Name my_file.txt i node number 0x001af38 i node Table i node Owner UID Owner GID RC drwxrwxrwx Direct Blk 10 Direct Blk 0 Direct Blk 1 Direct Blk 11 Direct Blk 521 Primary IB 0 Secondary IB 1 IB 1 1 IB 2 Direct Blk 522 Direct Blk 523 1 IB 512 10

Unix File Tables: Proc Ctl Blk Sys File Tbl i node Table PID Proc File Tbl PFT ptr rc loc mode i node # FID 11

Network operating system interoperability: ability of information exchange among heterogeneous systems supported by network communication protocols transport service: the primary interface between operating system and computer network characterized by common network applications (servers) remote login file transfer messaging browsing remote execution A network file system example application processes local file system file service network file system device transport management service device network drivers KERNEL service peer communication protocols application processes network file system transport service network service file service KERNEL local file system device management device drivers local hardware communication network local hardware 12

Distributed operating system transparency servers for supporting resource sharing and distributed processing algorithms to implement transparencies details in latter chapters Service Decomposition vs. Integration Services Decomposition in distributed systems Integration in autonomous systems 13

Cooperative autonomous system client/server model object model software bus (middleware, broker, or trader) CORBA and ODP Peer-to-Peer (P2P) systems Service Oriented Architecture (SOA) systems An example of cooperative autonomous system communication channels real estate agency Yellow Pages servers realtor realtor client well known server client buyer newspaper seller 14

Service Oriented Architecture (SOA) (from http://en.wikipedia.org/wiki/service-oriented architecture) Guiding Principles Reuse, granularity, modularity, composability, componentization, interoperability Standards compliance Service identification and categorization, provisioning and delivery, monitoring and tracking SOA Elements General idea of usage is to orchestrate services to develop application. 15

Specific SOA Architectural Principles Service encapsulation - minimal interface Service loose coupling - minimize dependencies Service contract - documented specification and agreement Service abstraction - internals hidden Service reusability - intentional packaging of multi-use services Service composability - composite services formed from building blocks Service autonomy - owners control logic encapsulated by services offered Service optimization - clients can shop for the best service Service discoverability - meaningful descriptions available through discovery mechanisms Service relevance - granularity is right for meaningful service Why do we need distributed control algorithms? An algorithm is sometimes called protocol if it specifies coordination more than computation. algorithm changes due to message passing need for consensus algorithms due to lack of global information concurrency control algorithms to avoid interference in resource sharing coherency control algorithms to maintain consistency for data replication protocols for group communication in distributed applications fault-tolerance algorithms for handling failure and recovery real-time and distributed scheduling algorithms 16