Abstract
Kronecker algebra until now has been applied to concurrent programs that use semaphores and protected objects for synchronization. Like many other programming languages, Ada uses barriers, too. In this paper, we present a new synchronization construct for barriers. By applying this, we are able to statically analyze Ada multi-tasking programs that employ barriers for synchronization issues. It turns out that we can use our existing Kronecker algebra implementation completely unmodified for concurrent program graphs using such barrier synchronization primitives.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Notes
- 1.
Programs using our barrier synchronization primitive from within loops or conditional statements will still require advanced techniques.
References
Aiken, A., Gay, D., Barrier inference. In: POPL, pp. 342–354 (1998)
Bellman, R.: Introduction to Matrix Analysis. Classics in Applied Mathematics, 2nd edn. Society for Industrial and Applied Mathematics, Philadelphia (1997)
Brukardt, R.L. (ed): Annotated Ada Reference Manual, ISO/IEC 8652:2012(E) with COR.1:2016 (2016). http://www.ada-auth.org/standards/aarm12_w_tc1/AA-Final.pdf
Buchholz, P., Kemper, P.: Efficient computation and representation of large reachability sets for composed automata. Discrete Event Dyn. Syst. 12(3), 265–286 (2002)
Burgstaller, B., Blieberger, J.: Kronecker algebra for static analysis of Ada programs with protected objects. In: George, L., Vardanega, T. (eds.) Ada-Europe 2014. LNCS, vol. 8454, pp. 27–42. Springer, Heidelberg (2014)
Burgstaller, B., Scholz, B., Blieberger, J.: A symbolic analysis framework for static analysis of imperative programming languages. J. Syst. Softw. 85(6), 1418–1439 (2012)
Davio, M.: Kronecker products and shuffle algebra. IEEE Trans. Comput. 30(2), 116–125 (1981)
Downey, A.B.: The Little Book of Semaphores. Green Tea Press, Virginia (2005)
Fechete, R., Kienesberger, G., Blieberger, J.: A framework for CFG-based static program analysis of Ada programs. In: Kordon, F., Vardanega, T. (eds.) Ada-Europe 2008. LNCS, vol. 5026, pp. 130–143. Springer, Heidelberg (2008)
González, J.F.: Java 7 Concurrency Cookbook. Packt Publishing Ltd., Birmingham (2012)
Graham, A.: Kronecker Products and Matrix Calculus with Applications. Ellis Horwood Ltd., New York (1981)
Hill, J.M.D., Skillicorn, D.B.: Practical barrier synchronisation. In: PDP, pp. 438–444 (1998)
Kamil, A., Yelick, K.A.: Concurrency analysis for parallel programs with textually aligned barriers. In: Ayguadé, E., Baumgartner, G., Ramanujam, J., Sadayappan, P. (eds.) LCPC 2005. LNCS, vol. 4339, pp. 185–199. Springer, Heidelberg (2006)
Kuich, W., Salomaa, A.: Semirings, Automata, Languages. Springer, Heidelberg (1986)
Le, D.-K., Chin, W.-N., Teo, Y.-M.: Verification of static and dynamic barrier synchronization using bounded permissions. In: Groves, L., Sun, J. (eds.) ICFEM 2013. LNCS, vol. 8144, pp. 231–248. Springer, Heidelberg (2013)
Malkis, A., Banerjee, A.: Verification of software barriers. In: PPoPP (2012)
Mittermayr, R., Blieberger, J.: Shared memory concurrent system verification using Kronecker algebra. Technical report 183/1-155, Automation Systems Group, TU Vienna, September 2011. http://arxiv.org/abs/1109.5522
Mittermayr, R., Blieberger, J.: Timing analysis of concurrent programs. In: Vardanega, T. (ed) 12th WCET, vol. 23, pp. 59–68 (2012)
Mittermayr, R., Blieberger, J., Schöbel, A.: Kronecker algebra based deadlock analysis for railway systems. J. PROMET 2012, 359–369 (2012)
Plateau, B.: On the stochastic structure of parallelism and synchronization models for distributed algorithms. In: SIGMETRICS 1985, vol. 13, pp. 147–154 (1985)
Ramalingam, G.: Context-sensitive synchronization-sensitive analysis is undecidable. ACM Trans. Program. Lang. Syst. 22(2), 416–430 (2000)
Stefan, M., Blieberger, J., Schöbel, A.: Application of Kronecker algebra in railway operation. Tehnički vjesnik - Technical Gazette (2016, to appear)
Zhang, Y., Duesterwald, E.: Barriers matching for programs with textually unaligned barriers. In: PPoPP, pp. 194–204 (2007)
Zhang, Y., Duesterwald, E., Gao, G.R.: Concurrency analysis for shared memory programs with textually unaligned barriers. In: Adve, V., Garzarán, M.J., Petersen, P. (eds.) LCPC 2007. LNCS, vol. 5234, pp. 95–109. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2016 Springer International Publishing Switzerland
About this paper
Cite this paper
Mittermayr, R., Blieberger, J. (2016). Kronecker Algebra for Static Analysis of Barriers in Ada. In: Bertogna, M., Pinho, L., Quiñones, E. (eds) Reliable Software Technologies – Ada-Europe 2016. Ada-Europe 2016. Lecture Notes in Computer Science(), vol 9695. Springer, Cham. https://doi.org/10.1007/978-3-319-39083-3_10
Download citation
DOI: https://doi.org/10.1007/978-3-319-39083-3_10
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-319-39082-6
Online ISBN: 978-3-319-39083-3
eBook Packages: Computer ScienceComputer Science (R0)