TY - JOUR
T1 - An Approach to Concurrent Control Flow Checking
AU - Yau, Stephen S.
AU - Chen, Fu Chung
PY - 1980/3
Y1 - 1980/3
N2 - A control flow checking scheme capable of detecting control flow errors of programs resulting from software coding errors, hardware malfunctions, or memory mutilation during the execution of the program is presented. In this approach, the program is partitioned into loop-free intervals and a database containing the path information in each of the loop-free intervals is derived from the detailed design. The path in each loop-free interval actually traversed at run time is recorded and then checked against the information provided in the database, and any discrepancy indicates an error. This approach is general, and can detect all uncompensated illegal branches. Any uncompensated error that occurs during the execution of a loop-free interval and manifests itself as a wrong branch within the loop-free interval or right after the completion of execution of the loop-free interval is also detectable. The approach can also be used to check the control flow in the testing phase of program development. The capabilities, limitations, implementation, and the overhead of using this approach are discussed.
AB - A control flow checking scheme capable of detecting control flow errors of programs resulting from software coding errors, hardware malfunctions, or memory mutilation during the execution of the program is presented. In this approach, the program is partitioned into loop-free intervals and a database containing the path information in each of the loop-free intervals is derived from the detailed design. The path in each loop-free interval actually traversed at run time is recorded and then checked against the information provided in the database, and any discrepancy indicates an error. This approach is general, and can detect all uncompensated illegal branches. Any uncompensated error that occurs during the execution of a loop-free interval and manifests itself as a wrong branch within the loop-free interval or right after the completion of execution of the loop-free interval is also detectable. The approach can also be used to check the control flow in the testing phase of program development. The capabilities, limitations, implementation, and the overhead of using this approach are discussed.
UR - http://www.scopus.com/inward/record.url?scp=0000347178&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=0000347178&partnerID=8YFLogxK
U2 - 10.1109/TSE.1980.234478
DO - 10.1109/TSE.1980.234478
M3 - Article
AN - SCOPUS:0000347178
SN - 0098-5589
VL - SE-6
SP - 126
EP - 137
JO - IEEE Transactions on Software Engineering
JF - IEEE Transactions on Software Engineering
IS - 2
ER -