Copyright © George Coulouris, Jean Dollimore, Tim Kindberg 2001 This material is made available for private study and for direct.

Slides:



Advertisements
Similar presentations
Slide 19-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 19.
Advertisements

Threads, SMP, and Microkernels
OPERATING SYSTEM SUPPORT
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
Lecture 6: Operating System Support Haibin Zhu, PhD. Assistant Professor Department of Computer Science Nipissing University © 2002.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Slides for Chapter 6: Operating System support From Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edition 3, © Addison-Wesley.
Yousuf Surmust Instructor: Marius Soneru Course: CS550 Fall 2001
Figure 1.1 Interaction between applications and the operating system.
1 Last Class: Introduction Operating system = interface between user & architecture Importance of OS OS history: Change is only constant User-level Applications.
1 Chapter 4 Threads Threads: Resource ownership and execution.
Process Concept An operating system executes a variety of programs
Exercises for Chapter 6: Operating System Support
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Chapter 6 - Implementing Processes, Threads and Resources Kris Hansen Shelby Davis Jeffery Brass 3/7/05 & 3/9/05 Kris Hansen Shelby Davis Jeffery Brass.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3 Operating System Organization.
Hardware/Software Concepts Tran, Van Hoai Department of Systems & Networking Faculty of Computer Science & Engineering HCMC University of Technology.
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3.
 Introduction Introduction  Definition of Operating System Definition of Operating System  Abstract View of OperatingSystem Abstract View of OperatingSystem.
Processes Part I Processes & Threads* *Referred to slides by Dr. Sanjeev Setia at George Mason University Chapter 3.
Introduction The operating system layer Protection Processes and Threads Communication and invocation Operating system architecture Summary Chapter 6:
9/13/20151 Threads ICS 240: Operating Systems –William Albritton Information and Computer Sciences Department at Leeward Community College –Original slides.
Chapter 6 Operating System Support. This chapter describes how middleware is supported by the operating system facilities at the nodes of a distributed.
Chapter 2: Operating-System Structures. 2.2 Silberschatz, Galvin and Gagne ©2005 Operating System Concepts – 7 th Edition, Jan 14, 2005 Operating System.
Chapter 4 Threads, SMP, and Microkernels Patricia Roy Manatee Community College, Venice, FL ©2008, Prentice Hall Operating Systems: Internals and Design.
Processes and Threads Processes have two characteristics: – Resource ownership - process includes a virtual address space to hold the process image – Scheduling/execution.
Threads, SMP, and Microkernels Chapter 4. Process Resource ownership - process is allocated a virtual address space to hold the process image Scheduling/execution-
Slide 3-1 Copyright © 2004 Pearson Education, Inc. Operating Systems: A Modern Perspective, Chapter 3.
OPERATING SYSTEM SUPPORT DISTRIBUTED SYSTEMS CHAPTER 6 Lawrence Heyman July 8, 2002.
Distributed System Concepts and Architectures 2.3 Services Fall 2011 Student: Fan Bai
Processes Introduction to Operating Systems: Module 3.
Hwajung Lee.  Interprocess Communication (IPC) is at the heart of distributed computing.  Processes and Threads  Process is the execution of a program.
Modern Operating Systems B.Ramamurthy Chapter 2, Section 2.4.
1 Threads, SMP, and Microkernels Chapter Multithreading Operating system supports multiple threads of execution within a single process MS-DOS.
CS533 - Concepts of Operating Systems 1 The Mach System Presented by Catherine Vilhauer.
Middleware Services. Functions of Middleware Encapsulation Protection Concurrent processing Communication Scheduling.
Instructor’s Guide for Coulouris, Dollimore and Kindberg Distributed Systems: Concepts and Design Edn. 3 © Addison-Wesley Publishers Distribuerede.
A. Frank - P. Weisberg Operating Systems Structure of Operating Systems.
1.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Lecture 2: OS Structures (Chapter 2.7)
The Mach System Silberschatz et al Presented By Anjana Venkat.
Distributed Systems : Operating System Support
From Coulouris, Dollimore, Kindberg and Blair Distributed Systems: Concepts and Design Edition 5, © Addison-Wesley 2012 Slides for Chapter 7: Operating.
CENG334 Introduction to Operating Systems 1 Erol Sahin Dept of Computer Eng. Middle East Technical University Ankara, TURKEY URL:
Distributed Operating Systems CS551 Colorado State University at Lockheed-Martin Lecture 2 -- Spring 2001.
OPERATING SYSTEM SUPPORT
1 Threads, SMP, and Microkernels Chapter 4. 2 Process Resource ownership - process includes a virtual address space to hold the process image Scheduling/execution-
Page 1 2P13 Week 1. Page 2 Page 3 Page 4 Page 5.
Threads, SMP, and Microkernels Chapter 4. Processes and Threads Operating systems use processes for two purposes - Resource allocation and resource ownership.
CSCI/CMPE 4334 Operating Systems Review: Exam 1 1.
1 Chapter 2: Operating-System Structures Services Interface provided to users & programmers –System calls (programmer access) –User level access to system.
Introduction to Operating Systems Concepts
Computer System Structures
Distributed Operating Systems Spring 2004
Distributed Operating Systems
Chapter 5: Threads Overview Multithreading Models Threading Issues
Chapter 6: Operating System Support
CS490 Windows Internals Quiz 2 09/27/2013.
Operating System Concepts
Threads, SMP, and Microkernels
Slides for Chapter 6: Operating System support
Mid Term review CSC345.
B.Ramamurthy Chapter 2 : Appendix
Threads Chapter 4.
Operating Systems: A Modern Perspective, Chapter 3
Outline Operating System Organization Operating System Examples
Operating Systems Structure
Presentation transcript:

Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct use by individual teachers. It may not be included in any product or employed in any service without the written permission of the authors. Viewing: These slides must be viewed in slide show mode. Teaching material based on Distributed Systems: Concepts and Design, Edition 3, Addison-Wesley Distributed Systems Course Operating System Support Chapter 6: 6.1Introduction 6.2The operating system layer 6.4Processes and threads 6.5Communication and invocation 6.6operating system architecture

