Code-pointer integrity

V Kuznetzov, L Szekeres, M Payer, G Candea… - The Continuing Arms …, 2018 - dl.acm.org
In this chapter, we describe code-pointer integrity (CPI), a new design point that guarantees
the integrity of all code pointers in a program (eg, function pointers, saved return addresses) …

Deterministic replay: A survey

Y Chen, S Zhang, Q Guo, L Li, R Wu… - ACM Computing Surveys …, 2015 - dl.acm.org
Deterministic replay is a type of emerging technique dedicated to providing deterministic
executions of computer programs in the presence of nondeterministic factors. The …

Sherlog: error diagnosis by connecting clues from run-time logs

D Yuan, H Mai, W **ong, L Tan, Y Zhou… - Proceedings of the …, 2010 - dl.acm.org
Computer systems often fail due to many factors such as software bugs or administrator
errors. Diagnosing such production run failures is an important but challenging task since it …

Mixed integer programming: Analyzing 12 years of progress

T Achterberg, R Wunderling - Facets of combinatorial optimization …, 2013 - Springer
Back in 2001, Bixby et al.(The Sharpest Cut: The Impact of Manfred Padberg and His Work,
pp. 309–325, 2004) provided an analysis of the performance impact of the main mixed …

Improving software diagnosability via log enhancement

D Yuan, J Zheng, S Park, Y Zhou… - ACM Transactions on …, 2012 - dl.acm.org
Diagnosing software failures in the field is notoriously difficult, in part due to the fundamental
complexity of troubleshooting any complex software system, but further exacerbated by the …

Dthreads: efficient deterministic multithreading

T Liu, C Curtsinger, ED Berger - Proceedings of the Twenty-Third ACM …, 2011 - dl.acm.org
Multithreaded programming is notoriously difficult to get right. A key problem is non-
determinism, which complicates debugging, testing, and reproducing errors. One way to …

A type and effect system for deterministic parallel Java

RL Bocchino Jr, VS Adve, D Dig, SV Adve… - Proceedings of the 24th …, 2009 - dl.acm.org
Today's shared-memory parallel programming models are complex and error-prone. While
many parallel programs are intended to be deterministic, unanticipated thread interleavings …

A randomized scheduler with probabilistic guarantees of finding bugs

S Burckhardt, P Kothari, M Musuvathi… - ACM SIGARCH …, 2010 - dl.acm.org
This paper presents a randomized scheduler for finding concurrency bugs. Like current
stress-testing methods, it repeatedly runs a given test program with supplied inputs …

All about eve:{Execute-Verify} replication for {Multi-Core} servers

M Kapritsos, Y Wang, V Quema, A Clement… - … USENIX Symposium on …, 2012 - usenix.org
This paper presents Eve, a new Execute-Verify architecture that allows state machine
replication to scale to multi-core servers. Eve departs from the traditional agree-execute …

CoreDet: A compiler and runtime system for deterministic multithreaded execution

T Bergan, O Anderson, J Devietti, L Ceze… - Proceedings of the …, 2010 - dl.acm.org
The behavior of a multithreaded program does not depend only on its inputs. Scheduling,
memory reordering, timing, and low-level hardware effects all introduce nondeterminism in …