Recent Developments in Embedded Software Research - PowerPoint PPT Presentation

1 / 26
About This Presentation
Title:

Recent Developments in Embedded Software Research

Description:

... logs, experiment results, telemetry commands, documents, media files, and more ... decentralized, resource-constrained, embedded, autonomic and mobile ... – PowerPoint PPT presentation

Number of Views:43
Avg rating:3.0/5.0
Slides: 27
Provided by: ChrisMa45
Category:

less

Transcript and Presenter's Notes

Title: Recent Developments in Embedded Software Research


1
Recent Developments in Embedded Software Research
  • CSCI 589 Software Engineering for
    Embedded Systems
  • September 2, 2004

In Collaboration with the USC Software
Architecture Research Group and the Jet
Propulsion Laboratorys OODT Research Group
2
Recap
  • Architectural Abstractions
  • Processing Elements Components
  • Connecting Elements Connectors
  • System Topologies Arrangements of
    Components/Connectors and the rules that govern
    their composition
  • PRISM-MW Architectural Style Framework
  • Architecture-based application development in
    mobile, resource constrained environments

3
Introduction to new developments
  • Outline of this talk
  • Scientific motivations
  • Lets talk about grids
  • OODT JPLs data grid middleware
  • Porting OODT to PRISM-MW
  • A Grid-based, Lightweight, Infrastructure for
    Data-intensive Environments
  • State of the art Wireless Grids
  • Project Idea
  • Lets see how you can contribute to GLIDE, and
    also write a cool application

4
Scientists
Students
Project Managers
More??
Users
???????
File System
Web Site
Data/ Computation
Ground Data System
Database
5
Data Complexity
  • Many different types of data
  • Science images, files, engineering data,
    transaction logs, experiment results, telemetry
    commands, documents, media files, and more
  • Data Volume
  • Large-scale systems are approaching petabytes
  • Small scale systems (like the ones you guys are
    going to be using) can be expected to pump
    through hundreds of megabytes

6
Computational Complexity
  • Different system hardware
  • Laptop, IPAQ, Sensor Web, cell phones,
    Spacecraft
  • Network Distribution and Bandwidth
  • Gigabit Ethernet Hubs, 802.11b and g wifi,
    Bluetooth
  • Huge scientific problems
  • Find new stars given petabytes of astrology data
  • Run scientific experiments to determine if there
    is water on MARS
  • Discover the epicenter of the next earthquakes

7
Grid computing
  • New CS paradigm concerned with enabling virtual
    organizations
  • VOs are dynamic federations of heterogeneous
    organizational entities sharing data, metadata,
    processing and security infrastructure
  • Broken down into two sects
  • Computationally focused grids (a.k.a.
    Computational Grids)
  • Data-centric grids (a.k.a. Data Grids)

8
Some grid basics
  • Grid Middleware
  • Infrastructure supporting grid-based software
    communication, deployment, security and
    development
  • Grid Resource
  • Any data or computational entity that can be
    retrieved or used in a grid system
  • Grid Service
  • Software component providing some service made
    available by grid middleware
  • Yes a Grid Service is a resource!
  • Grid Architecture
  • Five layer diagram presented in Anatomy of the
    Grid paper

9
Five layered Grid Architecture
From Anatomy of the Grid Enabling Scalable
Virtual Organizations
10
Layers
  • Application Layer
  • This is where you use publicly available APIs to
    interface with underlying infrastructure
  • Collective Layer
  • Components that deal with the coordination and
    cooperation of many grid resources
  • Resource Layer
  • Manages and provides APIs to each available grid
    resource
  • Connectivity Layer
  • This is where the security comes in, federated
    identity management, reliable transfer,
    communication protocols, etc.
  • Fabric Layer
  • Abstraction of underlying systems, data, resources

11
Interesting Idea
  • What if the grid paradigm could be enabled in the
    emerging decentralized, resource-constrained,
    embedded, autonomic and mobile (DREAM)
    environments?
  • Enable remote, computational and data
    availability, scalability previously unachievable
    in DREAM environments

12
Motivating Example
  • Team of rovers
  • Need to autonomously plot next science target to
    explore
  • Known algorithm to plot next target
  • Computationally complex and data-intensive
  • Idea rovers could share cpu-cycles and sensor
    information to calculate next science target
  • Problem no coordination software exists to
    perform such sharing scalably, efficiently,
    reliably, ensuring availability, etc.
  • What about the grid?

