DocumentCode :
2792802
Title :
Event Views and Graph Reductions for Understanding System Level C Code
Author :
Neginhal, Srinivas ; Kothari, Suraj
Author_Institution :
Dept. of Electr. & Comput. Eng., Iowa State Univ., Ames, IA
fYear :
2006
fDate :
24-27 Sept. 2006
Firstpage :
279
Lastpage :
288
Abstract :
Concurrent processing, runtime bindings, and an extensive use of aggregate data structures make system level C codes difficult to understand. This paper proposes event views and graph reductions as techniques to facilitate program comprehension. Starting with some domain knowledge, a user can apply these techniques to quickly identify and analyze exactly those parts of the program that are relevant to a given concern. We have built a tool called CVision to demonstrate applicability of the proposed techniques. CVision is an interactive tool that allows the user to: (a) quickly get to the relevant parts of the code; (b) graphically visualize relationships between program elements; and (c) interactively apply different graph reductions to eliminate irrelevant relationships. Using these capabilities, the user can quickly distill a large body of code and extract meaningful views of runtime events that capture the user´s concern. The proposed program comprehension techniques are demonstrated through two case studies based on Linux and XINU operating systems
Keywords :
C language; interactive systems; program diagnostics; program visualisation; reverse engineering; event views; graph reductions; interactive tool; program comprehension; program visualization; software tool; system level C code understanding; Aggregates; Data structures; Kernel; Linux; Operating systems; Protocols; Runtime; Software maintenance; Visualization; Yarn;
fLanguage :
English
Publisher :
ieee
Conference_Titel :
Software Maintenance, 2006. ICSM '06. 22nd IEEE International Conference on
Conference_Location :
Philadelphia, PA
ISSN :
1063-6773
Print_ISBN :
0-7695-2354-4
Type :
conf
DOI :
10.1109/ICSM.2006.28
Filename :
4021351
Link To Document :
بازگشت