2 Learning objectives  Know what a modern operating system does to support distributed applications and middleware –Definition of network OS –Definition of distributed OS  Understand the relevant abstractions and techniques, focussing on: –processes, threads, ports and support for invocation mechanisms.  Understand the options for operating system architecture –monolithic and micro-kernels *

3 System layers Figure 6.1 Figure 2.1 Software and hardware service layers in distributed systems *

4 Middleware and the Operating System  Middleware implements abstractions that support network- wide programming. Examples:  RPC and RMI (Sun RPC, Corba, Java RMI)  event distribution and filtering (Corba Event Notification, Elvin)  resource discovery for mobile and ubiquitous computing  support for multimedia streaming  Traditional OS's (e.g. early Unix, Windows 3.0) –simplify, protect and optimize the use of local resources  Network OS's (e.g. Mach, modern UNIX, Windows NT) –do the same but they also support a wide range of communication standards and enable remote processes to access (some) local resources (e.g. files). *

5 Networked OS to Distributed OS  Distributed OS –Presents users (and applications) with an integrated computing platform that hides the individual computers. –Has control over all of the nodes (computers) in the network and allocates their resources to tasks without user involvement.  In a distributed OS, the user doesn't know (or care) where his programs are running. –One OS managing resources on multiple machines –Examples:  Cluster computer systems  Amoeba, V system, Sprite, Globe OS

6 The support required by middleware and distributed applications  OS manages the basic resources of computer systems  Tasks: – programming interface for these resources:  abstractions such as: processes, virtual memory, files, communication channels  Protection of the resources used by applications  Concurrent processing –provide the resources needed for (distributed) services and applications:  Communication - network access  Processing - processors scheduled at the relevant computers *

7 Core OS functionality Figure 6.2 *

8 Protection:  Why does the kernel need to be protected?  Kernels and protection –kernel has all privileges for the physical resources, processor, memory..  execution mode –kernel and user  address space –kernel and user  user transferred to kernel - system call trap  try to invoke kernel resources  switch to kernel mode  cost –switching overhead to provide protection

9 Processes and Threads:  process has one environment  thread: activity, "thread" of execution in one environment  execution environment: –an address space –synchronization and communication resources –i/o resources  why execution environment?  threads share one execution environment, why?  older names: heavyweight and lightweight processes  Address space

10 Processes and Threads  Address space –unit of management of a process' virtual memory  Regions –Text, heap, stack  Each region –beginning virtual address and size –read/write/exe permissions for the process' threads –growth direction  Why regions: –different functionalities, for example:  different stack regions for threads  memory-mapped file  Shared memory regions among processes? –libraries –kernel –data sharing and communication

11 Processes and Threads: Process address space Stack Text Heap Auxiliary regions 0 2 N * Figure 6.3

12 Processes and Threads: process creation  distributed systems –choice of target host –actual creation of execution env  choice of target host –transfer policy: local or remote? –location policy: if not local, which host/processor  V and Sprite system: user has a command and OS chooses  Amoeba: a run server decides, more transparent  static and adaptive location policies –static: predetermined function –adaptive: depends on current state of the processing nodes  load-sharing systems –centralized: one load manager –hierarchical: tree of managers –decentralized: nodes exchange information, local decision –sender-initiated –receiver-initiated  process migration –moved while it's running