ABSTRACT
System virtualization, which enjoys immense popularity in the enterprise and personal computing spaces, is recently gaining significant interest in the embedded domain. Starting from a comparison of key characteristics of enterprise systems and embedded systems, we will examine the difference in motivation for the use of system virtual machines, and the resulting differences in the requirements for the technology. We find that these differences are quite substantial, and that virtualization is unable to meet the special requirements of embedded systems. Instead, more general operating-systems technologies are required, which support virtualization as a special case. We argue that high-performance microkernels, specifically L4, are a technology that provides a good match for the requirements of next-generation embedded systems.
- D. Elkaduwe, P. Derrin, and K. Elphinstone. Kernel design for isolation and assurance of physical memory. In 1st Workshop on Isolation and Integration in Embedded Systems, Glasgow, UK, Apr. 2008. ACM SIGOPS. Google ScholarDigital Library
- D. Elkaduwe, G. Klein, and K. Elphinstone. Verified protection model of the seL4 microkernel. Submitted for publication, Oct. 2007.Google Scholar
- K. Elphinstone, G. Klein, P. Derrin, T. Roscoe, and G. Heiser. Towards a practical, verified kernel. In Proceedings of the 11th Workshop on Hot Topics in Operating Systems, San Diego, CA, USA, May 2007. Google ScholarDigital Library
- Google. What is Android? http://code.google.com/android/what-is-android.html, Nov. 2007.Google Scholar
- Green Hills Software. INTEGRITY real-time operating system. http://www.ghs.com/products/rtos/integrity.html.Google Scholar
- H. Härtig, M. Hohmuth, J. Liedtke, S. Schönberg, and J. Wolter. The performance of μ-kernel-based systems. In Proceedings of the 16th ACM Symposium on Operating Systems Principles, pages 66--77, St. Malo, France, Oct. 1997. Google ScholarDigital Library
- H. Härtig and M. Roitzsch. Ten years of research on L4-based real-time systems. In Proceedings of the 8th Real-Time Linux Workshop, Lanzhou, China, 2006.Google Scholar
- G. Heiser, K. Elphinstone, I. Kuz, G. Klein, and S. M. Petters. Towards trustworthy computing systems: Taking microkernels to the next level. ACM Operating Systems Review, 41(3), July 2007. Google ScholarDigital Library
- M. Hohmuth, M. Peter, H. Härtig, and J. S. Shapiro. Reducing TCB size by using untrusted components --- small kernels versus virtual-machine monitors. In Proceedings of the 11th SIGOPS European Workshop, Leuven, Belgium, Sept. 2004. Google ScholarDigital Library
- Information Assurance Directorate. U.S. Government Protection Profile for Separation Kernels in Environments Requiring High Robustness, June 2007. Version 1.03. http://www.niap-ccevs.org/cc-scheme/pp/pp.cfm/id/pp_ skpp_hr_v1.03/.Google Scholar
- I. Kuz, Y. Liu, I. Gorton, and G. Heiser. CAmkES: A component model for secure microkernel-based embedded systems. Journal of Systems and Software Special Edition on Component-Based Software Engineering of Trustworthy Embedded Systems, 80(5):687--699, May 2007. Google ScholarDigital Library
- B. Leslie, P. Chubb, N. Fitzroy-Dale, S. Götz, C. Gray, L. Macpherson, D. Potts, Y. R. Shen, K. Elphinstone, and G. Heiser. User-level device drivers: Achieved performance. Journal of Computer Science and Technology, 20(5):654--664, Sept. 2005.Google ScholarCross Ref
- B. Leslie, N. FitzRoy-Dale, and G. Heiser. Encapsulated user-level device drivers in the Mungi operating system. In Proceedings of the Workshop on Object Systems and Software Architectures 2004, Victor Harbor, South Australia, Australia, Jan. 2004. http://www.cs.adelaide.edu.au/~wossa2004/HTML/.Google Scholar
- B. Leslie, C. van Schaik, and G. Heiser. Wombat: A portable user-mode Linux for embedded systems. In Proceedings of the 6th Linux. Conf. Au, Canberra, Apr. 2005.Google Scholar
- J. LeVasseur, V. Uhlig, J. Stoess, and S. Götz. Unmodified device driver reuse and improved system dependability via virtual machines. In Proceedings of the 6th USENIX Symposium on Operating Systems Design and Implementation, pages 17--30, San Francisco, CA, USA, Dec. 2004. Google ScholarDigital Library
- J. Liedtke. On μ-kernel construction. In Proceedings of the 15th ACM Symposium on Operating Systems Principles, pages 237--250, Copper Mountain, CO, USA, Dec. 1995. Google ScholarDigital Library
- NTT DoCoMo and Intel Corp. Open and secure terminal initiative (OSTI) architecture specification. http://www.nttdocomo.co.jp/english/corporate/technology/osti/, Oct. 2006.Google Scholar
- QNX Software Systems. Neutrino realtime operating system. http://www.qnx.com/products/neutrino_rtos/.Google Scholar
- M. Rosenblum. The impact of virtualization on computing systems. Keynote address at USENIX Technical Conference, June 2007.Google Scholar
- J. H. Saltzer and M. D. Schroeder. The protection of information in computer systems. Proceedings of the IEEE, 63:1278--1308, 1975.Google ScholarCross Ref
- L. Singaravelu, C. Pu, H. Härtig, and C. Helmuth. Reducing TCB complexity for security-sensitive applications: Three case studies. In Proceedings of the EuroSys Conference, pages 161--174, Leuven, Belgium, Apr. 2006. Google ScholarDigital Library
- D. C. Snowdon, S. M. Petters, and G. Heiser. Accurate On-line Prediction of Processor and Memory Energy Usage Under Voltage Scaling. In Proceedings of the 7th International Conference on Embedded Software, Salzburg, Austria, Oct. 2007. Google ScholarDigital Library
- D. C. Snowdon, S. Ruocco, and G. Heiser. Power Management and Dynamic Voltage Scaling: Myths and Facts. In Proceedings of the 2005 Workshop on Power Aware Real-time Computing, New Jersey, USA, Sept. 2005.Google Scholar
- J. Stoess, C. Lang, and F. Bellosa. Energy management for hypervisor-based virtual machines. In Proceedings of the 2007 Annual USENIX Technical Conference, Santa Clara, CA, USA, June 2007. Google ScholarDigital Library
- C. Szyperski. Component Software: Beyond Object-Oriented Programming. Addison-Wesley/ACM Press, Essex, England, 1997. Google ScholarDigital Library
- C. A. Waldspurger. Memory resource management in VMware ESX server. In Proceedings of the 5th USENIX Symposium on Operating Systems Design and Implementation, Boston, MA, USA, 2002. Google ScholarDigital Library
Index Terms
- The role of virtualization in embedded systems
Recommendations
Xen and the art of virtualization
SOSP '03Numerous systems have been designed which use virtualization to subdivide the ample resources of a modern computer. Some require specialized hardware, or cannot support commodity operating systems. Some target 100% binary compatibility at the expense of ...
Exploring embedded systems virtualization using MIPS virtualization module
CF '16: Proceedings of the ACM International Conference on Computing FrontiersEmbedded virtualization has emerged as a valuable way to increase security, reduce costs, improve software quality and decrease design time. The late adoption of hardware-assisted virtualization in embedded processors induced the development of ...
Improving machine virtualisation with 'hotplug memory'
Machine virtualisation is a key technology for server consolidation and on-demand server provisioning. To support this trend, it is essential to improve the performance of virtualisation software and enable the efficient running of many virtual ...
Comments