Operating System Architecture for Incredibly Diverse Devices David Culler U.C. Berkeley Expeditions Meeting 8/16/1999.

Slides:



Advertisements
Similar presentations
OS Components and Structure
Advertisements

Operating Systems Manage system resources –CPU scheduling –Process management –Memory management –Input/Output device management –Storage device management.
Department of Computer Science and Engineering University of Washington Brian N. Bershad, Stefan Savage, Przemyslaw Pardyak, Emin Gun Sirer, Marc E. Fiuczynski,
Chorus and other Microkernels Presented by: Jonathan Tanner and Brian Doyle Articles By: Jon Udell Peter D. Varhol Dick Pountain.
Unique Opportunities in Experimental Computer Systems Research - the Berkeley Testbeds David Culler U.C. Berkeley Grad.
Introduction to Operating Systems CS-2301 B-term Introduction to Operating Systems CS-2301, System Programming for Non-majors (Slides include materials.
System Architecture for Extreme Devices David Culler U.C. Berkeley DARPA Meeting 9/21/1999.
Towards I-Space Ninja Mini-Retreat June 11, 1997 David Culler, Steve Gribble, Mark Stemm, Matt Welsh Computer Science Division U.C. Berkeley.
Other File Systems: AFS, Napster. 2 Recap NFS: –Server exposes one or more directories Client accesses them by mounting the directories –Stateless server.
Components and Architecture CS 543 – Data Warehousing.
Finale’ cs294-8 Design of Deeply Networked Systems Spring 2000 David Culler & Randy Katz U.C. Berkeley
ProActive Infrastructure Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu Active Networks.
Connecting the Invisible Extremes of Computing David Culler U.C. Berkeley Summer Inst. on Invisible Computing July,
Grids and Grid Technologies for Wide-Area Distributed Computing Mark Baker, Rajkumar Buyya and Domenico Laforenza.
Figure 1.1 Interaction between applications and the operating system.
Clusters Massive Cluster Gigabit Ethernet System Architecture for Extreme Devices David Culler U.C. Berkeley DARPA Meeting.
Clusters Massive Cluster Gigabit Ethernet System Design for Vastly Diverse Devices David Culler U.C. Berkeley HP Visit 3/9/2000.
Introduction Operating Systems’ Concepts and Structure Lecture 1 ~ Spring, 2008 ~ Spring, 2008TUCN. Operating Systems. Lecture 1.
Data Networking Fundamentals Unit 7 7/2/ Modified by: Brierley.
Little Demonstration of the Power in Discovery Jason Hill, Steve Ross David E. Culler Computer Science Division U.C. Berkeley.
Packing for the Expedition David Culler. 5/25/992 Ongoing Endeavors Millennium: building a large distributed experimental testbed –Berkeley Cluster Software.
NPACI: National Partnership for Advanced Computational Infrastructure August 17-21, 1998 NPACI Parallel Computing Institute 1 Cluster Archtectures and.
Operating Systems.
Basics of Operating Systems March 4, 2001 Adapted from Operating Systems Lecture Notes, Copyright 1997 Martin C. Rinard.
Vision/Benefits/Introduction Randy Armstrong (OPC Foundation)
Research on cloud computing application in the peer-to-peer based video-on-demand systems Speaker : 吳靖緯 MA0G rd International Workshop.
Computer System Architectures Computer System Software
©Ian Sommerville 2006Software Engineering, 8th edition. Chapter 12 Slide 1 Distributed Systems Architectures.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED.
LOGO OPERATING SYSTEM Dalia AL-Dabbagh
Operating System Review September 10, 2012Introduction to Computer Security ©2004 Matt Bishop Slide #1-1.
IMPROUVEMENT OF COMPUTER NETWORKS SECURITY BY USING FAULT TOLERANT CLUSTERS Prof. S ERB AUREL Ph. D. Prof. PATRICIU VICTOR-VALERIU Ph. D. Military Technical.
Windows Operating System Internals - by David A. Solomon and Mark E. Russinovich with Andreas Polze Unit OS6: Device Management 6.1. Principles of I/O.
Introduction to Hadoop and HDFS
Processes and Threads Processes have two characteristics: – Resource ownership - process includes a virtual address space to hold the process image – Scheduling/execution.
Silberschatz, Galvin and Gagne  Operating System Concepts Chapter 3: Operating-System Structures System Components Operating System Services.
Silberschatz, Galvin and Gagne  2002 Modified for CSCI 399, Royden, Operating System Concepts Operating Systems Lecture 7 OS System Structure.
Copyright © George Coulouris, Jean Dollimore, Tim Kindberg This material is made available for private study and for direct.
Background: Operating Systems Brad Karp UCL Computer Science CS GZ03 / M th November, 2008.
CE Operating Systems Lecture 3 Overview of OS functions and structure.
Ames Research CenterDivision 1 Information Power Grid (IPG) Overview Anthony Lisotta Computer Sciences Corporation NASA Ames May 2,
9 Systems Analysis and Design in a Changing World, Fourth Edition.
1 Choices “Our object-oriented system architecture embodies the notion of customizing operating systems to tailor them to support particular hardware configuration.
Operating Systems Objective n The historic background n What the OS means? n Characteristics and types of OS n General Concept of Computer System.
ProActive Infrastructure Eric Brewer, David Culler, Anthony Joseph, Randy Katz Computer Science Division U.C. Berkeley ninja.cs.berkeley.edu Active Networks.
17 Establishing Dial-up Connection to the Internet Using Windows 9x 1.Install and configure the modem 2.Configure Dial-Up Adapter 3.Configure Dial-Up Networking.
Data Communications and Networks Chapter 9 – Distributed Systems ICT-BVF8.1- Data Communications and Network Trainer: Dr. Abbes Sebihi.
3/12/2013Computer Engg, IIT(BHU)1 PARALLEL COMPUTERS- 2.
Societal-Scale Computing: The eXtremes Scalable, Available Internet Services Information Appliances Client Server Clusters Massive Cluster Gigabit Ethernet.
Background Computer System Architectures Computer System Software.
September st Evening Vocational School of Trikala our IT lessons …
OPERATING SYSTEM REVIEW. System Software The programs that control and maintain the operation of the computer and its devices The two parts of system.
Overview of today’s lecture Major components of an operating system Structure and internal architecture of an operating system Monolithic Vs Micro-kernels.
1.3 Operating system services An operating system provide services to programs and to the users of the program. It provides an environment for the execution.
INTRODUCTION TO HIGH PERFORMANCE COMPUTING AND TERMINOLOGY.
Towards a High Performance Extensible Grid Architecture Klaus Krauter Muthucumaru Maheswaran {krauter,
Operating System Overview
Modularity Most useful abstractions an OS wants to offer can’t be directly realized by hardware Modularity is one technique the OS uses to provide better.
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING CLOUD COMPUTING
Operating System Review
Chapter 2: System Structures
Operating Systems and Systems Programming
Operating System Review
Ch 4. The Evolution of Analytic Scalability
Operating Systems : Overview
Introduction to Operating Systems
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
OS Components and Structure
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Chapter 13: I/O Systems.
Presentation transcript:

Operating System Architecture for Incredibly Diverse Devices David Culler U.C. Berkeley Expeditions Meeting 8/16/1999

8/16/99Expeditions Diverse OS2 Away from the ‘average’ Device Scalable, Available Internet Services Info. appliances Client Server Clusters Massive Cluster Gigabit Ethernet

8/16/99Expeditions Diverse OS3 Convergence at the Extremes Powerful Services on “Small” Devices –massive computing and storage in the infrastructure –active adaptation of form and content “along the way” Extremes more alike that either is to the middle –More specialized in function –Communication centric design »wide range of networking options –Federated System of Many Many Systems –Hands-off operation, mgmt, development –High Reliability, Availability –Scalability –Power and space limited –simplicity They have to “work or die!”

8/16/99Expeditions Diverse OS4 Body of Work in the Very Large Academic: metacomputing, computational grid –Glunix (UCB), Globus(ANL), Legion (UVA), IPG (NASA), Harness, NetSolve, Snipe (UTK), EMOP, Apples, Cactus, Meta- Chaos,...GlunixGlobusLegionIPG Harness, NetSolve, Snipe Commercial –LSF

8/16/99Expeditions Diverse OS5 Dominant thrust: Glue over big OS Nodes a full OS and Institutional structure –accounts, authentication, resources, execution, storage, policy User constructs a personal virtual machine spanning numerous, potentially diverse resources –mapping from uniform metasystem mechanisms to site specific mechanism »naming, authentication, transparent execution, storage, scheduling –uniform, multiprotocol communication mechanism “Many nodes in a net”, not “Unix on Steroids” –mgmt is fundamental problem, but still unadressed

8/16/99Expeditions Diverse OS6 And in the small... Academic –microkernels, Exokernel, OSKit, ucLinux, ELKS, ExokernelOSKitucLinuxELKS Commercial –PalmOS, PSION, GeoWorks, WinCE, Inferno, QNX, VxWorks, javaos, chorusOS, BeOS,PalmOSPSIONGeoWorksWinCEInfernoQNXVxWorks javaoschorusOSBeOS –jini, corba, dcom,... => tracks the –when it becomes ~ 1990 PC Unix will run on it

8/16/99Expeditions Diverse OS7 Small OS Dominant thrust Unix on a diet + real time seasoning Microkernel finally works on small devices –ability to remove components (modularity) + fault boundaries more important than performance –legacy applications less dominant

8/16/99Expeditions Diverse OS8 Design Issues for “Small Device OS” Managing address spaces Thread scheduling IP stack Windowing System Device drivers File system Applications Programming Interface Power management

8/16/99Expeditions Diverse OS9 Core Questions What are the principles of design for tiny operating systems? –How are they different from a desktop or server? Where should we look for ideas and experience? How can operating systems be made radically simpler? How should we proceed with the investigation?

8/16/99Expeditions Diverse OS10 1st Stab at Principles for Simple OS Communication is fundamental –treated as part of the hardware. No comm is like no power –you don’t bring up the device then “configure comm.” hands off: a direct “user interface” is the exception not the norm –typical device has a network on one side + sensor/actuators on the other »buttons and display a special case –all deployment, development, configuration, mgmt, programming, is through the communication interface schedule data movement, not arbitrary threads of computation constant self-checking and telemetry –rely on the infrastructure for hard stuff

8/16/99Expeditions Diverse OS11 other places to look for ideas Operating systems that are not called “operating systems” eg: modern disk controller –event scheduler handling stream of commands from network link, controlling complex array of sensors and actuators, performing sophisticated calculations to determine what and when (scheduling and caching) as well as transforming data on the fly –automatic connection, enumeration, configuration –but several simplifying assumptions must be removed Complex array of Sensors and actuators Network link: - EIDE, SCSI - FCAL, SSA - USB, ???

8/16/99Expeditions Diverse OS12 OS as little more than FSM Primary focus is scheduling discrete chunks of data movement –not general thread scheduling and unlimited memory management –there may be a bounded amount of work to xform or check data Commands are an event stream merged with sensor/actuator events General thread must be compiled to sequence of bounded atomic transactions –spagetti part of an application is configuring the flows –steady-state is straight-forward event processing + signaling unusual events Simplify network-based debug and mgmt

8/16/99Expeditions Diverse OS13 Adaptation in Flows View data transfers as continuous flows –plumbing as programming model –reservoirs provide slack –trade bandwidth for robustness Natural form of adaptation –ex: faster consumer gets more data –flow equations provide goal, simple error bounds, and react –performance availability

8/16/99Expeditions Diverse OS14 Example: streaming output Events associated with particular configuration of reservoirs and flows drive operation scheduling –hard to effect through queue management and priorities of threads High water mark => stop input low water mark => start input

8/16/99Expeditions Diverse OS15 Availability => Performance availability

8/16/99Expeditions Diverse OS16 Alternative: Comm = Location independent Access to shared storage Key Concepts from Parallel Architecture –hierarchical composition of cache-coherence protocols + consistency models –natural framework for adaptation (pull what you touch) Key Extensions –active elements in the protocol hierarchy –intermittent connection –narrow interface with commitment Pilot --- RMI Proxy --- Ninja Service Prototype –device OS = protocol engine

8/16/99Expeditions Diverse OS17 How to proceed? A lot of experience to be gained from the chopped desktop OS efforts –same time-to-mkt benefit research prototype –brings many small, interesting devices on line –bring Universal Computing Lab on-line (IRDA ) and from meta-OS efforts Build simulation environment for bottom-up development –currently exploring UCLA GloMo simulator Develop ‘always-on’ networking component for expedition testbed Deploy for unusual new devices –smart boulders -> pebbles -> dust