Debugger-Based Record Replay and Dynamic Analysis for In-Vehicle Infotainment

  • Hanno Eichelberger
  • Jürgen Ruf
  • Thomas Kropf
  • Thomas Greiner
  • Wolfgang Rosenstiel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8583)


In the first operation tests of In-Vehicle Infotainment systems remaining failures which were not detected by other testing techniques can often be observed. These failures have to be reconstructed in the laboratory in order to be able to debug them. Record and replay concepts enable the automatic reconstruction of execution sequences, but often they disturb the normal execution, require comprehensive instrumentation or can not be implemented for every platform. Our approach considers these criteria by implementing record and replay with a symbolic debugger. Manually locating the root causes of failures during replay is time-consuming. Therefore, we apply dynamic analyses; they can detect anomalies and state changes during a run. The paper presents a collection of analyses which can not be smoothly executed online during operation, but do not cause drawbacks at replay.


record replay dynamic analysis in-vehicle infotainment 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    GDB: The GNU Project Debugger,
  2. 2.
    Navit - Car Navigation System,
  3. 3.
    Patil, H., Pereira, C., Stallcup, M., Lueck, G., Cownie, J.: PinPlay: a Framework for Deterministic Replay and Reproducible Analysis of Parallel Programs. In: 8th IEEE/ACM International Symposium on Code Generation and Optimization, pp. 2–11. ACM (2010)Google Scholar
  4. 4.
    Laadan, O., Viennot, N., Nieh, J.: Transparent, Lightweight Application Execution Replay on Commodity Multiprocessor Operating Systems. In: 2010 ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, pp. 155–166. ACM (2010)Google Scholar
  5. 5.
    Lee, Y.-H., Song, W.Y., Girme, R., Zaveri, S., Chen, Y.: Replay Debugging for Multi-Threaded Embedded Software. In: 2010 IEEE International Conference on Embedded and Ubiquitous Computing, pp. 15–22. IEEE (2010)Google Scholar
  6. 6.
    Replay Debugging on Linux. VMWare Technical Note (2009),
  7. 7.
    Wang, N., Han, J., Fang, J.: A Transparent Control-Flow based Approach to Record-Replay Non-Deterministic Bugs. In: 7th International Conference on Networking, Architecture and Storage, pp. 189–198. IEEE (2012)Google Scholar
  8. 8.
    Gomez, L., Neamtiu, I., Azim, T., Millstein, T.: RERAN: Timing- and Touch-Sensitive Record and Replay for Android. In: Proceedings of the 35th International Conference on Software Engineering, pp. 72–81. IEEE (2013)Google Scholar
  9. 9.
    Zeller, A.: Isolating Cause-Effect Chains from Computer Programs. In: 10th ACM SIGSOFT Symposium on Foundations of Software Engineering, pp. 1–10. ACM (2002)Google Scholar
  10. 10.
    Zeller, A.: Why Programs Fail: a Guide to Systematic Debugging, 2nd edn. Morgan Kaufmann Publishers (2009)Google Scholar
  11. 11.
    Liu, X., Lin, W., Pan, A., Zhang, Z.: WiDS Checker. In: 4th USENIX Conference on Networked Systems Design & Implementation, pp. 257–270. USENIX (2007)Google Scholar
  12. 12.
    Geels, D., Altekar, G., Maniatis, P., Roscoe, T., Stoica, I.: Friday: Global Comprehension for Distributed Replay. In: 4th USENIX Conference on Networked Systems Design & Implementation, pp. 285–298. USENIX (2007)Google Scholar
  13. 13.
    Shin, H., Endoh, Y., Kataoka, Y.: ARVE: Aspect-Oriented Runtime Verification Environment. In: Sokolsky, O., Taşıran, S. (eds.) RV 2007. LNCS, vol. 4839, pp. 87–96. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  14. 14.
    Sen, K., Kalasapur, S., Brutch, T., Gibbs, S.: Jalangi: A Selective Record-Replay and Dynamic Analysis Framework for Javascript. In: 9th Joint Meeting on Foundations of Software Engineering, pp. 488–498. ACM (2013)Google Scholar
  15. 15.
    Wang, Y., Patil, H., Pereira, C., Lueck, G., Gupta, R., Neamtiu, I.: DrDebug: Deterministic Replay based Cyclic Debugging with Dynamic Slicing. In: 12th IEEE/ACM International Symposium on Code Generation and Optimization, pp. 98–108. ACM (2014)Google Scholar
  16. 16.
    Eichelberger, H., Kropf, T., Greiner, T.: Rosenstiel. W.: Runtime Verification Driven Debugging of Replayed Errors. In: Proceedings of the Ph.D. Workshop of ICTSS 2013, pp. 1–4 (2013),

Copyright information

© Springer International Publishing Switzerland 2014

Authors and Affiliations

  • Hanno Eichelberger
    • 1
    • 2
  • Jürgen Ruf
    • 1
  • Thomas Kropf
    • 1
  • Thomas Greiner
    • 2
  • Wolfgang Rosenstiel
    • 1
  1. 1.University of TübingenGermany
  2. 2.Hochschule Pforzheim UniversityGermany

Personalised recommendations