DocumentCode
3476558
Title
Studying application-library interaction and behavior with LibTrac
Author
Bisolfati, Eric ; Marinescu, Paul ; Candea, George
Author_Institution
Sch. of Comput. & Commun. Sci., Ecole Polytech. Fed. de Lausanne (EPFL), Lausanne, Switzerland
fYear
2010
fDate
June 28 2010-July 1 2010
Firstpage
563
Lastpage
568
Abstract
LibTrac is a tool for studying the program/library boundary and answering questions like: Which library functions are called most often ? Are there library usage patterns that distinguish one class of applications from the others? Do programs generally retry failed I/O calls or not? The answers to these questions are essential to anyone employing library-level fault injection in software testing. On the one hand, the program-library boundary is an appealing location for injecting faults, because the cost of doing so is low, and one can emulate a wide range of realworld failures. On the other hand, developers must decide a priori which library calls to fail, when, and in what way. The space of possibilities is vast, so developers need tools like LibTrac to make informed choices for test scenarios. We used LibTrac to study 13 real-world systems; we report here some of the results. Compared to existing library tracers, LibTrac incurs one to two orders of magnitude less overhead, thus offering considerably more realistic study conditions.
Keywords
program diagnostics; program testing; software libraries; LibTrac; application-library interaction; library tracers; library-level fault injection; program-library boundary; software testing; Application software; Computer interfaces; Computer networks; Costs; Linux; Runtime; Software libraries; Software testing; Statistics; System testing;
fLanguage
English
Publisher
ieee
Conference_Titel
Dependable Systems and Networks (DSN), 2010 IEEE/IFIP International Conference on
Conference_Location
Chicago, IL
Print_ISBN
978-1-4244-7500-1
Electronic_ISBN
978-1-4244-7499-8
Type
conf
DOI
10.1109/DSN.2010.5544267
Filename
5544267
Link To Document