MIMA prototype design Proposal for a design implementing the three major FASE execution modes Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009
The System Layers Consumer Client Service Provider Middleware API Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009
The Execution Modes [1] Inline mode: everything lives within the application process Components Wrapper Package Manager Direct Implementation Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009
The Execution Modes [2] Distributed mode: component and applications are different processes (maybe on different hosts) Component Proxy Package Manager Proxy IPC Components Container SAMP Hub + Discovery System + Activation System + DVM = Package Manager Server Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009
The Execution Modes [3] Host execution mode: tasks are called as stand- alone programs running on the normal host shell “main” Container Serialized PSet Shell execv + stdio/stderr Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009
The Component Interfaces
The System Interfaces
Demo Python container Managed sub-process case Direct invoke In-line, distributed, host Indirect invoke In-line, distributed, host Asynchronous invoke In-line, distributed, “host” Asynchronous invoke with handler In-line, distributed Logger interface used Luigi Paioro – ON 9.2 Face to face meeting, Milan, Jul 16 th -17 th 2009