SCALE: Source Code Analyzer for Locating Errors

This thesis presents the design and implementation of SCALE, a tool for systematic software testing multi-threaded C applications that use the pthread library. SCALE exhaustively explores the non determinism introduced by thread schedulings and tries to find violations of safety properties. We have...

Full description

Bibliographic Details
Main Author: Florian, Mihai
Format: Others
Published: 2010
Online Access:https://thesis.library.caltech.edu/5718/1/mf-thesis.pdf
Florian, Mihai (2010) SCALE: Source Code Analyzer for Locating Errors. Master's thesis, California Institute of Technology. doi:10.7907/KXWA-7Y81. https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677 <https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677>
id ndltd-CALTECH-oai-thesis.library.caltech.edu-5718
record_format oai_dc
spelling ndltd-CALTECH-oai-thesis.library.caltech.edu-57182019-11-09T03:10:56Z SCALE: Source Code Analyzer for Locating Errors Florian, Mihai This thesis presents the design and implementation of SCALE, a tool for systematic software testing multi-threaded C applications that use the pthread library. SCALE exhaustively explores the non determinism introduced by thread schedulings and tries to find violations of safety properties. We have designed SCALE to be flexible so that it is easy to add and combine different exploration and state space reduction algorithms. In this thesis we describe the currently implemented reduction algorithms, of which the most important ones are local execution cycle detection and super step partial order reduction. To exemplify how SCALE can be used, we have applied it to a few multi-threaded applications, measured its performance and compared the results to those obtained by other tools. While checking the implementation of a non-blocking queuing algorithm, we were able to find a previously unknown bug that appears only in some unexpected thread inter-leavings. 2010 Thesis NonPeerReviewed application/pdf https://thesis.library.caltech.edu/5718/1/mf-thesis.pdf https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677 Florian, Mihai (2010) SCALE: Source Code Analyzer for Locating Errors. Master's thesis, California Institute of Technology. doi:10.7907/KXWA-7Y81. https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677 <https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677> https://thesis.library.caltech.edu/5718/
collection NDLTD
format Others
sources NDLTD
description This thesis presents the design and implementation of SCALE, a tool for systematic software testing multi-threaded C applications that use the pthread library. SCALE exhaustively explores the non determinism introduced by thread schedulings and tries to find violations of safety properties. We have designed SCALE to be flexible so that it is easy to add and combine different exploration and state space reduction algorithms. In this thesis we describe the currently implemented reduction algorithms, of which the most important ones are local execution cycle detection and super step partial order reduction. To exemplify how SCALE can be used, we have applied it to a few multi-threaded applications, measured its performance and compared the results to those obtained by other tools. While checking the implementation of a non-blocking queuing algorithm, we were able to find a previously unknown bug that appears only in some unexpected thread inter-leavings.
author Florian, Mihai
spellingShingle Florian, Mihai
SCALE: Source Code Analyzer for Locating Errors
author_facet Florian, Mihai
author_sort Florian, Mihai
title SCALE: Source Code Analyzer for Locating Errors
title_short SCALE: Source Code Analyzer for Locating Errors
title_full SCALE: Source Code Analyzer for Locating Errors
title_fullStr SCALE: Source Code Analyzer for Locating Errors
title_full_unstemmed SCALE: Source Code Analyzer for Locating Errors
title_sort scale: source code analyzer for locating errors
publishDate 2010
url https://thesis.library.caltech.edu/5718/1/mf-thesis.pdf
Florian, Mihai (2010) SCALE: Source Code Analyzer for Locating Errors. Master's thesis, California Institute of Technology. doi:10.7907/KXWA-7Y81. https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677 <https://resolver.caltech.edu/CaltechTHESIS:04142010-122136677>
work_keys_str_mv AT florianmihai scalesourcecodeanalyzerforlocatingerrors
_version_ 1719288151426465792