Skip to main content

Efficient Search-Based Automatic Execution Replay for Virtual Machines

  • Conference paper
  • First Online:
Advances in Services Computing (APSCC 2015)

Part of the book series: Lecture Notes in Computer Science ((LNISA,volume 9464))

Included in the following conference series:

  • 919 Accesses

Abstract

Execution replay of virtual machines is a useful method for debugging applications in the cloud computing environment. The traditional methods to reproduce a bug is recording every details during the system runtime. However, these methods will incur much overhead and affect the system performance, especially in a multicore processor system. In this paper, we present a virtualization-based execution replay method consisting of three steps. First, we only record some necessary events in the runtime and take a memory checkpoint in a regular interval. Second, we search for execution paths between every two adjacent checkpoints. Third, we reproduce the bugs according to these paths. We can decrease the logging overhead in the runtime by searching instead of logging. We have implemented the method and evaluate it on Xen. The experimental results demonstrate that our method can reduce the runtime overhead by 30 % effectively.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

References

  1. Bressoud, T.C., Schneider, F.B.: Hypervisor-based fault tolerance. ACM Trans. Comput. Syst. 14, 80–107 (1996)

    Article  Google Scholar 

  2. Dunlap, G.W., King, S.T., Cinar, S., Basrai, M.A., Chen, P.M.: Revirt: enabling intrusion analysis through virtual-machine logging and replay. In: Proceedings of the 5th Symposium on Operating Systems Design and Implementation, ser. OSDI 2002, pp. 211–224. ACM, New York (2002)

    Google Scholar 

  3. Dunlap, G.W., Lucchetti, D.G., Fetterman, M.A., Chen, P.M.: Execution replay of multiprocessor virtual machines. In: Proceedings of the Fourth ACM SIGPLAN/SIGOPS International Conference on Virtual Execution Environments, ser. VEE 2008, pp. 121–130. ACM, New York (2008)

    Google Scholar 

  4. Park, S., Zhou, Y., Xiong, W., Yin, Z., Kaushik, R., Lee, K.H., Lu, S.: Pres: probabilistic replay with execution sketching on multiprocessors. In: Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles, ser. SOSP 2009, pp. 177–192. ACM, New York (2009)

    Google Scholar 

  5. Leblanc, T., Mellor-Crummey, J.: Debugging parallel programs with instant replay. IEEE Trans. Comput. 36(4), 471–482 (1987)

    Article  Google Scholar 

  6. Laadan, O., Viennot, N., Nieh, J.: Transparent, lightweight application execution replay on commodity multiprocessor operating systems. In: Proceedings of the ACM SIGMETRICS International Conference on Measurement and Modeling of Computer Systems, ser. SIGMETRICS 2010, pp. 155–166. ACM, New York (2010)

    Google Scholar 

  7. Bhansali, S., Chen, W., De Jong, S., Edwards, A., Murray, R., Drinic, M., Mihocka, D., Chau, J.: Framework for instruction-level tracing and analysis of program executions. In: Proceedings of the 2nd International Conference on Virtual Execution Environments, pp. 154–163. ACM (2006)

    Google Scholar 

  8. Ronsse, M., De Bosschere, K.: Recplay: a fully integrated practical record/replay system. ACM Trans. Comput. Syst. 17(2), 133–152 (1999)

    Article  Google Scholar 

  9. Lee, D., Wester, B., Veeraraghavan, K., Narayanasamy, S., Chen, P.M., Flinn, J.: Respec: efficient online multiprocessor replay via speculation and external determinism. In: Proceedings of the Fifteenth Edition of ASPLOS on Architectural Support for Programming Languages and Operating Systems, ser. ASPLOS 2010, pp. 77–90. ACM, New York (2010)

    Google Scholar 

  10. Olszewski, M., Ansel, J., Amarasinghe, S.: Kendo: Efficient deterministic multithreading in software. SIGPLAN Not. 44(3), 97–108 (2009)

    Article  Google Scholar 

  11. Bocchino, R.L., Jr., Adve, V.S., Dig, D., Adve, S.V., Heumann, S., Komuravelli, R., Overbey, J., Simmons, P., Sung, H., Vakilian, M.: A type and effect system for deterministic parallel java. In: Proceedings of the 24th ACM SIGPLAN Conference on Object Oriented Programming Systems Languages and Applications, ser. OOPSLA 2009, pp. 97–116. ACM, New York (2009)

    Google Scholar 

  12. Berger, E.D., Yang, T., Liu, T., Novark, G.: Grace: safe multithreaded programming for C/C++. In: Proceedings of the 24th ACM SIGPLAN Conference on Object Oriented Programming Systems Languages and Applications, ser. OOPSLA 2009, pp. 81–96. ACM, New York (2009)

    Google Scholar 

Download references

Acknowledgment

This work was supported in part by the National Natural Science Foundation of China under Project 61402450, and the Beijing Natural Science Foundation under Project 4154088.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Tao Wang .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Wang, T., Zhang, J., Zhang, W., Xu, J., Wei, J. (2015). Efficient Search-Based Automatic Execution Replay for Virtual Machines. In: Yao, L., Xie, X., Zhang, Q., Yang, L., Zomaya, A., Jin, H. (eds) Advances in Services Computing. APSCC 2015. Lecture Notes in Computer Science(), vol 9464. Springer, Cham. https://doi.org/10.1007/978-3-319-26979-5_13

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-26979-5_13

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-26978-8

  • Online ISBN: 978-3-319-26979-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics