Abstract—Race condition is a timing sensitive problem. A sig-nificant source of timing variation comes from non-deterministic hardware interactions such as cache misses. While data race detectors and model checkers can check races, the enormous state space of complex software makes it difficult to identify all of the races and those residual implementation errors still remain a big challenge. In this paper, we propose deterministic real-time scheduling methods to address scheduling nondeterminism in uniprocessor systems. The main idea is to use timing insensitive deterministic events, e.g, an instruction counter, in conjunction with a real-time clock to schedule threads. By introducing the concept of Worst Case Executable Instructions (WCEI...
Feedback control has been applied to computing systems, usually taking a designed system and closing...
Non-preemptive tasks with strict periods are usually adopted in practical multi-core real-time syste...
The problem of real-time scheduling spans a broad spectrum of algorithms from simple uniprocessor to...
Software-based active replication is expensive in terms of performance overhead. Multithreading can ...
Deterministic multithreading (DMT) eliminates many pernicious software problems caused by nondetermi...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
This paper is proposing a general periodicity result concerning any deterministic and mem-oryless sc...
Concurrent programs are hard to design, develop, and debug. It is widely accepted that we lack good ...
Although chip-multiprocessors have become the industry standard, developing parallel applications th...
In hard real-time systems, if computations do not execute before their explicit deadlines, catastrop...
We analyze the fundamental performance impact of enforc-ing a fixed order of synchronization operati...
We present a user-level thread scheduler for shared-memory multiprocessors, and we analyze its perfo...
DoctoralA real-time system is a computer system where it is just as important to compute a correct v...
We present a user-level thread scheduler for shared-memory multiprocessors, and we analyze its perfo...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Feedback control has been applied to computing systems, usually taking a designed system and closing...
Non-preemptive tasks with strict periods are usually adopted in practical multi-core real-time syste...
The problem of real-time scheduling spans a broad spectrum of algorithms from simple uniprocessor to...
Software-based active replication is expensive in terms of performance overhead. Multithreading can ...
Deterministic multithreading (DMT) eliminates many pernicious software problems caused by nondetermi...
Concurrent programming languages should be a good fit for embedded systems because they match the in...
This paper is proposing a general periodicity result concerning any deterministic and mem-oryless sc...
Concurrent programs are hard to design, develop, and debug. It is widely accepted that we lack good ...
Although chip-multiprocessors have become the industry standard, developing parallel applications th...
In hard real-time systems, if computations do not execute before their explicit deadlines, catastrop...
We analyze the fundamental performance impact of enforc-ing a fixed order of synchronization operati...
We present a user-level thread scheduler for shared-memory multiprocessors, and we analyze its perfo...
DoctoralA real-time system is a computer system where it is just as important to compute a correct v...
We present a user-level thread scheduler for shared-memory multiprocessors, and we analyze its perfo...
As computing hardware moves to multi-core systems, future software needs to be parallelized in order...
Feedback control has been applied to computing systems, usually taking a designed system and closing...
Non-preemptive tasks with strict periods are usually adopted in practical multi-core real-time syste...
The problem of real-time scheduling spans a broad spectrum of algorithms from simple uniprocessor to...