Representation and Implementation of Functions with Faults
Original Publication Date: 1994-Aug-01
Included in the Prior Art Database: 2005-Mar-27
Publishing Venue
IBM
Related People
Barrett, KL: AUTHOR [+4]
Abstract
This disclosure presents a method of representing faults in the event knowledge bases of IVGEN and implementing functions which usethese faults.
Representation and Implementation of Functions with Faults
This
disclosure presents a method of representing faults in the
event knowledge bases of IVGEN and implementing functions which
usethese faults.
Nearly all
functions have faults associated with them (e.g.,
address/data parity errors, card select feedback error, etc.). Since
a fault cannot constitute an independent function, a method must be
invented to link one or more faults to a single function.
From the
IVGEN user's standpoint, faults and functions are
identical types of events. Thus, faults
are represented by units and
have the same basic slots as other events (namely, ARG_LIST, SET_UP,
TRIGGER CHECK_DONE, and CHECK_RESULTS).
When a fault is chosen, the
user goes through the same process of determining arguments as when a
function is chosen. However, since a
fault cannot function
independently, it must be chosen in a way as to affect a particular
function. This is accomplished by
linking various menus during the
function selection mode.
Every
function is augmented with an ASSOCIATED_FAULTS slot with
a class unit as its value. This class
unit has several descendant
units under which are included all the faults that the function can
handle. The purpose of the ASSOCIATED_FAULTS
slot is to create a
menu of fault choices once a function is chosen. If a user decides
to choose a fault, the fault is linked to the function through the
spec in the following way:
Without a fault:
(((fun1 (arg1 arg2 arg3) nil)
(fun2 (arg1 arg2) nil)))
Fun1 with Fault1:
(((fun1 (arg1 arg2 arg3) ((fault1 (farg1 farg2))))
(fun2 (arg1 arg2)
nil)))
When no
faults are chosen for a function, 'nil' becomes the
third element of the function list. When
a fault is chosen, however,
the fault replaces 'nil' with its name and arguments. S...