IOA Code Generator (Making IOA Run) - PowerPoint PPT Presentation

About This Presentation
Title:

IOA Code Generator (Making IOA Run)

Description:

1. IOA Code Generator (Making IOA Run) Joshua A. Tauber. PODC Rump Session. July 17, 2000 ... Generate standard language (Java) translation of IOA program that ... – PowerPoint PPT presentation

Number of Views:240
Avg rating:3.0/5.0
Slides: 11
Provided by: nancy94
Learn more at: http://www.podc.org
Category:
Tags: ioa | code | generator | joshua | making | run

less

Transcript and Presenter's Notes

Title: IOA Code Generator (Making IOA Run)


1
IOA Code Generator (Making IOA Run)
  • Joshua A. Tauber
  • PODC Rump Session
  • July 17, 2000
  • Joint work with
  • Steve Garland, Nancy Lynch, Michael Tsai

2
What
  • Generate standard language (Java) translation of
    IOA program that will run in a physically
    distributed network
  • Execution should be efficient
  • No global synchronization

3
Why
  • (Short term)
  • Test bed for distributed algorithm design
  • (Long term)
  • Find practical method for generating code from
    specifications

4
How
  • Make humans do hard thinking
  • Model and use existing external services
    (e.g. network, console)
  • Use library of hand-written data type
    implementations
  • Stay in IOA until very last step
  • Successive refinement
  • Supports application of other tools

5
Node-Channel Form
Global Specification
Node-Channel Form
6
Abstract Channels
  • Abstract model for ease of programming
  • (e.g., Reliable FIFO queue)
  • Algorithm that implements abstract channel in
    terms of (model of) real channel

Auxiliary Automaton
Real channel
7
Environment Implementation
Env
Delay Buffer
Console
Parser
8
Generated vs. External Automata
Env
Code to Generate
Algorithm
Channel
9
Code Generation Process
  • Submit IOA program for node algorithm
  • Generate parser automaton
  • Compose algorithm, parser (computed), and
    auxiliary network automata (from library)
  • Resolve nondeterminism in schedule
  • Convert implicit ND to explicit ND
  • Resolve explicit ND (programmer help)
  • Emit target language code
  • - Link to hand coded-datatype implementations

10
Truth in Advertising
  • Assume network implements model
  • Assumes data type implementations implement
    axiomatic definitions
  • No current fault tolerance
  • Still in progess
  • Composer
  • Code generator
  • Proof of design correctness
Write a Comment
User Comments (0)
About PowerShow.com