What You Need Is What You Get: Automatic Configuration in - PowerPoint PPT Presentation

1 / 22
About This Presentation
Title:

What You Need Is What You Get: Automatic Configuration in

Description:

Little or no support for managing Inter-component Dependencies. ... Software buses (POLYLITH) Software Architecture. Architecture Description Languages ... – PowerPoint PPT presentation

Number of Views:54
Avg rating:3.0/5.0
Slides: 23
Provided by: fabi7
Category:

less

Transcript and Presenter's Notes

Title: What You Need Is What You Get: Automatic Configuration in


1
What You Need Is What You GetAutomatic
Configuration in
  • Fabio Kon
  • advisor Roy H. Campbell
  • Department of Computer Science
  • University of Illinois at Urbana-Champaign

2
Introduction
  • Component-Based Technology
  • Building complex applications from off-the-shelf
    Components
  • Recent Technologies
  • ActiveX Controls
  • Enterprise Java Beans
  • CORBA Component Model

3
Problem
  • Little or no support for managing
    Inter-component Dependencies.
  • Components are created by different groups w/
    different methodologies
  • Systems are not reliable.
  • Difficult to support fault-tolerance.
  • Difficult to support dynamic reconfiguration.
  • Too many components added to the system.

4
The 2K Distributed (meta-)Operating System
  • 2K is able to run
  • on top of existing Oses (UNIX, WINDOWS)
  • on our customized microkernel
  • Based on CORBA components
  • Automatic Configuration (WYNIWYG)
  • Dynamic Reconfiguration (adaptation)
  • Network-Centric
  • QoS-Aware Resource Management

5
Proposed Solution
  • OS and/or middleware must manage component
    dependencies.
  • Represent component dependence explicitly.
  • Two kinds of inter-component dependence
  • Prerequisites
  • Dynamic Runtime Dependence
  • Use them to support Automatic Configuration

6
Prerequisites
  • What a component needs to run
  • nature of hardware resources
  • share of the hardware resources
  • software services (i.e., components) it requires
  • Video Client example
  • PC with MPEG decoding card
  • 50 of 200MHZ CPU
  • CORBA Video Service

7
Handling Prerequisitesin 2K
8
CORBA Prerequisite Parser
  • Prerequisite can be
  • 1.Name in the 2K Implementation Repository
  • 2.ServiceTypeName and Constraint for the CORBA
    Trading Service.
  • 3.Component IOR (i.e., CORBA reference)

9
Simple Prerequisite Description Format (SPDF)
  • hardware requirements
  • machine_type SPARC
  • native_os Solaris
  • min_ram 5MB
  • optimal_ram 40MB
  • min_vm 30MB
  • optimal_vm 40MB
  • software requirements
  • FileSystem /sys/storage/DFS1.0 (optional)
  • TCPNetworking /sys/networking/BSD-sockets
  • WindowManager /sys/WinManagers/simpleWin
  • JVM /interp/Java/jvm1.2 (optional)

10
Prerequisite Resolver
  • Cached Pull-based Policy
  • 1. Locate prerequisite in the local machine
  • 2. If not present, contacts Implementation
    Repository or Trader.
  • The cache is a local repository of component
    implementations and IORs.

11
Dynamic Runtime Dependence
  • Stores dynamic inter-component dependencies.
  • Created on-the-fly by the Prerequisite Resolver.
  • Dependence graph can be modified by system and
    application components.

12
ComponentConfiguratorFramework
13
Dynamic Reconfiguration
14
Related Work(in Operating Systems)
  • Customizable OSes
  • Choices, Exokernel
  • Microkernels
  • Mach, SPIN, MicroChoices, L4

15
Related Work(in Dynamic Configuration)
  • Emphasis on overall application architecture
  • Software buses (POLYLITH)
  • Software Architecture
  • Architecture Description Languages
  • Emphasis on dependencies
  • the OS is also component-based and adaptable
  • dynamic (runtime) reconfiguration
  • Resource management

16
Implementation Status
  • Completed Prototypes of
  • Dynamically Configurable CORBA ORB (dynamicTAO).
  • Automatic Configuration Service with SPDF.
  • Monitoring Service.
  • Dynamic Security Service.
  • Persistent Object Service.
  • Minimal ORB for small devices (LegORB).

17
Conclusions
  • Component technologies must be aware of component
    dependencies.
  • Middleware-based dependence management can make
    systems
  • easier to administer
  • automatically configurable
  • more reliable
  • dynamically adaptable

18
How to contact us
  • 2K Web site
  • http//choices.cs.uiuc.edu/2K
  • my E-mail f-kon_at_cs.uiuc.edu

19
Updating the JVM
  • int WebBrowserConfiguratoreventOnHookedComponent
  • (ComponentConfigurator cc, Event
    e)
  • if (cc JVMConfigurator)
  • if (e REPLACED)
  • try
  • FrozenObjs fo currentJVM-gtfreezeAllObjs
    ()
  • currentJVM JVMConfigurator-gtimplementation
    ()
  • currentJVM-gtmeltObjects (fo)
  • catch (Exception exp)
  • throw new ReconfigurationFailed(exp)
  • else ...

20
Application Multimedia Distribution
21
The Multimedia Reflector
  • Applications
  • Live Multimedia Streaming
  • Stored Content Streaming
  • Audio/Videoconference
  • Multiple Channels
  • Multiple input and output Connections
  • Multiple Connection types

22
Applying the Framework
  • Prerequisites
  • used to customize the components of each
    Reflector
  • Resource reservation (memory and CPU)
  • ComponentConfigurators
  • represent inter-Reflector dependencies
  • support fault-tolerance
Write a Comment
User Comments (0)
About PowerShow.com