Operating systems should provide transactions

  • Authors:
  • Donald E. Porter;Emmett Witchel

  • Affiliations:
  • The University of Texas at Austin;The University of Texas at Austin

  • Venue:
  • HotOS'09 Proceedings of the 12th conference on Hot topics in operating systems
  • Year:
  • 2009

Quantified Score

Hi-index 0.01

Visualization

Abstract

Current operating systems provide programmers an insufficient interface for expressing consistency requirements for accesses to system resources, such as files and interprocess communication. To ensure consistency, programmers must to be able to access system resources atomically and in isolation from other applications on the same system. Although the OS updates system resources atomically and in isolation from other processes within a single system call, not all operations critical to the integrity of an application can be condensed into a single system call. Operating systems should support transactional execution of system calls, providing a simple, comprehensive mechanism for atomic and isolated accesses to system resources. Preliminary results from a Linux prototype implementation indicate that the overhead of system transactions can be acceptably low.