IP Library Granted Patent US 7,200,525
Granted Patent B1
US 7,200,525 · App. 10/880,029 · Granted Apr 3, 2007

System and method for generating a data structure representative of a fault tree

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,200,525
App. No.
10/880,029
Granted
Apr 3, 2007
Kind
B1
Abstract

A method and system are provided for generating a data structure representative of a fault tree for a system. One embodiment of the method includes providing one or more input files comprising a source code description of the fault tree. The source code description has a plurality of statements specifying events and propagations in the fault tree, where a propagation represents a cause and effect linkage between events. The method further includes compiling the input files in source code into the data structure.

Claims (46)

1. A method for generating a data structure representative of a fault tree for a system, said method comprising:

providing one or more input files comprising a source code description of said fault tree, wherein said source code description is written according to a fault tree description language, wherein said source code description has a plurality of statements specifying events and propagations in the fault tree, and wherein a propagation represents a cause and effect linkage between said events; and

compiling the input files in source code into said data structure representative of a fault tree for a system, wherein said compiling is performed by a compiler for said fault tree description language, wherein said data structure comprises a representation of said events and said propagations in the fault tree.

2. The method of claim 1 , wherein said data structure is in binary format.

3. The method of claim 1 , further comprising preprocessing said one or more input files before compiling to implement any preprocessor directive in said one or more input files.

4. The method of claim 1 , wherein the plurality of statements comprises two classes of statements, declarations and propagations, and wherein declarations are used to specify events in the fault tree.

5. The method of claim 4 , wherein one of the plurality of statements comprises a declaration for an event representing a fault in the system, wherein the declaration associates the event with a field replaceable unit (FRU).

6. The method of claim 4 , wherein one of the plurality of statements comprises a declaration for an event representing a fault in the system, wherein the declaration associates the event with an automatic system reconfiguration unit (ASRU).

7. The method of claim 4 , wherein one of the plurality of statements comprises a declaration for an event representing a fault in the system, wherein the declaration associates a Failure in Time rate with the fault.

8. The method of claim 4 , wherein one of the plurality of statements comprises a declaration of an event, wherein the declaration defines an event class and a component path for the event.

9. The method of claim 8 , wherein said component path excludes instance numbers.

10. The method of claim 8 , wherein said constraint has a value which is determined at run-time when the fault tree data structure is utilized.

11. The method of claim 10 , wherein said constraint is associated with an event included in a declaration statement, and said event is elided from all statements in the fault tree if the value of the constraint at run-time is determined to be false.

12. The method of claim 10 , wherein said constraint is associated with an event included in a propagation statement, and said event is elided from the propagation statement if the value of the constraint at run-time is determined to be false.

13. The method of claim 10 , wherein said constraint value is dependent upon system configuration at run-time.

14. The method of claim 10 , wherein said constraint value is dependent upon information relating to an error propagating in said system.

15. The method of claim 10 , wherein said constraint value is dependent upon information relating to a report of a detected error.

16. The method of claim 1 , further comprising associating at least one constraint with at least one of the events.

17. The method of claim 1 , further comprising associating a timing constraint with one of said propagations.

18. The method of claim 1 , further comprising associating a poller with one of said propagations, wherein the associated propagation only occurs when the poller is exercised.

19. The method of claim 1 , further comprising performing vertical expansion of one of said propagations where a component is specified, said vertical expansion iterating the propagation over all matching instances of said component at run-time.

20. The method of claim 1 , further comprising one of said plurality of statements including a declaration of one of said propagations marking for horizontal expansion a component of an event involved in the propagation, said horizontal expansion iterating said event over all instances of said component at run-time.

21. The method of claim 1 , wherein said data structure is independent of configuration of the system.

22. A method for processing a data structure representative of a fault tree for a system, said method comprising:

providing one or more input files, said input files comprising a source code description of said fault tree, wherein said source code description has a plurality of statements comprising one or more declarations and propagations, wherein a declaration defines an event in said fault tree and a propagation defines a cause and effect linkage between events, and wherein at least one of said statements includes a constraint, wherein the constraint limits propagation in the fault tree according to a run-time status of the system;

compiling said one or more input files into said data structure; and

evaluating and applying said constraint at run-time in accordance with the run-time status of the system.

23. The method of claim 22 , wherein the compiled data structure is independent of configuration of the system.

24. The method of claim 23 , further including applying a current configuration at run-time to utilize said data structure.

25. Apparatus for generating a data structure representative of a fault tree for a system, said apparatus comprising:

a device configured to receive one or more input files comprising a source code description of said fault tree, wherein said source code description is written according to a fault tree description language, wherein said source code description has a plurality of statements specifying events and propagations in the fault tree, and wherein a propagation represents a cause and effect linkage between said events; and

wherein the device is configured to implement a compiler for converting the input files in source code into said data structure representative of a fault tree for a system, wherein the compiler is a compiler for said fault tree description language, wherein said data structure comprises a representation of said events and said propagations in the fault tree.

26. Apparatus for processing a data structure representative of a fault tree for a system, said apparatus comprising:

a device configured to receive one or more input files, said input files comprising a source code description of said fault tree, wherein said source code description has a plurality of statements comprising one or more declarations and propagations, wherein a declaration defines an event in said fault tree and a propagation defines a cause and effect linkage between events, and wherein at least one of said statements includes a constraint, wherein the constraint limits propagation in the fault tree according to a run-time status of the system;

wherein the device is configured to implement:

a compiler for converting said one or more input files into said data structure; and

and a diagnosis engine for evaluating and applying said constraint at run-time in accordance with the run-time status of the system.

27. A tangible computer program storage product comprising program instructions computer-executable for generating a data structure representative of a fault tree for a system, wherein said generating comprises:

accepting one or more input files comprising a source code description of said fault tree, wherein said source code description is written according to a fault tree description language, wherein said source code description has a plurality of statements specifying events and propagations in the fault tree, and wherein a propagation represents a cause and effect linkage between said events; and

compiling the input files in source code into said data structure representative of a fault tree for a system, wherein said compiling is performed by a compiler for said fault tree description language, wherein said data structure comprises a representation of said events and said propagations in the fault tree;

storing said data structure.

28. A tangible computer program storage product comprising program instructions for processing a data structure representative of a fault tree for a system, wherein said program instructions are computer-executable to implement:

accepting one or more input files, said input files comprising a source code description of said fault tree, wherein said source code description has a plurality of statements comprising one or more declarations and propagations, wherein a declaration defines an event in said fault tree and a propagation defines a cause and effect linkage between events, and wherein at least one of said statements includes a constraint, wherein the constraint limits propagation in the fault tree according to a run-time status of the system;

compiling said one or more input files into said data structure;

storing said data structure; and

evaluating and applying said constraint at run-time in accordance with the run-time status of the system.

Assignments (2)
MERGER AND CHANGE OF NAME Recorded Dec 16, 2015
From: ORACLE USA, INC.; SUN MICROSYSTEMS, INC.; ORACLE AMERICA, INC.
To: ORACLE AMERICA, INC.
Reel/Frame 037302/0732 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 3, 2005
From: WILLIAMS, EMRYS; RUDOFF, ANDREW; SUN MICROSYSTEMS LTD.
To: SUN MICROSYSTEMS, INC.
Reel/Frame 016119/0095 →