Debugging via Run-Time Type Checking

作者: Alexey Loginov , Suan Hsi Yong , Susan Horwitz , Thomas Reps

DOI: 10.1007/3-540-45314-8_16

关键词:

摘要: This paper describes the design and implementation of a tool for C programs that provides run-time checks based on type information. The instruments program to monitor stored in each memory location. Whenever value is written into location, location's tag updated match value. Also, static compared with value's type; if there mismatch, warning message issued. location used, its checked, inappropriate context which being an error has been used pinpoint cause bugs several Solaris utilities Olden benchmarks, usually providing information succinct precise.

参考文章(21)
Bjarne Steensgaard, Points-to analysis by type inference of programs with structures and unions Lecture Notes in Computer Science. pp. 136- 150 ,(1996) , 10.1007/3-540-61053-7_58
Clark Verbrugge, Phong Co, Laurie Hendren, Generalized Constant Propagation a study in C Lecture Notes in Computer Science. pp. 74- 90 ,(1996) , 10.1007/3-540-61053-7_54
Eric A. Brewer, Alexander Aiken, David A. Wagner, Jeffrey S. Foster, A First Step Towards Automated Detection of Buffer Overrun Vulnerabilities. network and distributed system security symposium. ,(2000)
Andrew Kevin Wright, Practical soft typing Rice University. ,(1996)
Bob Boothe, Efficient algorithms for bidirectional debugging Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation - PLDI '00. ,vol. 35, pp. 299- 310 ,(2000) , 10.1145/349299.349339
Todd M. Austin, Scott E. Breach, Gurindar S. Sohi, Efficient detection of all pointer and array access errors programming language design and implementation. ,vol. 29, pp. 290- 301 ,(1994) , 10.1145/178243.178446
Hiralal Agrawal, Joseph R. Horgan, Dynamic program slicing programming language design and implementation. ,vol. 25, pp. 246- 256 ,(1990) , 10.1145/93542.93576
Michael Siff, Thomas Reps, Program generalization for software reuse Proceedings of the 4th ACM SIGSOFT symposium on Foundations of software engineering - SIGSOFT '96. ,vol. 21, pp. 135- 146 ,(1996) , 10.1145/239098.239121
Radu Rugina, Martin Rinard, Symbolic bounds analysis of pointers, array indices, and accessed memory regions Proceedings of the ACM SIGPLAN 2000 conference on Programming language design and implementation - PLDI '00. ,vol. 35, pp. 182- 195 ,(2000) , 10.1145/349299.349325