Title: Ninja and the Post-PC Era
1Ninja and the Post-PC Era
- David Culler
- U.C. Berkeley
- Mar 12, 1999
http//ninja.cs.berkeley.edu http//postPC.cs.berk
eley.edu
2Natural Tides of Innovation
Innovation
??
Integration
Personal Computer Workstation Server
Log R
Minicomputer
Mainframe
2/99
Time
3Exciting components
4Historical Perspective
- New eras of computing start when the previous era
is so strong it is hard to imagine that things
could ever be different - mainframe -gt mini
- mini -gt workstation -gt PC
- PC -gt ???
- It is always smaller than what came before.
- Most think of the new technology as just a toy
- The new dominant use was almost completely absent
before. - Technology spread increases
- So where are we headed in the post-PC era?
5Away from the average device
- Powerful, personal capabilities from specialized
devices - small, highly mobile or embedded in the
environment - Intelligence immense storage and processing in
the infrastructure - Everything connected
Devices
Laptops, Desktops
6Imagine
7Structured Architecture
8Service Execution Environment
operator upload
Service request
service threads
Persistent Storage
Managed RMI
Physical processor
Operators
Caches
- parallel application framework on Bases
- RMI hides complexity of scalability and
availability - Dynamic customization and composition
- apSpace is limited execution environment for AR
9Base Execution Environment
- Ninja RMI
- Sun RMI compatible serialization and thread
management - ninja remote object
- TCP or UDP or Multicast UDP (Active Msg soon)
- Authenticated public key
- iS-box
- customizable service VM
- Redirector
- iSpace
10iS-box
- Loader Extends JVM to support services
- LoadService (URL, name, args)
- ListServices
- GetService(name) -gt svc obj
- KillService
- Trusted services loaded at startup
- Security MGR interposes on method calls
- loaded as a trusted service
iS-Loader
Trusted-Services
Security MGR
JVM
11Push Services into the Infrastructure
New service
iS-Loader
Trusted-Services
Service Methods
RMI stubs
Security MGR
JVM
Generated by RMI compiler
- GetService returns service object
- Programming Model for Service Methods?
12Scalable iSpace
- Multi-Space services across group of iS-boxes
- List, Get, or Load Service from any
- Get returns redirector stub
iS-Loader
Multi-Space Loader
Multi-Space SVC
Security MGR
JVM
13Redirector Stub
- Uses almost same RMI dynamic code generation
- Produces RMI stub that manages load balancing and
fail-over across iS-boxes in iSpace - Allows full spectrum of smart-client, front-end,
flat cluster
Load Balance / Fail-over Policy
RMI stubs
Generated by RMI compiler
Distributed Objects - not just remote
14Existing Applications
- Ninja "NOW Jukebox"
- Harnesses Berkeley Network of Workstations
- Plays real-time MPEG-3 audio served from 110
CD's worth of music - Voice-enabled room control
- Speech-to-text Operators control room services
(camera, lights, microphone) - Eventual integration with GSM cell phones and
PDA-based UI - Stock Trading Service
- Accesses real-time stock data from Internet
- Programmatic interface to buy/sell/trade stocks
through online brokerage - NinjaFAX
- Programmable remotely-accessed FAX machine
service - Send/receive FAXes authentication used for
access control - Keiretsu The Ninja Pager Service
- Provides instant messaging service via Web,
1/2-way pagers, WorkPads, etc.
15Future Applications
- Universal Inbox
- e-mail, FAX, pager, voicemail accessible anywhere
- Universal Remote
- multiple-UI control of household/room devices
- automatic UI generation
- Ecash Mint
- Authenticated service to act as digital secure
cash mint
16Complements industry PostPC efforts
- Get maximum number of applications first
- 1990 PC capality in handheld device
- microkernel port of Unix or Windows
- emulate vast API
- Turn devices into appliances
- Mobile extension of dedicated PC
- take short excursion and synch
- Success of the Palm Pilot with primitive OS and
split application model is significant - its the approach, not the technical superiority
- Need to develop foundations for next generation
17Seeds sewn in many projects
- Devices - Infopad, IRAM
- Scalable Servers - NOW, Millennium
- Storage - Tertiary Disk, Istore, Aetherstore
- Sensors and Actuators - BSAC
- Connectivity - BWRC
- Transcoding Services - Wingman, Mediaboard
- Platform Architecture - Ninja
- Computing/Telephony Integration - Iceberg
- Programming Enviornments and Tools
- User interfaces - Notepals
18Building the Bazaar
- What we need is not just a new research project,
but a new computing culture - gt Build a department-wide, universal wireless
PDA infrastructure and a community to take it
forward - Initial Seed Fall 98 with IBM
- 150 IBM workpads lots of cradles IR ???
- Initial community
- Ninja, ICEBERG, MASH grad students
- Senior UI Class (CS 160)
- All interested 1st year CS grads (CS 252, 261,
262 projects) - Fill out based on interest, talent and
availability - gt ask a good question and get yours seminar
19Fall98 Project Excerpts
- E-Commerce and Security
- Pay-Per-Use Services on the Palm Computing
Platform (Mike Chen, Andrew Geweke) - Secure Email Infrastructure for PDAs (Hoon Kang,
Rob von Behren) - SyncAnywhere - Secure Network HotSync (Mike Chen,
Helen Wang) - Groupware
- Kiretsu - Ninja Instant Messaging Service (Matt
Welsh, Steve Gribble) - The MASH MediaPad - Shared Electronic Whiteboard
for the PalmPilot (Yatin Chawathe) - NotePals - Lightweight Meeting Support Using PDAs
(Richard Davis) - OSKI - Open Shared Kalendaring Infrastructure
(Jason Hong, Brad Morrey, Mark Newman) - OS and Communications
- PalmRouter - Networking Sporadically Connected
Devices (Andras Ferencz, Robert Szewczyk) - Numerous Architecture Studies
- Excellent UI Projects
- Ink Chat, Nutrition/Excercise Tracker, Rendezvous
- Meeting Scheduler
20Some Lessons
- Communication is enabling
- low-power wireless needs to be like IP
- Virtual Environment is important
- Devices connect into the infrastructure
- Network HotSync, groupware, centralized e-mail
- gt Need lean, clean communication substrate
- User Service is fundamental
- not just profile and customization info
- routing point for security
- Much room for improvement in devices
- trade BW for compute or storage
- Development effort is the limiting factor
- OSKI 1 person for infrastructure, 2 for WorkPad
- gt need complete distributed system debugging and
simulation environment
21Momentum Building
- Deploy postPC infrastructure throughout building
- Millennium provides large-scale testbed
- Ninja architecture allows developers to Push
Services into the Infrastructure
22Oceanic Vision fluid software
- devices everywhere
- backed by massive, fluid data storage and
composible services - operating systems for vastly diverse devices
- down to sensors and actuators
- streaming data management
- data derived from sensors and activities, not key
entry - incremental query
- automated negotiation architecture
- derive organization from activities
- social networking
- computational economies
23Roles, Collaboration, and Environment
- Bold, Rich PostPC Agenda Emerging
- New balance of expertise and technology between
industry and university - devices, components, networks, applications,
users - New roles and relationships in collaboration
- how do we share space, environment, culture, not
just technology - Fundamentally new demands on the research space
- ability to deploy smart spaces on a large scale
- experimental wireless networking
- new modes of human interaction
- Its not just what we build, but how we use it