13
A Grid-based, Lightweight, Infrastructure for
Data-intensive Environments
  • Utilizes the efficiency, portability,
    adaptability of PRISM-MW
  • Enable development of Grid middleware using
    architectural abstractions
  • One of the key problems in current grid
    middleware is the lack of this
  • Lack of architectural abstractions prevents
    analysis of current grid middleware such as How
    reliable is my grid system
  • Enables deployment of Grid middleware using
    architectural abstractions
  • Current convention is buildfiles, makefiles, and
    shell scripts
  • Try running these utilities on an IPAQ!
  • Key PRISM-MW enables application development in
    DREAM environments!

14
A Grid-based, Lightweight, Infrastructure for
Data-intensive Environments
  • Utilizes the grid services of OODT
  • resource
  • discovery abstraction, description
  • search and retrieval
  • query federation
  • In data-intensive environments
  • OODT is currently delivering terabytes of
    information (soon to be petabytes) in several
    deployments within NASA, and the National Cancer
    Institute
  • OODT Architectural Style
  • A set of constituent components
  • Product, Profile, Query Servers
  • Product, Profile, Query Clients
  • An adaptable messaging layer connector
  • Messaging Bus
  • A set of rules that govern the architectural
    configurations of components and connectors

15
GLIDE example
Product Server
Product Server
Product Server
Product Server
File System
Web Site
Ground Data System
Database
16
GLIDE example
Profile Server
Mars Images
PI Contact Information
Engineering Data
Telemetry Files
17
GLIDE example
Query Server
18
GLIDE APIs, Interface
  • You layout the bottom most configuration of GLIDE
    components (a.k.a. previous slide)
  • Then, you instantiate the appropriate client
    component (QueryClient in previous slide) to
    communicate with the appropriate GLIDE server
    component
  • You can communicate with any of the three GLIDE
    server components, its up to you

19
GLIDE Class Diagram
20
QueryHandlers and ProfileHandlers
  • Once you lay out the GLIDE configuration, you
    need to provide interfaces to
  • Discover underlying resources
  • Access underlying resources
  • Recall that resources are data, computation, etc.
  • You do this with two constructs
  • QueryHandlers and ProfileHandlers

21
QueryHandlers
  • ProductServers have a set of zero or more
    IQueryHandlers (to be interesting, we need at
    least one)
  • Each IQueryHandler
  • Takes a QueryObject data component containing
  • A keyword query
  • For data resource
  • To perform some computation
  • A result list to return data/computation results
  • Then performs some computation, producing data
    results, or retrieves some data

22
ProfileHandlers
  • ProfileServers have a set of zero or more
    IProfileHandlers (once again, make at least one,
    cmon guys)
  • Each IProfileHandler
  • Takes a QueryObject specifying a query for a data
    or computational resource
  • Returns a list of ResourceProfile data components
  • Each profile describes
  • Type of resource that satisfies user query
  • Location of resource (most likely a URN)

23
Current research issues in GLIDE and Wireless
Grids
  • Management of replicas
  • Heres a problem
  • Given You have several copies of a particular
    media floating around your mobile grid system
  • You want to retrieve, manage and distribute
    replicas given some QoS requirements
  • Give me the replica that is closest
  • In terms of number of mobile hops
  • Sheer latency
  • Give me the replica from the system with the
    fastest CPU
  • Give me access to a replicated CPU resource
  • Replicas are resources

24
Current research issues in GLIDE and Wireless
Grids
  • Interoperability between mobile and heavyweight
    grids
  • Situation Grid system deployed on top of
    powerful computers running OODT wants to
    distribute replicas to a team of mobile
    scientists, remotely located at different sites
    across world using satellite network link
  • How do the two grid systems communicate?
  • What are the appropriate protocols?
  • What are the appropriate data components?

25
Your class project
  • Probably going to be a mixture of these two
    issues
  • Neno and I are working on finalizing the details,
    should have project outline to you by next class
  • At least, thats what the syllabus says!
  • If you have some ideas that fit into this
    project, please let me know
  • Please speak to me after class

26
Questions?
Write a Comment
User Comments (0)
About PowerShow.com