NASA Logo

NTRS

NTRS - NASA Technical Reports Server

Press Enter or click the Search button to begin your search.

Back to Results
Symbolic Analysis of Concurrent Programs with PolymorphismThe current trend of multi-core and multi-processor computing is causing a paradigm shift from inherently sequential to highly concurrent and parallel applications. Certain thread interleavings, data input values, or combinations of both often cause errors in the system. Systematic verification techniques such as explicit state model checking and symbolic execution are extensively used to detect errors in such systems [7, 9]. Explicit state model checking enumerates possible thread schedules and input data values of a program in order to check for errors [3, 9]. To partially mitigate the state space explosion from data input values, symbolic execution techniques substitute data input values with symbolic values [5, 7, 6]. Explicit state model checking and symbolic execution techniques used in conjunction with exhaustive search techniques such as depth-first search are unable to detect errors in medium to large-sized concurrent programs because the number of behaviors caused by data and thread non-determinism is extremely large. We present an overview of abstraction-guided symbolic execution for concurrent programs that detects errors manifested by a combination of thread schedules and data values [8]. The technique generates a set of key program locations relevant in testing the reachability of the target locations. The symbolic execution is then guided along these locations in an attempt to generate a feasible execution path to the error state. This allows the execution to focus in parts of the behavior space more likely to contain an error.
Document ID
20130013770
Acquisition Source
Ames Research Center
Document Type
Conference Paper
Authors
Rungta, Neha Shyam
(NASA Ames Research Center Moffett Field, CA, United States)
Date Acquired
August 27, 2013
Publication Date
September 20, 2010
Subject Category
Computer Programming And Software
Meeting Information
Meeting: Automated Software Engineering - MoVes Verify Workshop
Location: Antwerp
Country: Belgium
Start Date: September 20, 2010
End Date: September 24, 2010
Funding Number(s)
CONTRACT_GRANT: NNA08CG83C
Distribution Limits
Public
Copyright
Public Use Permitted.
No Preview Available