17
System Architecture for Extreme Devices David Culler http://www.cs.berkeley.edu/~culler U.C. Berkeley DARPA Meeting 9/21/1999

System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

  • View
    220

  • Download
    0

Embed Size (px)

Citation preview

Page 1: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

System Architecture for Extreme Devices

David Culler

http://www.cs.berkeley.edu/~culler

U.C. Berkeley

DARPA Meeting

9/21/1999

Page 2: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 2

Away from the ‘average’ Device

Scalable, AvailableInternet Services

Info. appliances

ClientServer

Clusters

Massive Cluster

Gigabit Ethernet

Page 3: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 3

Convergence at the Extremes

• Arbitrarily Powerful Services on “Small” Devices– massive computing and storage in the infrastructure

– active adaptation of form and content “along the way”

• Extremes more alike than 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

• Each extends the other

Page 4: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 4

State-of-the-Art: Very Large Systems

• Scalable Clusters Established– high-speed user-level networking + single system image

– naming, authentication, resources, remote exec., storage, policy

• Meta-system glue over full OS and Institutional structure

– Glunix (UCB), Globus(ANL), Legion (UVA), IPG (NASA), Harness, NetSolve, Snipe (UTK), ...

– uniform, multiprotocol communication mechanism

– personal virtual machine spanning potentially diverse resources

» constructed and managed “by hand”

• Key challenges– Automatic composition, Management, and Availability

– Scalability to global scale

– Ease of development for global-scale services

Page 5: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 5

State-of-the-Art: in the small...

• Unix-like support in a small form factor + real time seasoning

– microkernels dominate

» academic: Exokernel, OSKit, ucLinux, ELKS,

» Commercial: PSION, GeoWorks, WinCE, Inferno, QNX, VxWorks, javaos, chorusOS,

– + PalmOS, BeOS,

– Components and mobile objects: jini, corba, dcom, ...

=> tracks the 80386– when it becomes ~ 1990 PC Unix will run on it

– ability to remove components (modularity) + fault boundaries more important than performance

– legacy applications less dominant

Page 6: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 6

Design Issues for “Small Device OS”

• Current: Managing address spaces,Thread scheduling, IP stack, Windowing System, Device drivers, File system, Applications Programming Interface, Power management

• Challenge: How can operating systems for tiny devices be made radically simpler, manageable, and automatically composable?

Page 7: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 7

Emerging Devices

• RF COTS Mote– Atmel Microprocessor

– RF Monolithics transceiver

» 916MHz, ~20m, 4800 bps

– 1 week fully active, 2 yr @1%

N

S

EW 2 Axis Mag. Sensor

2 Axis AccelerometerLight Intensity Sensor

Humidity Sensor

Pressure Sensor

Temperature SensorLaser mote

• 650nm laser pointer• 2 day life full duty

CCR mote

• 4 corner cubes

• 40% hemisphere

Page 8: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 8

Micro Mote - First Attempt

Page 9: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 9

Structured Communication-Centric Architecture Approach

• Active Proxies– connected to the infrastructure– soft-state, bootstrap protocol– transcoding,

• Ubiquitous Devices– billions– sensors / actuators– PDAs / smartphones / PCs– heterogeneous

Service Path

• Base Scalable Infrastructure– highly available– persistent state (safe)– databases, agents– service programming environment

• Service Paths– aggregate flows (rivers)– transcoding operators

Page 10: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 10

Three Basic Kinds of Nodes

• Infrastructure Nodes– powerful network + lots of proc. and storage

– interact through the network

• Transducer Nodes– network + sensors or actuators

– limited proc and state

• Interaction Nodes– network + user interface

– widely varying capability and size

• Communication is the common element

Page 11: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 11

The Large: Service-Centric Platform Arch

Servers

ClientsClients

ClientsClients

ClientsClients

Servers

Servers

Infrastructure Services

Open

Enable Distributed Innovation of Scalable, Avail. Services• service registry, aggregate execution env., transparency • persistent dist. data structures• massive fluid storage (ocean)• adaptive high-bandwidth flows (rivers)

• Build the infrastructure itself through composition of services

Page 12: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 12

Automated Composition and Mgmt

• Individual services are strongly-typed active components that can be located through intentional “service discovery”

• Application formed as path (or graph) of services– not ad hoc connectivity, nor general planning

– reachability and adaptation

• Resources allocated and managed in decentralized manner under economic model

– translation of value -> resource

– platform components enforce allocation

– rich body of mechanisms (contracts, auctions, pricing)

– natural elevation from resources to higher level services

=> Simple composition building from complex nodes

Page 13: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 13

The Small: radically simple OS for management and composition• Communication is fundamental

– treated as part of the hardware. No comm. is like no power

• 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

Page 14: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 14

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

– spaghetti part of an application is configuring the flows

– steady-state is straight-forward event processing + signaling unusual events

• constant self-checking and telemetry– rely on the infrastructure for hard stuff

• correct-by-construction techniques for cooperating FSMs

Page 15: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 15

Precursors to the next generation• 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 ofSensors and actuators

Network link: - EIDE, SCSI - FCAL, SSA - USB, 1394 - ???

Page 16: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 16

UCB Testbed

• 1x300 proc + 10x20 proc SAN clusters across depts.

• integrated through multiple gigabit ethernet

• extended out throug 100s desktops, RF laptop, IRDA PDA, Cell Phones, Pagers, and numerous motes

Cell Phones

PDAs Future Devices

Wireless DesktopPCs

Servers

Clusters

Massive Cluster

Gigabit Ethernet

Page 17: System Architecture for Extreme Devices David Culler culler U.C. Berkeley DARPA Meeting 9/21/1999

9/21/99 Endeavour Sys. Arch 17

Plan

• Prototype Phase:– Large: 2nd generation NOW arch. + meta-OS efforts + Ninja

Service Platform

– Small: PalmOS + wince + uc-Linux

– simulation environment

• Develop:– Automated service composition architecture

– FSM-OS and negotiation/mgmt architecture

• Deploy widespread services, devices and feeds

• Evaluate against high-speed decision making applications