Abstract

Software fault positioning is one of the most effective activities in program debugging. In this paper, we propose a model-based fault positioning method to detect the faults of embedded program without source code. The system takes the machine code of embedded software as input and translates the code into high-level language C with the software reverse engineering program. Then, the static analysis on the high-level program is taken to obtain a control flow graph (CFG), which is denoted as a node-tree and each node is a basic block. According to the faults found by the field testing, we construct a fault model by extracting the features of the faulty code obtained by ranking the Ochiai coefficient of basic blocks. The model can be effectively used to locate the faults of the embedded program. Our method is evaluated on ST chips of the smart meter with the corresponding source code. The experiment shows that the proposed method has an effectiveness about 87% on the fault detection.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call