From Single-thread to Multithreaded: An Efficient Static Analysis Algorithm

Computer Science – Programming Languages

Scientific paper

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

Scientific paper

A great variety of static analyses that compute safety properties of single-thread programs have now been developed. This paper presents a systematic method to extend a class of such static analyses, so that they handle programs with multiple POSIX-style threads. Starting from a pragmatic operational semantics, we build a denotational semantics that expresses reasoning a la assume-guarantee. The final algorithm is then derived by abstract interpretation. It analyses each thread in turn, propagating interferences between threads, in addition to other semantic information. The combinatorial explosion, ensued from the explicit consideration of all interleavings, is thus avoided. The worst case complexity is only increased by a factor n compared to the single-thread case, where n is the number of instructions in the program. We have implemented prototype tools, demonstrating the practicality of the approach.

No associations

LandOfFree

Say what you really think

Search LandOfFree.com for scientists and scientific papers. Rate them and share your experience with other people.

Rating

From Single-thread to Multithreaded: An Efficient Static Analysis Algorithm does not yet have a rating. At this time, there are no reviews or comments for this scientific paper.

If you have personal experience with From Single-thread to Multithreaded: An Efficient Static Analysis Algorithm, we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and From Single-thread to Multithreaded: An Efficient Static Analysis Algorithm will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFWR-SCP-O-89597

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.