Abstract
Modern hard real-time systems demand safe determination of bounds on the execution times of programs. To this purpose, program execution for all possible combinations of input values is impracticable. In alternative, static analysis methods provide sound and efficient mechanisms for determining execution time bounds, regardless of input data.
We present a calculation-based and compositional development of a functional static analyzer using the Abstract Interpretation framework. Meanings of programs are expressed in fixpoint form, using a two-level denotational meta-language. At the higher level, we devise a uniform fixpoint semantics with a relational-algebraic shape, defined as the reflexive transitive closure of the program binary relations. Fixpoints are calculated in the point-free style using functional composition and a proper recursive operator. At the lower level, state transformations are specified by semantic transformers designed as abstract interpretations of the transition semantics.
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
AbsInt. Angewandte informatik., http://www.absint.com/pag/
Bourdoncle, F.: Efficient chaotic iteration strategies with widenings. In: Pottosin, I.V., Bjorner, D., Broy, M. (eds.) FMP&TA 1993. LNCS, vol. 735, pp. 128–141. Springer, Heidelberg (1993)
Brassel, B., Christiansen, J.: Denotation by Transformation. In: King, A. (ed.) LOPSTR 2007. LNCS, vol. 4915, pp. 90–105. Springer, Heidelberg (2008)
Cousot, P.: Constructive design of a hierarchy of semantics of a transition system by abstract interpretation. Electronic Notes in Theoretical Computer Science 6 (1997)
Cousot, P.: The calculational design of a generic abstract interpreter. In: Broy, M., Steinbrüggen, R. (eds.) Calculational System Design. NATO ASI Series F. IOS Press, Amsterdam (1999)
Cousot, P., Cousot, R.: Static determination of dynamic properties of programs. In: Proceedings of the Second International Symposium on Programming, Dunod, Paris, France, pp. 106–130 (1976)
Ermedahl, A., Gustafsson, J.: Deriving annotations for tight calculation of execution time. In: Lengauer, C., Griebl, M., Gorlatch, S. (eds.) Euro-Par 1997. LNCS, vol. 1300, pp. 1298–1307. Springer, Heidelberg (1997)
Ferdinand, C., Martin, F., Wilhelm, R., Alt, M.: Cache behavior prediction by abstract interpretation. Sci. Comput. Program. 35, 163–189 (1999)
Jones, N.D., Nielson, F.: Abstract interpretation: a semantics-based tool for program analysis. In: Handbook of Logic in Computer Science: Semantic Modelling, vol. 4, pp. 527–636. Oxford University Press, Oxford (1995)
Lacan, P., Monfort, J.N., Ribal, L.V.Q., Deutsch, A., Gonthier, G.: ARIANE 5 - The Software Reliability Verification Process. In: DASIA 1998 - Data Systems in Aerospace. ESA Special Publication, vol. 422 (May 1998)
Li, Y.-T.S., Malik, S., Wolfe, A.: Cache modeling for real-time software: beyond direct mapped instruction caches. In: IEEE Real-Time Systems Symposium, pp. 254–263 (1996)
Nielson, H.R., Nielson, F.: Pragmatic aspects of two-level denotational meta-languages. In: Robinet, B., Wilhelm, R. (eds.) ESOP 1986. LNCS, vol. 213, Springer, Heidelberg (1986)
Patankar, V.A., Jain, A., Bryant, R.E.: Formal verification of an arm processor. In: Twelfth International Conference On VLSI Design, pp. 282–287 (1999)
Plazar, S., Lokuciejewski, P., Marwedel, P.: A Retargetable Framework for Multi-objective WCET-aware High-level Compiler Optimizations. In: Proceedings of The 29th IEEE Real-Time Systems Symposium (RTSS) WiP, Barcelona, Spain, pp. 49–52 (December 2008)
Schneider, J., Ferdinand, C.: Pipeline behavior prediction for superscalar processors by abstract interpretation. SIGPLAN Not. 34, 35–44 (1999)
Wilhelm, R., Wachter, B.: Abstract Interpretation with Applications to Timing Validation. In: Gupta, A., Malik, S. (eds.) CAV 2008. LNCS, vol. 5123, pp. 22–36. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2011 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Rodrigues, V., Florido, M., de Sousa, S.M. (2011). A Functional Approach to Worst-Case Execution Time Analysis. In: Kuchen, H. (eds) Functional and Constraint Logic Programming. WFLP 2011. Lecture Notes in Computer Science, vol 6816. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-22531-4_6
Download citation
DOI: https://doi.org/10.1007/978-3-642-22531-4_6
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-22530-7
Online ISBN: 978-3-642-22531-4
eBook Packages: Computer ScienceComputer Science (R0)