Communications of the ACM
Java Virtual Machine Specification
Java Virtual Machine Specification
An Architectural Overview of QNX
Proceedings of the Workshop on Micro-kernels and Other Kernel Architectures
Xen and the art of virtualization
SOSP '03 Proceedings of the nineteenth ACM symposium on Operating systems principles
Are virtual machine monitors microkernels done right?
HOTOS'05 Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10
Towards trustworthy computing systems: taking microkernels to the next level
ACM SIGOPS Operating Systems Review
Shared device driver model for virtualized mobile handsets
Proceedings of the First Workshop on Virtualization in Mobile Computing
The OKL4 microvisor: convergence point of microkernels and hypervisors
Proceedings of the first ACM asia-pacific workshop on Workshop on systems
Composition kernel: a multi-core processor virtualization layer for rich functional smart products
SEUS'10 Proceedings of the 8th IFIP WG 10.2 international conference on Software technologies for embedded and ubiquitous systems
Proceedings of the 16th Asia and South Pacific Design Automation Conference
Considerations for mobile authentication in the Cloud
Information Security Tech. Report
Current Techniques and Future Trends in ES's Virtualization
Software—Practice & Experience
Reliable device sharing mechanisms for Dual-OS embedded trusted computing
TRUST'12 Proceedings of the 5th international conference on Trust and Trustworthy Computing
Formal virtualization requirements for the ARM architecture
Journal of Systems Architecture: the EUROMICRO Journal
Hi-index | 0.00 |
In this paper, we look at two different approaches used to provide embedded system support for virtualization and virtual machine monitors for consumer electronics and mobile devices. We compare the micro-kernel approach, which has been a popular choice for building embedded operating systems with the Virtual Machine Monitor (VMM) or hypervisor approach widely deployed in general purpose computing environments such as desktops and data center servers. Comparison criteria are based on virtualization use cases that are typical of Consumer Electronics (CE) systems such as mobile devices and IPTV. These approaches are further evaluated based on performance and on their ability to allow re-use of existing (often real-time) software as well as modern open operating systems such as Linux while remaining as transparently as possible. Such transparency can come through different paths, including: leveraging of hardware virtualization support, minimal modifications to the original operating system internals (kernel, device drivers, etc.), and the ability to use existing operating system applications as-is and without the need to port them to a new environment. An analysis of the fundamental principles behind each approach is presented with a discussion of their impact on existing operating environments, together with practical performance results based on existing micro-kernels and real-time hypervisor benchmarks. We conclude that mapping the VMM (hypervisor) approach used in data centers to the needs of embedded systems is a better option for the support of complete operating systems (as guests) than extending micro-kernels for such functionality.