1 Evaluation of Commercial Off The Shelf (COTS) Operating System (OS) Malfunction Mitigation Methods C. Forni, ATK B. Blake, ATK R. Hall, Textron D. Magidson,

Slides:



Advertisements
Similar presentations
TWO STEP EQUATIONS 1. SOLVE FOR X 2. DO THE ADDITION STEP FIRST
Advertisements

Bellwork If you roll a die, what is the probability that you roll a 2 or an odd number? P(2 or odd) 2. Is this an example of mutually exclusive, overlapping,
Pearson Education, Inc. All rights reserved. 1.. Exception Handling.
Chapter 26 Legacy Systems.
By D. Fisher Geometric Transformations. Reflection, Rotation, or Translation 1.
An advanced weapon and space systems company 1 23 rd ISSC/NWSSS Conference 23 rd ISSC/NWSSS Conference C. Forni, B. Blake – Remote Controlled.
Steven F. Mattern Science and Engineering Associates, Inc. (505)
By Rick Clements Software Testing 101 By Rick Clements
Business Transaction Management Software for Application Coordination 1 Business Processes and Coordination.
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
Jeopardy Q 1 Q 6 Q 11 Q 16 Q 21 Q 2 Q 7 Q 12 Q 17 Q 22 Q 3 Q 8 Q 13
0 - 0.
ALGEBRAIC EXPRESSIONS
DIVIDING INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
MULTIPLYING MONOMIALS TIMES POLYNOMIALS (DISTRIBUTIVE PROPERTY)
ADDING INTEGERS 1. POS. + POS. = POS. 2. NEG. + NEG. = NEG. 3. POS. + NEG. OR NEG. + POS. SUBTRACT TAKE SIGN OF BIGGER ABSOLUTE VALUE.
SUBTRACTING INTEGERS 1. CHANGE THE SUBTRACTION SIGN TO ADDITION
MULT. INTEGERS 1. IF THE SIGNS ARE THE SAME THE ANSWER IS POSITIVE 2. IF THE SIGNS ARE DIFFERENT THE ANSWER IS NEGATIVE.
Addition Facts
So far Binary numbers Logic gates Digital circuits process data using gates – Half and full adder Data storage – Electronic memory – Magnetic memory –
1 Processes and Threads Creation and Termination States Usage Implementations.
Making the System Operational
Dependability analysis and evolutionary design optimisation with HiP-HOPS Dr Yiannis Papadopoulos Department of Computer Science University of Hull, U.K.
IAEA Training in Emergency Preparedness and Response Module L-051 General Concepts of Exercises to Test Preparedness Lecture.
Software Engineering COMP 201
MX250 Power on and off, Console Mode. January 2004 Page 2 Power Supply MX250 has ac and dc inputs –ac 100 to 240 V, 5A, 50 to 60 Hz –dc –48 V, 6A –worldwide.
Software change management
1 Dr. Ashraf El-Farghly SECC. 2 Level 3 focus on the organization - Best practices are gathered across the organization. - Processes are tailored depending.
Chapter 14 Software Testing Techniques - Testing fundamentals - White-box testing - Black-box testing - Object-oriented testing methods (Source: Pressman,
Higher Computing Computer Systems S. McCrossan Higher Grade Computing Studies 8. Supporting Software 1 Software Compatibility Whether you are doing a fresh.
Effective Test Planning: Scope, Estimates, and Schedule Presented By: Shaun Bradshaw
Software testing.
Defect testing Objectives
Testing Workflow Purpose
NO LIVE AMMUNITION IN THE CLASSROOM!
1 Thursday, June 29, 2006 "If you really think there's a bug you should report a bug. Maybe you're not using it properly. Have you ever considered that?"
O X Click on Number next to person for a question.
© S Haughton more than 3?
Chapter 11: The X Window System Guide To UNIX Using Linux Third Edition.
การทดสอบโปรแกรม กระบวนการในการทดสอบ
NIMS Communications and Information Management IS-700.A – January 2009 Visual 4.1 NIMS Resource Management Unit 4.
Component-Based Software Engineering Main issues: assemble systems out of (reusable) components compatibility of components.
Button Input: On/off state change Living with the Lab Gerald Recktenwald Portland State University
Lecture 8: Testing, Verification and Validation
Chapter 10 Software Testing
Past Tense Probe. Past Tense Probe Past Tense Probe – Practice 1.
3.1 Silberschatz, Galvin and Gagne ©2009 Operating System Concepts – 8 th Edition Process An operating system executes a variety of programs: Batch system.
Processes Management.
Executional Architecture
Project 6: Working with If Statements Essentials for Design JavaScript Level One Michael Brooks.
Event 4: Mental Math 7th/8th grade Math Meet ‘11.
Addition 1’s to 20.
25 seconds left…...
Test B, 100 Subtraction Facts
11 = This is the fact family. You say: 8+3=11 and 3+8=11
Week 1.
Copyright © 2009 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Java Software Solutions Foundations of Program Design Sixth Edition by Lewis.
We will resume in: 25 Minutes.
O X Click on Number next to person for a question.
1  1998 Morgan Kaufmann Publishers Interfacing Processors and Peripherals.
 2003 Prentice Hall, Inc. All rights reserved. 1 Chapter 13 - Exception Handling Outline 13.1 Introduction 13.2 Exception-Handling Overview 13.3 Other.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 20 Slide 1 Critical systems development 2.
1 Software Engineering Lecture 11 Software Testing.
Chapter 1 and 2 Computer System and Operating System Overview
Operating System Overview
1. Topics to be discussed Introduction Objectives Testing Life Cycle Verification Vs Validation Testing Methodology Testing Levels 2.
Operating Systems.  Operating System Support Operating System Support  OS As User/Computer Interface OS As User/Computer Interface  OS As Resource.
The Functions of Operating Systems Interrupts. Learning Objectives Explain how interrupts are used to obtain processor time. Explain how processing of.
Exceptional Control Flow Topics Exceptions except1.ppt CS 105 “Tour of the Black Holes of Computing”
Exceptions Control Flow
Presentation transcript:

1 Evaluation of Commercial Off The Shelf (COTS) Operating System (OS) Malfunction Mitigation Methods C. Forni, ATK B. Blake, ATK R. Hall, Textron D. Magidson, ARDEC L. Borshard, ARDEC J. Fornoff, ARDEC

2 Summary – Mitigation Cases

3 OS APP Normal Function HAZARD App Based OS Mitigations - OS errors mitigated at App App errors can still produce hazards APP Mit OS APP Normal Function HAZARD APP Mit APP Mit User Interface User Interface App Based OS Mitigations - OS errors mitigated at App Interface App errors Mitigated in App Safe OS APP Normal Function HAZARD APP Mit APP Mit User Interface Safe Middleware APP Shared Resource Middleware & App Based OS Mitigations - same as above + Blocks errors from 2nd app or shared resource More than one App =Middleware necessary!

4 Summary – Safety Impact Required for OS Changes

5 Use an OS with known safety-integrity Use an OS with middleware of known safety integrity Use an OS with all required mitigation within the Application Possible OS Fault Mitigation Methods

6 OS Fault Mitigation Method Selection Process Flow

7 Evolution of OS Functionality and Hazard Causal Factors

8 Event Processing (activation of an Application Function) CaSeCaSe ImplementationBasis of false activationPossible Mitigation methods 1 Application directly obtains status from the hardware resource to determine if activation is necessary. Probability of erroneous activation based on hardware failure rate and the detection and activation software failure rate. Mitigation for possible event detection and activation software failures achieved by Application verification of the HW status in cases where function activation is allowed. 2 Application obtains status from a black box function to determine if activation is necessary. Probability of erroneous activation based on black box function failure rate and the detection and activation software failure rate. Note: Pushing event detection and activation software functionality into the black box function may result in a complexity decrease for the event detection and activation software. Mitigation for event detection and activation software failures can be achieved by Application verification of the status in cases where function activation is allowed. Mitigation for a portion (Status Generation Hardware and/or Software) of the possible black box function failures can be achieved by Application verification of the HW in cases where function activation is allowed. 3 A black box function generates an event to notify application software that the Application Function should be performed. Probability of erroneous activation based on black box function failure rate and the event activation software failure rate. Mitigation for event activation software failures can be achieved by Application Function verification of the event in cases where function activation is allowed. 4 Same as case 3 with the following exception. The event contains the source of data resulting in the event. Note: Maximum mitigation would use HW Status as the Cause. Probability of erroneous activation based on black box function failure rate and the event activation software failure rate. Mitigation for event activation software failures can be achieved by Application Function verification as described for Case 2. Mitigation for a portion (Event Detection Hardware and/or Software) of the possible black box function failures can be achieved by Application verification of the Cause in cases where function activation is allowed. 5 Application Function is activated by a black box function. Probability of erroneous activation based on black box function failure rate. In cases where function activation is allowed, no Mitigation for black-box function failures can be achieved without information about the source of the callback event. 6 Application is activated by a black box activation function. The Activation Cause is available to the Application Function for validation. Note: Maximum mitigation would use HW Status as the Cause. Probability of erroneous activation is based on the black box function failure rate. The cause data allows the probability of erroneous detection to be reduced to that of the Black Box function at the point were the cause data is generated. In cases where function activation is allowed, mitigation for a portion (Event Detection Hardware and/or Software and Callback Event Activation) of the possible black box function failures can be achieved by Application Function verification of the Cause.

9 Mitigation Assessment For COTS OS Usage Process Development OS/Application Interfaces

10 Application Control and Support (IF1) clue list What if the OS Aborts Application Load (insufficient resources)? What if the OS Aborts Application execution (insufficient resources, hardware and/or execution problems)? What if the OS provides insufficient Processing time (Higher priority activities, scheduler problem, etc)? What if the OS and/or Application memory (program or data) is corrupted? What if an application created thread is aborted? What if execution is performed at random locations in memory within the application?

11 Application Control and Support (IF1) Analysis Partitioning Pre-Execution Analysis Hardware power-Up and Initialization OS Load and Startup Application Load and Initialization Execution Analysis – Partitioned by Fault Source Classes Execution Integrity Data Integrity Resource Integrity Post-Execution Analysis Application Termination OS Termination Hardware Power-Down

12 Process Chart for Application Control And Support (IF1) Generalized Execution Integrity mitigation analysis process flow Generalized Data Integrity mitigation analysis process flow Generalized Resource Integrity mitigation analysis process flow

13 OS Events (IF2) clue list What if a hardware fault related OS exception occurs (processor, interface, resource, memory access, etc)? What if the OS provided interface or an OS operation exception occurs?

14 Process Chart for OS Events (IF2) Type 2 OS Interface analysis process flow

15 Application Configured Events (IF3) clue list What if the triggering event does not occur when it should? What if the triggering event occurs when it is not allowed? What if erroneous triggering of the event occurs when allowed?

16 Process Chart for Application Configured Events (IF3)

17 OS Function Calls (IF4) clue list General clue What if the function does not return? Clues for - function used to setup data: What if the function returns without the data being properly set (exception or fault indication not provided, valid exception or fault indication provided, erroneous indication of fault status)? Clues for - function used to get data: Is the status of the acquisition function available on return? What if the function returns without the data being properly acquired (exception or fault indication not provided, valid exception or fault indication provided, erroneous indication of fault status)? What if the function returns properly with invalid data acquired (stale data, out of range, erroneous data)? Clues for - function waits for conditions to be met: What if the function returns without the condition being met (exception or fault detected, erroneous condition met indication, condition met previously [stale data], timeout too early, timeout too late)?

18 Process Charts for OS Function Calls (IF4) Type 4 OS function analysis process flow

19 Process Charts for OS Function Calls (IF4) Continued Type 4 Blocking OS function analysis process flow Type 4 Setup and Control / Data Acquisition OS function analysis process flow