Advertisement

Automatic Mutual Exclusion and Atomicity Checks

  • Martín Abadi
Chapter
Part of the Lecture Notes in Computer Science book series (LNCS, volume 5065)

Abstract

This paper provides an introduction to the Automatic Mutual Exclusion (AME) programming model and to its formal study, through the AME calculus. AME resembles cooperative multithreading; in the intended implementations, however, software transactional memory supports the concurrent execution of atomic fragments. This paper also studies simple dynamic and static mechanisms for atomicity checks in AME.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abadi, M., Birrell, A., Harris, T., Isard, M.: Semantics of transactional memory and automatic mutual exclusion. In: Proc. 35th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 63–74 (2008)Google Scholar
  2. 2.
    Adya, A., Howell, J., Theimer, M., Bolosky, W.J., Douceur, J.R.: Cooperative task management without manual stack management. In: Proc. 2002 USENIX Annual Technical Conference, pp. 289–302 (2002)Google Scholar
  3. 3.
    Allen, E., Chase, D., Hallett, J., Luchangco, V., Maessen, J.-W., Ryu, S., Steele, G.L., Jr., Tobin-Hochstadt, S.: The Fortress language specification, v1.0β. Technical report, Sun Microsystems (March 2007)Google Scholar
  4. 4.
    Boudol, G.: Fair cooperative multithreading. In: Caires, L., Vasconcelos, V.T. (eds.) CONCUR 2007. LNCS, vol. 4703, pp. 272–286. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  5. 5.
    Bruni, R., Melgratti, H.C., Montanari, U.: Theoretical foundations for compensations in flow composition languages. In: Proc. 32nd ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages, pp. 209–220 (2005)Google Scholar
  6. 6.
    Carlstrom, B.D., McDonald, A., Chafi, H., Chung, J., Minh, C.C., Kozyrakis, C., Olukotun, K.: The Atomos transactional programming language. In: PLDI 2006: Proc. 2006 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 1–13 (2006)Google Scholar
  7. 7.
    Flanagan, C., Qadeer, S.: A type and effect system for atomicity. In: Proc. 2003 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 338–349 (2003)Google Scholar
  8. 8.
    Garcia-Molina, H., Salem, K.: Sagas. In: Proc. ACM SIGMOD 1987 Annual Conference, pp. 249–259 (1987)Google Scholar
  9. 9.
    Harris, T., Fraser, K.: Language support for lightweight transactions. In: Proc. 18th Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 388–402 (2003)Google Scholar
  10. 10.
    Harris, T., Marlow, S., Peyton-Jones, S., Herlihy, M.: Composable memory transactions. In: PPoPP 2005: Proc. 10th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming, pp. 48–60 (2005)Google Scholar
  11. 11.
    Harris, T., Plesko, M., Shinnar, A., Tarditi, D.: Optimizing memory transactions. In: Proc. 2006 ACM SIGPLAN Conference on Programming Language Design and Implementation, pp. 14–25 (2006)Google Scholar
  12. 12.
    Isard, M., Birrell, A.: Automatic mutual exclusion. In: Proc. 11th Workshop on Hot Topics in Operating Systems (2007)Google Scholar
  13. 13.
    Roe, P., Szyperski, C.A.: Mianjin: A parallel language with a type system that governs global system behaviour. In: Weck, W., Gutknecht, J. (eds.) JMLC 2000. LNCS, vol. 1897, pp. 38–50. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  14. 14.
    Shavit, N., Touitou, D.: Software transactional memory. In: Proc. 14th Annual ACM Symposium on Principles of Distributed Computing, pp. 204–213 (1995)Google Scholar
  15. 15.
    Smaragdakis, Y., Kay, A., Behrends, R., Young, M.: Transactions with isolation and cooperation. In: Proc. 22nd Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, pp. 191–210 (2007)Google Scholar
  16. 16.
    Andrew, K.: Wright and Matthias Felleisen. A syntactic approach to type soundness 115(1), 38–94 (1994)zbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Martín Abadi
    • 1
    • 2
  1. 1.Microsoft Research 
  2. 2.University of CaliforniaSanta Cruz 

Personalised recommendations