Deadlock Analysis of Unbounded Process Networks

  • Elena Giachino
  • Naoki Kobayashi
  • Cosimo Laneve
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8704)

Abstract

Deadlock detection in concurrent programs that create networks with arbitrary numbers of nodes is extremely complex and solutions either give imprecise answers or do not scale. To enable the analysis of such programs, (1) we define an algorithm for detecting deadlocks of a basic model featuring recursion and fresh name generation: the lam programs, and (2) we design a type system for value passing CCS that returns lam programs. As a byproduct of these two techniques, we have an algorithm that is more powerful than previous ones and that can be easily integrated in the current release of TyPiCal, a type-based analyser for pi-calculus.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Abadi, M., Flanagan, C., Freund, S.N.: Types for safe locking: Static race detection for Java. TOPLAS 28 (2006)Google Scholar
  2. 2.
    Boyapati, C., Lee, R., Rinard, M.: Ownership types for safe program.: preventing data races and deadlocks. In: OOPSLA, pp. 211–230. ACM (2002)Google Scholar
  3. 3.
    Davey, B.A., Priestley, H.A.: Introduction to Lattices and Order. Cambridge University Press (2002)Google Scholar
  4. 4.
    Flanagan, C., Qadeer, S.: A type and effect system for atomicity. In: PLDI, pp. 338–349. ACM (2003)Google Scholar
  5. 5.
    Giachino, E., Laneve, C.: A beginner’s guide to the deadlock analysis model. In: Palamidessi, C., Ryan, M.D. (eds.) TGC 2012. LNCS, vol. 8191, pp. 49–63. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  6. 6.
    Giachino, E., Laneve, C.: Deadlock detection in linear recursive programs. In: Bernardo, M., Damiani, F., Hähnle, R., Johnsen, E.B., Schaefer, I. (eds.) SFM 2014. LNCS, vol. 8483, pp. 26–64. Springer, Heidelberg (2014)CrossRefGoogle Scholar
  7. 7.
    Giachino, E., Laneve, C., Lienhardt, M.: A framework for deadlock detection in ABS. In: Software and System Modeling (to appear, 2014)Google Scholar
  8. 8.
    Kobayashi, N.: A type system for lock-free processes. Information and Computation 177, 122–159 (2002)CrossRefMATHMathSciNetGoogle Scholar
  9. 9.
    Kobayashi, N.: Type systems for concurrent programs. In: Aichernig, B.K. (ed.) Formal Methods at the Crossroads. From Panacea to Foundational Support. LNCS, vol. 2757, pp. 439–453. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Kobayashi, N.: Type-based information flow analysis for the pi-calculus. Acta Informatica 42(4-5), 291–347 (2005)CrossRefMATHMathSciNetGoogle Scholar
  11. 11.
    Kobayashi, N.: A new type system for deadlock-free processes. In: Baier, C., Hermanns, H. (eds.) CONCUR 2006. LNCS, vol. 4137, pp. 233–247. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  12. 12.
    Kobayashi, N.: TyPiCal: Type-based static analyzer for the Pi-Calculus (2007), http://www-kb.is.s.u-tokyo.ac.jp/~koba/typical/
  13. 13.
    Kobayashi, N., Pierce, B.C., Turner, D.N.: Linearity and the pi-calculus. ACM Transactions on Programming Languages and Systems 21(5), 914–947 (1999)CrossRefGoogle Scholar
  14. 14.
    Kobayashi, N., Sangiorgi, D.: A hybrid type system for lock-freedom of mobile processes. ACM TOPLAS 32(5) (2010)Google Scholar
  15. 15.
    Milner, R.: A Calculus of Communication Systems. LNCS, vol. 92. Springer, Heidelberg (1980)CrossRefGoogle Scholar
  16. 16.
    Milner, R., Parrow, J., Walker, D.: A calculus of mobile processes, ii. Inf. and Comput. 100, 41–77 (1992)CrossRefMATHMathSciNetGoogle Scholar
  17. 17.
    Padovani, L.: Deadlock and Lock Freedom in the Linear π-Calculus. In: CSL-LICS 2014 (2014)Google Scholar
  18. 18.
    Suenaga, K.: Type-based deadlock-freedom verification for non-block-structured lock primitives and mutable references. In: Ramalingam, G. (ed.) APLAS 2008. LNCS, vol. 5356, pp. 155–170. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  19. 19.
    Vasconcelos, V.T., Martins, F., Cogumbreiro, T.: Type inference for deadlock detection in a multithreaded polymorphic typed assembly language. In: PLACES. EPTCS, vol. 17, pp. 95–109 (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Elena Giachino
    • 1
  • Naoki Kobayashi
    • 2
  • Cosimo Laneve
    • 1
  1. 1.Dept. of Computer Science and EgineeringUniversity of Bologna – INRIA FOCUSItaly
  2. 2.Dept. of Computer ScienceUniversity of TokyoJapan

Personalised recommendations