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 20 of 34 for “"Concurrent Programs"”.
-
Taming implicit synchronizations in concurrent programs
… takes an important role in multi-threaded 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 …
-
Dynamic Invariant Generation for Concurrent Programs
… generating likely invariants from multithreaded programs and then leveraging these invariants to infer atomic regions and diagnose concurrency errors in the software code. Although existing methods for dynamic invariant generation perform reasonably well on sequential programs, for multithreaded …
-
Advanced Slicing of Sequential and Concurrent Programs
… and complicated to be computed for real-life programs. This thesis presents solutions to these problems: It contains various approaches which help the user to understand a slice more easily by making it more focused on the user's problem. All of these approaches have been implemented in the …
-
Optimization of object-oriented and concurrent programs
… which greatly simplify expression of complex programs, are used parsimoniously, their effectiveness is mitigated. It is my thesis that these features can be implemented efficiently through interprocedural analysis and transformation. By specializing their implementation to the contexts in …
-
Testing, runtime verification, and analysis of concurrent programs
With the development of multi-core processors, concurrent programs are becoming more and more popular. Among several models, the multithreaded shared-memory model is the predominant programming paradigm for developing concurrent programs. However, because of non-deterministic scheduling, …
-
The automated translation of integrated formal specifications into concurrent programs
… CSP [Hoa78]. The JCSP package [WM00b] presents a concurrent Java implementation for CSP/occam.<br/>In this thesis, we present a developing strategy for implementing such a combined specificationas a concurrent Java program. The combined semantics in PROB is flexible and ideal for model checking, …
-
Automatic fault localization in concurrent programs using noising and search strategies
Multithreaded programs can have considerable performance benefits over sequential programs. However, these advantages often come at a cost with respect to program understandability as well as testing and debugging challenges. To address these challenges we have developed CFLASH (Concurrency Faults …
-
Algorithmic techniques for predictive testing of concurrent programs and distributed systems
… multicore processors, developers need to write concurrent code. Unfortunately, as a result of the non-determinism introduced by thread scheduling, multi-threaded programs can show different behaviors even for a single input. Errors in concurrent programs often occur under subtle interleaving …
-
Finding linearization violations in lock-free concurrent data structures
Finding bugs in lock-free concurrent programs is hard. This is due in part to the difficulty of reasoning about the correctness of concurrent algorithms and the timing-sensitive nature of concurrent programs. One of the most widely used tools for reasoning about the correctness of concurrent …
-
Effective Heuristic-based Test Generation Techniques for Concurrent Software
… has been a great advance in testing sequential programs throughout the past decades. Several techniques have been introduced with the aim of automatically generating input values such that the executions of the program with those inputs provide meaningful coverage guarantees for the program. …
-
Garbage Collection for General Graphs
… With multi-core and distributed systems, most programs written recently are heavily multi-threaded and distributed. Distributed and multi-threaded programs are called concurrent programs. Manual memory management is cumbersome and difficult in concurrent programs. Concurrent programming is …
-
Investigation of hardware transactional memory
… this nascent technology into high-performing concurrent programs, it is necessary to investigate the physical capacity constraints and performance characteristics of hardware transactions in order to better inform programmers of their abilities and limitations. Our investigation involves the …
-
A graph grammar approach to concurrent programming
… as a theory to organize programming of highly-concurrent systems. To understand the interactions among components of a concurrent system it is useful to visualize the system as dynamically changing graphs where the nodes represent concurrent components and the edges represent (the possibility …
-
Understanding Computer Programs: Computational and Cognitive Perspectives
… thesis, I study the understanding of computer programs (code) from two perspectives: computational and cognitive. I ask what the human bases of understanding code are, and attempt to determine whether computational models trained on code corpora (also known as code models) share similar bases. …
-
A framework for synthesizing transactional database implementations in a proof assistant
… framework. The synthesized codes support concurrent transaction execution on multiple processors and are accompanied with proofs certifying their correctness. The contributions include: (1) a complete specification of a subset of SQL queries and database relations, including support for …
-
Efficient Symbolic Execution of Concurrent Software
Concurrent software has been widely utilizing in computer systems owing to the highly efficient computation. However, testing and verifying concurrent software remain challenging tasks. This matter is not only because of the non-deterministic thread interferences which are hard to reason about but …
-
Specification of concurrent systems using graph grammars
… and the one-dimensional nature of sequential programs, i.e. the single flow of control in a program. Textual notation does not support concurrent programming as well, however, because concurrent programs have many threads of control, have a two-dimensional relationship between the flow of …
-
Constraint-Based Thread-Modular Abstract Interpretation
… techniques for static analysis of concurrent programs. Specifically, I integrate a lightweight constraint solver into a thread-modular abstract interpreter to reason about inter-thread interference more accurately. Then, I show how to extend the new analyzer from programs running on …
-
An All-in-One Debugging Approach: Java Debugging, Execution Visualization and Verification
… precisely reproduced in nondeterministic complex concurrent programs. A distinct efficient record-and-playback mechanism is designed to record all the internal states of execution including intermediate results by injecting our own bytecode, which does not affect the source code, and, through a …
-
Understanding, Detecting and Exposing Concurrency Bugs
… contribution is along the lines of exploring concurrent 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 …
Page 1 of 2