SimplexTM in a Hostile Communications Environment : The Coordinated Prototype

vii 1 Problem Statement 1 2 A Prototype for Coordinated Control 3 3 Simplex Concepts 7 3.1 Dynamic Component Binding 8 3.1.1 Replacement Units 8 3.1.2 Fault Containment 9 3.2 Analytic Redundancy 10 3.2.1 Analytic Redundancy as Applied to Control 11 3.2.2 The Decision Module 12 3.2.3 Trusted and Untrusted Elements 13 3.2.4 Software Upgrade 13 3.2.5 Analytic Redundancy Compared to Other Methods 14 3.3 Rate-Monotonic Scheduling Theory 14 3.4 Simplex and COTS 15 3.5 The Benefits of Simplex 16 4 Prototype Design and Implementation 17 4.1 Technical Challenges 17 4.2 Hardware and Software Architecture 18 4.2.1 Real-time Device Control and Coordination 19 4.2.2 Computation and Communication Topology 20 4.2.3 Software Components 20 4.2.4 Communications Attack Modes 21 4.3 Prototype Implementation 22 4.3.1 Long Track Pendulums 23 4.3.2 Pendulum Coordination 24 4.3.3 Communications Support 24 4.3.3.1 Dtag Communications 24 4.3.3.2 Inter-node Communications 25

[1]  Peter H. Feiler,et al.  Impact analysis in real-time control systems , 1999, Proceedings IEEE International Conference on Software Maintenance - 1999 (ICSM'99). 'Software Maintenance for Business Change' (Cat. No.99CB36360).

[2]  Shirish S. Sathaye,et al.  Generalized rate-monotonic scheduling theory: a framework for developing real-time systems , 1994, Proc. IEEE.

[3]  Brian Randell,et al.  The Evolution of the Recovery Block Concept , 1994 .

[4]  Jim Gray,et al.  A census of Tandem system availability between 1985 and 1990 , 1990 .

[5]  Lui Sha,et al.  Real-time scheduling theory and Ada , 1990, Computer.

[6]  Nancy G. Leveson,et al.  An experimental evaluation of the assumption of independence in multiversion programming , 1986, IEEE Transactions on Software Engineering.

[7]  Algirdas Avizienis,et al.  The N-Version Approach to Fault-Tolerant Software , 1985, IEEE Transactions on Software Engineering.

[8]  Brian Randell,et al.  System structure for software fault tolerance , 1975, IEEE Transactions on Software Engineering.