1 / 17

A LEGO-like Lightweight Component Architecture for Organic Computing

Thomas Schöbel-Theuer, Universität Stuttgart schoebel@informatik.uni-stuttgart.de www.athomux.net. A LEGO-like Lightweight Component Architecture for Organic Computing. Outline. The LEGO principle: (almost) arbitrary combinability

Download Presentation

A LEGO-like Lightweight Component Architecture for Organic Computing

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Thomas Schöbel-Theuer, Universität Stuttgart schoebel@informatik.uni-stuttgart.de www.athomux.net A LEGO-like Lightweight Component Architecture for Organic Computing

  2. Outline • The LEGO principle: (almost) arbitrary combinability • How to control that?=> Strategy Representations=> Organic Properties • Explicit Reasoning / Transformations=> Instance Orientation • Prototype: Athomux

  3. LEGO Principle • Examples: LEGO, Fischertechnik, FESTO, Bosch-System Fördertechnik, ... • Key property: low number of interfaces=> Obvious Advantages! • Next logical step after Component Software

  4. Execution layer of the Athomux filesystem bricks ≅ transformers on instances of a memory abstraction bricks may be stateless Example

  5. Insert bricks for replication, transactions / recovery, mobility, ... at any point of the execution layer Advantages of Brick Systems

  6. Control by Strategy Level • Allows formal reasoning on system structure:=> organic properties (self-management /organization / healing, adaptation, ...) • Modularization at strategy level (LEGO...) • Multiple Views / Transformations in parallel:==> Instance Orientation

  7. Full replication => maximum redundancy Partitioning => local control Example: Virtual Computeron a Network

  8. Implementation: Athomuxwww.athomux.net • Infrastructure / Preprocessor / brick description language (superset of C) • Prototype of a filesystem with strategy bricks for automatic path instantiation • Prototype of rudimentary Posix emulationopen(), close(), read(), write(), fork(), exec(), ... • Simple shell runs binaries statically linked with uClibc

  9. Strategy Representation • brick=adapt_meta { • attr transfer_size=4096 • input==in { • connect in=3000:out • } • output==out { • connect out=5000:in • } • }

  10. Future Work • Network transparency: automatically insert remote / mirror bricks at the execution layer, but hide them at a virtual system view:=> network location transparency=> automatic migration=> crash recovery, load balancing, ... • Transaction bricks => insertable at any position => make any part of the system recoverable • More organic properties ...

  11. Conclusions • LEGO principle: next step after component software • Explicit reasoning on system structure=> achieve organic properties • Instance orientation: multiple views in parallel • Athomux prototype: www.athomux.net • Preprocessor: brick description language,superset of C • Runtime environment for bricks, good performance • Filesystem and rudimentary Posix emulation=> Platform for experiments with organic computing

  12. operation $get,$put,$transfer,$wait { addr_t copy_addr = @log_addr; @log_addr -= @>offset; if (@log_addr >= 0 && @log_addr+@log_len <= @>len) { @=call :<in$op @args; } @log_addr = copy_addr; } operation $output_init { // @>offset = ... ; @>len = ...; @success = TRUE; } Example Brick Code • brick #selector • purpose Select a part of a nest • desc • Incomplete demo implementation • enddesc • input :<in • output :>out • data { • addr_t offset; • len_t len; • }

  13. remote may be inserted at any point OS Example

  14. Emulation of AOPby Instance Orientation

  15. is equivalent to Automated (Formal) Reasoning

  16. Spatial locality => better performance Performance in Distributed Systems: Optional Locking

  17. Communication Paradigm as Special Case of Optional Locking

More Related