Atomicity and visibility in tiny embedded systems

Update Item Information
Publication Type Manuscript
School or College College of Engineering
Department Computing, School of
Creator Regehr, John
Other Author Cooprider, Nathan; Gay, David
Title Atomicity and visibility in tiny embedded systems
Date 2006-01-01
Description Visibility is a property of a programming language's memory model that determines when values stored by one concurrent computation become visible to other computations. Our work exploits the insight that in nesC, a C-like language with explicit atomicity, the traditional way of ensuring timely visibility-volatile variables-can be entirely avoided. This is advantageous because the volatile qualifier is a notorious source of programming errors and misunderstandings. Furthermore, the volatile qualifier hurts performance by inhibiting many more optimizations than are necessary to ensure visibility. In this paper we extend the semantics of nesC's atomic statements to include a visibility guarantee, we show two ways that these semantics can be implemented, and we also show that our better implementation has no drawbacks in terms of resource usage.
Type Text
Publisher Association for Computing Machinery
First Page 1
Last Page 5
DOI http://doi.acm.org/10.1145/nnnnnn.nnnnnn.
Dissertation Institution University of Utah
Language eng
Bibliographic Citation Regehr, J., Cooprider, N., & Gay, D. (2006). Atomicity and visibility in tiny embedded systems. In Proceedings of the PLOS 2006 Workshop on Linguistic Support for Modern Operating Systems, 1-5. October.
Rights Management © ACM, 2006. This is the authors version of the work. It is posted here by permission of ACM for your personal use. Not for redistribution. The definitive version was published in Proceedings of the PLOS 2006 Workshop on Linguistic Support for Modern Operating Systems. October.
Format Medium application/pdf
Format Extent 368,523 bytes
Identifier uspace,17483
ARK ark:/87278/s6d515pc
Setname ir_uspace
ID 707809
Reference URL https://collections.lib.utah.edu/ark:/87278/s6d515pc