Transparent Environment for Replicated Ravenscar Applications Luís Miguel Pinho Francisco Vasques Ada-Europe 2002 Vienna, Austria June 2002
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Summary Motivation System Model Replication Management Framework Repository of task interaction objects Example Conclusions
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Motivation Computer Control Systems –Are present in a wide range of application domains –Are expected to perform correctly (value and time) even in the presence of faults Need to guarantee real-time and fault tolerance properties of applications –Distributed systems Replication as a means to achieve fault tolerance
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Motivation New Challenges –Commercial Off-The-Shelf Components (COTS) Minimise cost and time to market Lack of real-time and fault tolerance properties Requires software-based fault tolerance techniques –Pre-emptive priority driven model Higher flexibility Non-deterministic –Increasing complexity Manage real-time and fault tolerance requirements... … together with the controlled system requirements –A transparent and generic solution is required
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe System Model Distributed fault-tolerant hard real-time applications –Application environment Multitasking environment Guaranteed execution resources Replicated applications –Tolerate COTS components faults –Provides the same environment in all nodes
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe System Model Defines a replication model –Tasks are joined in components The component as the replication unit A component may be spread over several nodes, and several components can share a node De-coupling replication and distribution roles
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application development approach –From the application programmer perspective, simple objects are available to share data and to release tasks Applications are developed without considering replication and distribution –Application configuration is performed by object replacement Framework structure Replication Management Framework
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Replication Management Framework Object Repository –Mapping common task interaction in real-time systems Shared Data Objects for mutual exclusion –Use of timed messages for replica determinism Release Event Objects for sporadic task release –With/without data –Asynchronous task communication –Tasks can not block accessing remote data Remote objects are locally replicated All writes are atomically disseminated
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Replication Management Framework Transparency –Full transparency Inefficient Difficult to know off-line the characteristics of the application –Solution The objects provide a transparent interface, by which application tasks are not aware of replication and distribution issues In a later configuration phase, distributed/replicated resources replace those simple resources Full characteristics of the application are known off-line
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Object Repository Use of Generic Packages –Reuse of implementation mechanisms –Object parameterisation (configuration) at compile-time –Same Interfaces (except for instantiation) –Encapsulation Private implementation based in Protected Types –Mutual exclusion –Sporadic Tasks control
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Object Repository Interfaces
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Object Repository Interfaces
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Object Repository Implementation
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Simple Application
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Application Code: Objects
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Application Code: Tasks
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Application Configuration
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Application Configuration
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Application Code: Node 1
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Object Instantiation: before Configuration
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Application Example Object Instantiation: after Configuration
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe Conclusions A suitable framework for the development of fault- tolerant hard real-time applications –Targeting Pre-emptive fixed priority applications COTS-based systems Transparency and genericity in application development –Distribution and replication only considered in a later configuration phase –Using the semi-transparent approach predictability is achieved
Transparent Environment for Replicated Ravenscar Applications, Luís Miguel Pinho, Francisco Vasques, Ada Europe The End Thank You