a device driver for use in a computer system comprising a processor , memory and a device operatively coupled to the computer system the device driver being operable to control the device to monitor an operational status of the device , and consequent upon a change in the operational status to generate a fault report data indicating whether the change of status was caused internally within the device or externally by another connected device which caused the change of operational status to occur . the fault reports may also include an indication of the operational status of the device . furthermore , if the fault report data indicates that the change of status was caused externally , the device driver may generate fault direction information indicative of an apparent direction on a connection between the device and the other device suspected as causing the indicated external fault . by providing an indication as to whether a fault has occurred internally or externally , and if externally , a relative direction on a data path from which the fault is perceived , a fault response processor can estimate the location of a faulty device of the computer system with improved accuracy .