The DECOS (Dependable Embedded COmponents and Systems) integrated architecture allows the integration of different embedded application sub- systems with different criticality into the same hardware infrastructure. In the DECOS integrated architecture, computational resources (CPU time, memory, I/O) and communication resources (network bandwidth) are shared among multiple software components in order to reduce the number of de- ployed embedded computer nodes, which implies the reduction of system cost.
The DECOS integrated architecture consists of four layers: the I/O layer, the application layer, the middleware layer, and the core layer. Distributed soft- ware applications run at the application layer. So called DECOS high-level services (virtual network service, virtual gateway service, diagnostic service) are executed in the middleware layer. The core layer provides services that are in charge of predictable and fault-tolerant communication among differ- ent DECOS integrated nodes.
In order to perform a seamless integration of different software modules that may be developed by different vendors, the DECOS integrated architecture services guarantee that different applications do not affect the operation of each other in an undesired manner: An application job that is executed in one of the DECOS components can not affect other application jobs or DECOS services. A prototype implementation of the DECOS integrated architecture was developed at the Vienna University of Technology.
The encapsulated execution environment is in charge of preventing non- specified interaction among the application jobs (implemented as LXRT tasks) executed in the DECOS components. The encapsulated execution environment is implemented by using the Linux operating system with RTAI and LXRT patches. The objective of this work is to validate whether Linux- RTAI-LXRT fulfills the requirements to be used as an encapsulated execution environment in the DECOS integrated architecture. Validation is performed by means of software implemented fault injection (SWIFI).
SWIFI is usually deployed to emulate the occurrence of hardware faults.
In this work, SWIFI is used to perform the emulation of software faults in order to observe, if a faulty application job that is executed in a DECOS component can affect the operation of other application jobs or the DECOS services.