Share on Facebook Tweet on Twitter Share on LinkedIn Share by email
Automatic Mutual Exclusion

Michael Isard and Andrew Birrell

Abstract

We propose a new concurrent programming model, Automatic Mutual Exclusion (AME). In contrast to lock-based programming, and to other programming models built over software transactional memory (STM), we arrange that all shared state is implicitly protected unless the programmer explicitly specifies otherwise. An AME program is composed from serializable atomic fragments. We include features allowing the programmer to delimit and manage the fragments to achieve appropriate program structure and performance. We explain how I/O activity and legacy code can be incorporated within an AME program. Finally, we outline ways in which future work might expand on these ideas. The resulting programming model makes it easier to write correct code than incorrect code. It favors correctness over performance for simple programs, while allowing advanced programmers the expressivity they need.

Details

Publication typeInproceedings
Published inProceedings of the Eleventh Workshop on Hot Topics in Operating Systems
AddressSan Diego, CA
> Publications > Automatic Mutual Exclusion