Implementing atomic sequences on uniprocessors using rollforward

David Mosberger, Peter Druschel, Larry L. Peterson

Research output: Contribution to journalArticlepeer-review

7 Scopus citations


This article presents a software-only solution to the synchronization problem for uniprocessors. The idea is to execute atomic sequences without any hardware protection, and in the rare case of preemption, to roll the sequence forward to the end, thereby preserving atomicity. One of the proposed implementations protects atomic sequences without any memory-accesses. This is significant as it enables execution at CPU-speeds, rather than memory-speeds. The benefit of this method increases with the frequency at which atomic sequences are executed. It therefore encourages the building of systems with fine-grained synchronization. This has the additional advantage of reducing average latency. Experiments demonstrate that this technique has the potential to outperform even the best hardware mechanisms. The main contribution of this article is to discuss operating-system related issues of rollforward and to demonstrate its practicality, both in terms of flexibility and performance.

Original languageEnglish (US)
Pages (from-to)1-23
Number of pages23
JournalSoftware - Practice and Experience
Issue number1
StatePublished - Jan 1996
Externally publishedYes


  • Interrupts
  • Locking
  • Rollback

ASJC Scopus subject areas

  • Software


Dive into the research topics of 'Implementing atomic sequences on uniprocessors using rollforward'. Together they form a unique fingerprint.

Cite this