Global ETD Search

Search theses and dissertations gathered from participating repositories worldwide. Every result links back to the library that holds it. No account is needed.

Results

Showing 1 to 15 of 15 for “"Concurrency Bugs"”.

  1. Detecting And Mitigating Concurrency Bugs

    … if not intentional, is often referred to as a concurrency bug. In this research, a solution is presented for efficient concurrency bug detection and mitigation. As data races are widely used as a way to identify potential concurrency bugs, this research presents an efficient hardware …

    cornell Repository record for Detecting And Mitigating Concurrency Bugs (opens in a new tab)

  2. Understanding, Detecting and Exposing Concurrency Bugs

    … programs' interleaving space and exposing concurrency bugs. This thesis presents a hierarchy of interleaving coverage criteria. This hierarchy includes seven interleaving coverage criteria that are designed based on different concurrency bug models and provides guidance to interleaving …

    uiuc Repository record for Understanding, Detecting and Exposing Concurrency Bugs (opens in a new tab)

  3. Constraint Solving for Diagnosing Concurrency Bugs

    … analysis method to aid in the diagnosis of concurrency bugs and find their root causes, which can be later used to recommend repairs. In our method, the diagnosis process is formulated as a set of constraint solving problems. By leveraging the power of constraint satisfiability (SAT) solvers …

    vt Repository record for Constraint Solving for Diagnosing Concurrency Bugs (opens in a new tab)

  4. Effective architectural support for detecting concurrency bugs

    … and approaches to tackle various types of concurrency bugs. This thesis aims at making parallel programming easier by detecting some of the most common and difficult concurrency bugs in shared memory parallel programs, namely data races, atomicity violations, and sequential consistency …

    uiuc Repository record for Effective architectural support for detecting concurrency bugs (opens in a new tab)

  5. Techniques to detect and avert advanced software concurrency bugs

    Multicore machines have become pervasive and, as a result, parallel programming has received renewed interest. Unfortunately, writing correct parallel programs is notoriously hard. One challenging problem is how to ship correct programs. Dynamic analysis tools are very useful to find errors in …

    uiuc Repository record for Techniques to detect and avert advanced software concurrency bugs (opens in a new tab)

  6. Algorithmic advances in dynamic analysis for detecting concurrency bugs

    Concurrency is an indispensable programming paradigm and multi-threaded programs form the bedrock of most modern software applications. Multi-threaded programs, however, are also the most tricky to get right. Despite rigorous in-house testing, concurrency issues like data races, race conditions, …

    uiuc Repository record for Algorithmic advances in dynamic analysis for detecting concurrency bugs (opens in a new tab)

  7. CORE: a framework for the automatic repair of concurrency bugs

    … faced by programmers. It also adds new kinds of bugs not found in single-threaded code such as deadlocks and data races. In this thesis we develop the CORE (COncurrent REpair) framework. It automatically fixes deadlocks and data races in parallel Java programs. It uses a search-based software …

    uoit Repository record for CORE: a framework for the automatic repair of concurrency bugs (opens in a new tab)

  8. Safe Concurrent Programming and Execution

    … many core processors has brought the issues of concurrency and parallelism to the forefront of everyday computing. Even for applications amenable to traditional parallelization techniques, the subtleties of concurrent programming are known to introduce concurrency bugs. Due to the potential of …

    vt Repository record for Safe Concurrent Programming and Execution (opens in a new tab)

  9. Testing, runtime verification, and analysis of concurrent programs

    … multithreaded code is hard to develop and test. Concurrency bugs, such as data races, atomicity violations, and deadlocks, are hard to detect and fix in multithreaded programs. To test and verify multithreaded programs, two sets of techniques are needed. The first one is to enforce thread …

    uiuc Repository record for Testing, runtime verification, and analysis of concurrent programs (opens in a new tab)

  10. Efficient testing of actor programs with non-deterministic behaviors

    … might be sufficient to expose potential concurrency bugs. Having the fact that programmers—who have the knowledge of program specification—would be able to identify those interleavings, we developed two testing frameworks, Setac and Setak. These frameworks are developed for testing actor …

    uiuc Repository record for Efficient testing of actor programs with non-deterministic behaviors (opens in a new tab)

  11. Automatic fault localization in concurrent programs using noising and search strategies

    … these challenges we have developed CFLASH (Concurrency Faults Localized Automatically using Search Heuristics), an automatic fault localization tool for multithreaded Java programs. CFLASH utilizes a combination of noise-based code injection and a heuristic search algorithm to identify …

    uoit Repository record for Automatic fault localization in concurrent programs using noising and search strategies (opens in a new tab)

  12. Leveraging Code Comments to Improve Software Reliability

    … implemented aComment to detect operating system concurrency bugs and handle the complex interaction between interrupts and lock. Specifically, we designed a new type of interrupt related annotations, and semi-automatically generated 96,821 such annotations for the Linux kernel. These annotations …

    uiuc Repository record for Leveraging Code Comments to Improve Software Reliability (opens in a new tab)

  13. Failure diagnosis in distributed systems

    … on the failures that are caused by software bugs triggered by race conditions. Due to the non-deterministic manifestation, these bugs are much harder to diagnose, fix and test than the bugs in sequential logic. To understand the concurrency bugs, we first study the characteristics of …

    uiuc Repository record for Failure diagnosis in distributed systems (opens in a new tab)

  14. Tolerating asymmetric data races with minimal hardware support

    Data races are a common type of concurrency bug in parallel programs. An important type of race that has not received much attention is Asymmetric data races. In these races, the state of well tested, correct threads is corrupted by racing threads from external, typically third-party code. Current …

    uiuc Repository record for Tolerating asymmetric data races with minimal hardware support (opens in a new tab)

  15. Taming implicit synchronizations in concurrent programs

    … programs. Due to the non-deterministic nature of concurrency, it is always difficult for developers to make synchronizations correct. As a consequence, concurrent programs are vulnerable to concurrency bugs and fail during run-time. Many synchronizations in existing multithreaded programs are …

    uiuc Repository record for Taming implicit synchronizations in concurrent programs (opens in a new tab)