Software-based active replication is expensive in terms of performance overhead. Multithreading can help im-prove performance; however, thread scheduling is a source of nondeterminism in replica behavior. This paper presents a Preemptive Deterministic Scheduling (PDS) algorithm for ensuring deterministic replica behavior while preserving concurrency. Threads are synchronized only on updates to the shared state. A replica execution is broken into a sequence of rounds and in a round each thread can acquire up to two mutexes. If a thread cannot acquire a mutex it requests, then it checks if all other threads are suspended. If so, the thread fires a new round; otherwise, the thread is suspended. When a new round fires, all threads ’ mutex reque...
Multiprocessors have become the standard computing platform for real-time embedded systems. To effic...
Modern transactional platforms strive to jointly ensure ACID consistency and high scalability. In or...
Hard-real-time systems require predictable performance despite the occurrence of failures. In this p...
Fault-tolerant real-time systems are typically based on active replication where replicated entities...
Constant reduction in the size of transistors has made it possible to implement many cores on a sing...
Deterministic multithreading (DMT) eliminates many pernicious software problems caused by nondetermi...
Abstract—Race condition is a timing sensitive problem. A sig-nificant source of timing variation com...
Current shared memory multicore and multiprocessor sys-tems are nondeterministic. Each time these sy...
Recently there have been several proposals to use redundant execution of diverse repli-cas to defend...
Multithreaded programs execute nondeterministically on conventional architectures and operating syst...
Redundant execution systems increase computer system reliability and security by si-multaneously run...
Recently there have been several proposals to use redundant execution of diverse replicas to defend...
Shared-memory parallel programs are inherently nondeterministic, making it difficult to diagnose rar...
Often hard real-time systems require results that are produced on time despite the occurrence of pro...
Abstract. The choice of where a thread scheduling algorithm preempts one thread in order to execute ...
Multiprocessors have become the standard computing platform for real-time embedded systems. To effic...
Modern transactional platforms strive to jointly ensure ACID consistency and high scalability. In or...
Hard-real-time systems require predictable performance despite the occurrence of failures. In this p...
Fault-tolerant real-time systems are typically based on active replication where replicated entities...
Constant reduction in the size of transistors has made it possible to implement many cores on a sing...
Deterministic multithreading (DMT) eliminates many pernicious software problems caused by nondetermi...
Abstract—Race condition is a timing sensitive problem. A sig-nificant source of timing variation com...
Current shared memory multicore and multiprocessor sys-tems are nondeterministic. Each time these sy...
Recently there have been several proposals to use redundant execution of diverse repli-cas to defend...
Multithreaded programs execute nondeterministically on conventional architectures and operating syst...
Redundant execution systems increase computer system reliability and security by si-multaneously run...
Recently there have been several proposals to use redundant execution of diverse replicas to defend...
Shared-memory parallel programs are inherently nondeterministic, making it difficult to diagnose rar...
Often hard real-time systems require results that are produced on time despite the occurrence of pro...
Abstract. The choice of where a thread scheduling algorithm preempts one thread in order to execute ...
Multiprocessors have become the standard computing platform for real-time embedded systems. To effic...
Modern transactional platforms strive to jointly ensure ACID consistency and high scalability. In or...
Hard-real-time systems require predictable performance despite the occurrence of failures. In this p...