Abstract
The combination of virtualization and heterogeneous multi-processor architectures supports the development of efficient platforms for self-optimizing mechatronic systems, which are characterized by varying resource requirements. Virtualization addresses dependability issues and adds runtime flexibility to provide an appropriate resource management. Real-time requirements have to be met and existing real-time virtualization solutions are characterized by a static mapping of virtual machines to processors and do not use the full potential of heterogeneous architectures. The sketched architecture applies migration and emulation to realize a dynamic assignment of virtual machines to processors. This work identifies the necessary conditions for migration and the degree of communication between hypervisor and operating system that is indispensable for migration decisions. System virtualization is an approach of coarse-grained system consolidation, for which reason implementation issues and possibilities to reduce the high overhead are discussed. The implementation of a real-time capable virtual machine migration requires paravirtualization, that is to say a modification of the guest operating systems. The need to modify the guest operating system is outweighed by the advantages in terms of flexibility of an explicit communication and the resulting cooperation of hypervisor and guest operating system.
Similar content being viewed by others
Notes
d i = r i + D i , the release time r i is the time at which the task becomes ready for execution.
References
Pook S, Gausemeier J, Dorociak R (2012) Securing the reliability of tomorrows systems with self-optimization. In: Proceedings of the annual reliability and maintainability symposium
Gausemeier J, Znamenshchykov O, Oberthür S, Podlogar H (2008) An approach for achieving self-optimization in mechatronic systems supported by active patterns. In: Proceedings of the 8th international conference on intelligent systems design and applications
Vöcking H, Trächtler A (2008) Self-optimization of an active suspension system regarding energy requirements. In: Proceedings of the international conference on control, automation and systems
Klöpper B, Sondermann-Wölke C, Romaus C (2011) Probabilistic planning for predictive condition monitoring and adaptation within the self-optimizing energy management of an autonomous railway vehicle. J Robotics Mechatron 24(1):5–15
Heiser G (2008) The role of virtualization in embedded systems. In: Proceedings of the 1st workshop on isolation and integration in embedded systems
Neumann D (2006) Intel virtualization technology in embedded and communication infrastructure applications. Intel Technol J 10(3):217–226
Kumar R, Tullsen DM, Jouppi NP, Ranganathan P (2005) Heterogeneous chip multiprocessors. Computer 38:32–38
Xilinx Inc. (2002) Virtex-II Pro Platform FPGA Handbook
Smith JE, Nair R (2005) Virtual machines: versatile platforms for systems and processes. Morgan Kaufmann Publishers Inc., San Francisco
Hestermeyer T, Oberschelp O, Giese H (2004) Structured information processing for self-optimizing mechatronic systems. In: Proceedings of 1st international conference on informatics in control, automation and robotics
Oberthür S, Zaramba L, Lichte H (2010) Flexible resource management for Self-X systems: an evaluation. In: Proceedings of the 1st workshop on self-organizing real-time systems
Groesbrink S, Oberthür S, Baldin D (2012) Towards adaptive resource management for virtualized real-time systems. In: 4th Workshop on adaptive and reconfigurable embedded systems
Horspool RN, Marovac N (1980) An approach to the problem of detranslation of computer programs. Comput J 23/3:223–229
Kerstan T, Oertel M (2010) Design of a real-time optimized emulation method. In: Proceedings of the conference on design, automation, and test in Europe
Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20:44–61
Kerstan T, Baldin D, Groesbrink, S (2010) Full virtualization of real-time systems by temporal partitioning. In: Proceedings of the 6th international workshop on operating systems platforms for embedded real-time applications
Buttazzo G (2004) Hard real-time computing systems: predictable scheduling algorithms and applications. Springer, New York
Klöpper B, Honiden S, Meyer J, Tichy M (2010) Planning with utility and state trajectory constraints in self-healing automotive systems. In: Proceedings of the 4th international conference on self-adaptive and self-organizing systems
Sykes D, Heaven W, Magee J, Kramer J (2007) Plan-directed architectural change for autonomous systems. In: Proceedings of the 6th international workshop on specification and verification of component-based systems
Baldin D, Kerstan T (2009) Proteus, a hybrid virtualization platform for embedded systems. In: Proceedings of the 3rd international embedded systems symposium
Henke C, Tichy M, Schneider T, Böcker J, Schäfer W (2008) System architecture and risk management for autonomous railway convoys. In: Proceedings of the international systems conference
Leveson N (1995) Safeware, system safety and computers. Addison-Wesley, Boston
Clark C, Fraser K, Hand S, Hansen JG, Jul E, Limpach C, Pratt I, Warfield A (2005) Live migration of virtual machines. In: Proceedings of the symposium on networked systems design and implementation
Hansen JG, Jul E (2004) Self-migration of operating systems. In: Proceedings of the 11th workshop on ACM SIGOPS
Nelson M, Lim B, Hutchins G (2005) Fast transparent migration for virtual machines. In: Proceedings of the USENIX
Checconi F, Cucinotta T, Stein M (2009) Real-time issues in live migration of virtual machines. In: Proceedings of the international conference on parallel processing
Aalto A (2010) Dynamic management of multiple operating systems in an embedded multi-core environment. Masters Thesis, Aalto University
Mitake H, Shimada H, Lin TH, Li N, Kinebuchi Y, Lee CY, Yamaguchi D, Yajima T, Nakajima T (2012) Light-weighted virtualization layer for multicore processor-based embedded systems. In: Proceedings of the 15th international symposium on object/component/service-oriented real-time distributed computing
Maguire J, Smith JM (1988) Process migration: effects on scientific computation. ACM-SIGPLAN Notices 23:102–106
Steensgaard B, Jul E (1995) Object and native code thread mobility among heterogeneous computers. In: Proceedings of the 15th ACM symposium on operating systems principles, pp 68–77
Smith P, Hutchinson NC (1998) Heterogenous process migration: the Tui system. Softw Pract Exp 28:611–639
Gosling J, Joy B, Steele G (1997) The Java language specification. Addison-Wesley, Longman, Boston
Acknowledgments
This work was supported by the German “Collaborative Research Center 614—Self-Optimizing Concepts and Structures in Mechanical Engineering” (SFB614, http://www.sfb614.de).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Groesbrink, S. Basics of virtual machine migration on heterogeneous architectures for self-optimizing mechatronic systems. Prod. Eng. Res. Devel. 7, 69–79 (2013). https://doi.org/10.1007/s11740-012-0421-7
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11740-012-0421-7