博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
kvm/arm
阅读量:2456 次
发布时间:2019-05-11

本文共 5606 字,大约阅读时间需要 18 分钟。

An Open-Source ARM Virtualization System

As ARM CPUs become increasingly common in mobile devices and servers, there is a growing demand for providing the benefits of virtualization for ARM-based devices. We present our experiences building the Linux ARM hypervisor, KVM/ARM, the first full system ARM virtualization solution that can run unmodified guest operating systems on ARM multicore hardware. KVM/ARM introduces split-mode virtualization, allowing a hypervisor to split its execution across CPU modes and be integrated into the Linux kernel. This allows KVM/ARM to leverage existing Linux hardware support and functionality to simplify hy- pervisor development and maintainability while utilizing recent ARM hardware virtualization extensions to run virtual machines with comparable performance to native execution. KVM/ARM has been successfully merged into the mainline Linux kernel, ensuring that it will gain wide adoption as the virtualization platform of choice for ARM. We provide the first measurements on real hardware of a complete hypervisor using ARM hardware virtualization support. Our results demonstrate that KVM/ARM has modest virtualization performance and power costs, and can achieve lower performance and power costs compared to x86-based Linux virtualization on multicore hardware.

Related Publications

,
Proceedings of the 19th International Conference on Architectural Support for Programming Languages and Operating Systems, 
March 2014

As ARM CPUs become increasingly common in mobile devices and servers, there is a growing demand for providing the benefits of virtualization for ARM-based devices. We present our experiences building the Linux ARM hypervisor, KVM/ARM, the first full system ARM virtualization solution that can run unmodified guest operating systems on ARM multicore hardware. KVM/ARM introduces split-mode virtualization, allowing a hypervisor to split its execution across CPU modes and be integrated into the Linux kernel. This allows KVM/ARM to leverage existing Linux hardware support and functionality to simplify hypervisor development and maintainability while utilizing recent ARM hardware virtualization extensions to run virtual machines with comparable performance to native execution. KVM/ARM has been successfully merged into the mainline Linux kernel, ensuring that it will gain wide adoption as the virtualization platform of choice for ARM. We provide the first measurements on real hardware of a complete hypervisor using ARM hardware virtualization support. Our results demonstrate that KVM/ARM has modest virtualization performance and power costs, and can achieve lower performance and power costs compared to x86-based Linux virtualization on multicore hardware.

 

,
,
,
,
Proceedings of the 23rd ACM Symposium on Operating Systems Principles (SOSP 2011), 
October 2011

Smartphones are increasingly ubiquitous, and many users carry multiple phones to accommodate work, personal, and geographic mobility needs. We present Cells, a virtualization architecture for enabling multiple virtual smartphones to run simultaneously on the same physical cellphone in an isolated, secure manner. Cells introduces a usage model of having one foreground virtual phone and multiple background virtual phones. This model enables a new device namespace mechanism and novel device proxies that integrate with lightweight operating system virtualization to multiplex phone hardware across multiple virtual phones while providing native hardware device performance. Cells virtual phone features include fully accelerated 3D graphics, complete power management features, and full telephony functionality with separately assignable telephone numbers and caller ID support. We have implemented a prototype of Cells that supports multiple Android virtual phones on the same phone. Our performance results demonstrate that Cells imposes only modest runtime and memory overhead, works seamlessly across multiple hardware devices including Google Nexus 1 and Nexus S phones, and transparently runs Android applications at native speed without any modifications.

 

,
Proceedings of the 12th Annual Linux Symposium, 
July 2010

As ARM CPUs grow in performance and ubiquity across phones, netbooks, and embedded computers, providing virtualization support for ARM-based devices is increasingly important. We present KVM/ARM, a KVM-based virtualization solution for ARM-based devices that can run virtual machines with nearly unmodified operating systems. Because ARM is not virtualizable, KVM/ARM uses lightweight paravirtualization, a script-based method to automatically modify the source code of an operating system kernel to allow it to run in a virtual machine. Lightweight paravirtualization is architecture specific, but operating system independent. It is minimally intrusive, completely automated, and requires no knowledge or understanding of the guest operating system kernel code. By leveraging KVM, which is an intrinsic part of the Linux kernel, KVM/ARM’s code base can be always kept in line with new kernel releases without additional maintenance costs, and can be easily included in most Linux distributions. We have implemented a KVM/ARM prototype based on the Linux kernel used in Google Android, and demonstrated its ability to successfully run nearly unmodified Linux guest operating systems.

 

Resources

  •   – Follow new patches and system discussions and browse through archives
  •   – Ask questions on how to boot and use the system
  • KVM/ARM Workflow Description: 
  • Kernel Source code: 
  • QEMU Source code: 
  • (in collaboration with ).
  • Lwn.net article about KVM/ARM: 

转载地址:http://aashb.baihongyu.com/

你可能感兴趣的文章
搜索或添加rss feed_免费RSS Feed图标,最终列表
查看>>
5个用于管理多个WordPress网站的基本插件
查看>>
博客写作技巧_35个管理和处理多作者博客的技巧
查看>>
交互设计指南 iphone_交互设计:角色创建指南
查看>>
Iconfinder图标搜索引擎
查看>>
wordpress波浪分割_如何分隔评论和引用[WordPress提示]
查看>>
Flexdatalist –具有以下功能的自动完成插件 支持
查看>>
firefox 开发工具_您应该知道的10个有用的Firefox开发人员工具
查看>>
语义slam研究现状_正确HTML5语义研究
查看>>
开发单词缩写_所有Web开发人员都应该知道的30个缩写
查看>>
Milligram.css –面向开发人员的简约前端库
查看>>
css特殊边框形状_了解CSS边框角形状
查看>>
mix-blend_如何使用CSS3 mix-blend-mode在图像上显示文本
查看>>
css边框颜色渐变_如何创建CSS渐变边框颜色
查看>>
Photoshop的演变:1988年-2009年
查看>>
css 复选框样式_CSS网格的高级复选框样式
查看>>
18个免费的Minimalistic图标集可供下载
查看>>
css3线性渐变的渐变角度_CSS3线性渐变指南
查看>>
29个适用于初学者的Collage Photoshop教程
查看>>
加速器instagram_如何在网络图像上应用Instagram过滤器
查看>>