Abstract
Reliability of low-level operating-system (OS) code is an indispensable requirement. This includes functional properties from the safety-liveness spectrum, but also quantitative properties stating, e.g., that the average waiting time on locks is sufficiently small or that the energy requirement of a certain system call is below a given threshold with a high probability. This paper reports on our experiences made in a running project where the goal is to apply probabilistic model checking techniques and to align the results of the model checker with measurements to predict quantitative properties of low-level OS code.
This work was in part funded by the German Research Council (DFG) through the QuaOS project and the collaborative research center 912 Highly-Adaptive Energy-Efficient Computing (HAEC).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Anderson, T.E.: The performance of spin lock alternatives for shared-memory multiprocessors. IEEE Trans. Parallel Distrib. Syst. 1(1), 6–16 (1990)
Baier, C., Katoen, J.-P.: Principles of Model Checking. MIT Press (2008)
Bernat, G., Colin, A., Petters, S.: WCET analysis of probabilistic hard real-time systems. In: RTSS 2002, pp. 279–288. IEEE (2002)
Courcoubetis, C., Yannakakis, M.: The complexity of probabilistic verification. Journal of the ACM 42(4), 857–907 (1995)
Hähnel, M.: Energy-utility functions. Diploma thesis, TU Dresden, Germany (2012)
Hamann, C.-J., Löser, J., Reuther, L., Schönberg, S., Wolter, J., Härtig, H.: Quality-assuring scheduling - using stochastic behavior to improve resource utilization. In: RTSS 2001, pp. 119–128. IEEE (2001)
Haverkort, B.: Performance of Computer Communication Systems: A Model-Based Approach. Wiley (1998)
Irani, S., Singh, G., Shukla, S.K., Gupta, R.: An overview of the competitive and adversarial approaches to designing dynamic power management strategies. IEEE Trans. VLSI Syst. 13(12), 1349–1361 (2005)
Katoen, J.-P., Kemna, T., Zapreev, I., Jansen, D.: Bisimulation Minimisation Mostly Speeds Up Probabilistic Model Checking. In: Grumberg, O., Huth, M. (eds.) TACAS 2007. LNCS, vol. 4424, pp. 87–101. Springer, Heidelberg (2007)
Katoen, J.-P., Zapreev, I., Hahn, E., Hermanns, H., Jansen, D.: The ins and outs of the probabilistic model checker MRMC. Perform. Eval. 68(2), 90–104 (2011)
Knapp, S., Paul, W.: Realistic Worst-Case Execution Time Analysis in the Context of Pervasive System Verification. In: Reps, T., Sagiv, M., Bauer, J. (eds.) Program Analysis and Compilation, Theory and Practice. LNCS, vol. 4444, pp. 53–81. Springer, Heidelberg (2007)
Kulkarni, V.: Modeling and Analysis of Stochastic Systems. Chapman & Hall (1995)
Kwiatkowska, M., Norman, G., Parker, D.: Probabilistic symbolic model checking with PRISM: A hybrid approach. STTT 6(2), 128–142 (2004)
Liedtke, J., Islam, N., Jaeger, T., Panteleenko, V., Park, Y.: Irreproducible benchmarks might be sometimes helpful. In: ACM SIGOPS European Workshop, pp. 242–246. ACM (1998)
Mellor-Crummey, J., Scott, M.: Scalable reader-writer synchronization for shared-memory multiprocessors. In: PPOPP 1991, pp. 106–113. ACM (April 1991)
Norman, G.: Analysing Randomized Distributed Algorithms. In: Baier, C., Haverkort, B.R., Hermanns, H., Katoen, J.-P., Siegle, M. (eds.) Validation of Stochastic Systems. LNCS, vol. 2925, pp. 384–418. Springer, Heidelberg (2004)
Norman, G., Parker, D., Kwiatkowska, M., Shukla, S., Gupta, R.: Using probabilistic model checking for dynamic power management. Formal Aspects of Computing 17(2), 160–176 (2005)
Shih, W.K., Liu, J.W.-S., Chung, J.-Y.: Algorithms for scheduling imprecise computations with timing constraints. SIAM J. Comput. 20(3), 537–552 (1991)
Steinberg, U., Kauer, B.: NOVA: a microhypervisor-based secure virtualization architecture. In: EuroSys 2010, pp. 209–222. ACM (2010)
Vardi, M.: Automatic verification of probabilistic concurrent finite-state programs. In: FOCS 1985, pp. 327–338. IEEE (1985)
Vardi, M.: Probabilistic Linear-Time Model Checking: An Overview of the Automata-Theoretic Approach. In: Katoen, J.-P. (ed.) ARTS 1999. LNCS, vol. 1601, pp. 265–276. Springer, Heidelberg (1999)
Wilhelm, R., Engblom, J., Ermedahl, A., Holsti, N., Thesing, S., Whalley, D., Bernat, G., Ferdinand, C., Heckmann, R., Mitra, T., Mueller, F., Puaut, I., Puschner, P., Staschulat, J., Stenström, P.: The worst-case execution-time problem - overview of methods and survey of tools. Trans. Embedded Comput. Syst. 7(3), 1–53 (2008)
Yang, J., Twohey, P., Engler, D., Musuvathi, M.: Using model checking to find serious file system errors. ACM Trans. Comput. Syst. 24(4), 393–423 (2006)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2012 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Baier, C. et al. (2012). Waiting for Locks: How Long Does It Usually Take?. In: Stoelinga, M., Pinger, R. (eds) Formal Methods for Industrial Critical Systems. FMICS 2012. Lecture Notes in Computer Science, vol 7437. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-32469-7_4
Download citation
DOI: https://doi.org/10.1007/978-3-642-32469-7_4
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-32468-0
Online ISBN: 978-3-642-32469-7
eBook Packages: Computer ScienceComputer Science (R0)