【最新通知】:
嵌入式软件

Xen Project 4.9全新功能进一步提高了汽车和嵌入式应用的可用性

2017-07-03 15:08:35   来源:单片机与嵌入式系统应用   浏览: 107 次

关键字:

  Linux基金会旗下的Xen Project发布Xen Project Hypervisor 4.9版本。这一最新版本的高级功能适用于嵌入式、汽车和原生云计算应用。它还改进了启动配置,方便在不同硬件平台间进行迁移,x86新指令可加速机器学习计算,并增强了与ARM®架构相关的现有功能及设备模型操作hypercall等功能。

  Xen Project在嵌入式和汽车领域的应用保持持续增长,这是因为越来越多的公司希望把虚拟化扩展到嵌入式设备中,同时继续发挥hypervisor的优势,这包括通过整合降低成本;把硬件抽象出来,使应用程序与硬件分离;硬件隔离的好处是能够更好地保护软件免受漏洞的影响,并提高软件容错能力。此外,更多的贡献在于开始为hypervisor在云原生平台发挥其功能和优势奠定了基础。

  过去几年,开源在中国取得显著增长,Xen Project技术正成为云计算的关键支撑。最近,Xen Project宣布华为加入了Xen项目咨询委员会。越来越多的中国企业采用了Xen Project的软件,并对其做出贡献,华为便是其中之一,其他还有阿里巴巴、富士通(中国)、英特尔(中国)、腾讯、浪潮等。

  鉴于关键技术需要加强合作才能完成开发,越来越多的中国企业正在使用开源软件来超越竞争对手。通过加入Linux基金会旗下的项目,国内企业推动了项目的进一步增长和发展。

  Xen Project咨询委员会主席Lars Kurth表示:“过去几年,Xen Project所取得的成果越来越多,特别是中国会员的增加和来自中国的成果更是喜人。我们看到越来越多的公司参与到该项目中,他们关注汽车、嵌入式、安全和原生云计算。我们非常高兴看到企业的积极参与,因为越来越多的贡献者帮助Xen Project在嵌入式、汽车和安全方面取得进展,同时反过来使我们能进一步巩固传统的环境,例如服务器虚拟化、基础设施即服务和桌面虚拟化等。”

  在嵌入式和汽车应用中扩展Xen Project功能

  ● “空”调度器支持将每个虚拟CPU分配给物理CPU的应用场景,从而避免了汽车和嵌入式环境中几乎所有的调度程序开销。“空”调度器的使用确保了调度开销几乎为零,显著降低了延迟,更可预测性能。

  ● 全新ARM vwfi参数(中断虚拟等待)使Xen Project Hypervisor处理WFI(中断等待)指令时能进行更精细的控制。将vwfi设置为“native”能够减少约60%的中断延迟。Xilinx® Zynq® Ultrascale+™ MPSoC的基准测试表明,最大中断延迟不到2微秒,这非常接近硬件极限,对于绝大多数嵌入式应用来说已经足够小了。

  ● Xen 4.9包括用在众多嵌入式、汽车和原生云计算应用中虚拟机之间共享设备的全新标准ABI(包括参考实现)。

  对于嵌入式/汽车应用,可以增加虚拟声音ABI来实现音频源的播放和采集,以及音量控制,静音/取消静音等。除了用于复杂显示设备的全新虚拟显示ABI之外,还增加了多个帧缓冲区呈现和显示功能,并为虚拟键盘/鼠标协议增加了多点触控支持(支持触摸屏)。

  为下一代云原生计算奠定了基础

  在Xen 4.9版应用中,Linux内核上游合并了Xen 9pfs前端,QEMU合并了9pfs后端。现在可以把文件系统从一个虚拟机共享到另一个虚拟机,这是在很多容器引擎(例如,CoreOS rkt)中增加Xen Project支持所要求的。

  此外,还引入了PV Calls ABI,以支持在客户机之间转发POSIX请求:源自DomU应用程序的POSIX 调用可以在Dom0中转发和实现。例如,客户机网络套接字调用可以在Dom0执行,实现了一种适合云原生应用程序的新型网络模型。

  对 Xen Project hypervisor全新版本发布做出贡献的包括亚马逊、AMD Aporeto、ARM、BitDefender、Citrix、EPAM、富士通、华为、英特尔、Invisible Things Lab、诺基亚、Oracle、Star Lab、Suse、Xilinx、Zentific以及很多大学和个人。不断推陈出新的版本也源于越来越多贡献者的参与。例如,对该版本核心hypervisor的贡献者增加了25%,而对hypervisor、测试和其他相关组件的贡献者增加了17%。

  其他新功能和对现有功能的改进包括:

  ● 在使用GRUB2(x86)的EFI平台上启动Xen:从Xen Project 4.9和GRUB2 2.02开始,可以采用旧版BIOS和EFI x86平台上的multiboot2协议启动Xen Project Hypervisor。对multiboot2协议的部分支持也被引入到网络启动固件(iPXE)中。这使得Xen Project启动过程更加灵活;可以直接从启动加载程序(不必使用文本编辑器)修改启动配置,更容易在不同的平台之间移植启动配置。

  ● DMOP(设备模型操作Hypercall):在Xen 4.9中,Xen Project软件和QEMU之间的接口被彻底重写和整合。Xen中现在只有一个hypercall(DMOP hypercall),让privcmd驱动可以审核所有QEMU传递给Xen的内存范围和参数。Linux privcmd驱动程序支持DMOP审核,这样就限制了被入侵的QEMU攻击hypervisor的能力。

  ● 适用于ARM 32位客户机的可选运行时补丁和GICv3支持:可选运行时补丁使hypervisor能针对CPU勘误进行修补,并针对CPU进行优化,GICv3支持扩展到32位ARM平台,从而在嵌入式应用中实现此功能。

  ● 系统错误检测(ARM):ARM上的Xen在可靠性和可服务性方面迈出了一大步,引入了系统错误检测和报告功能,对具有高可用性系统的客户而言是一个关键功能。

  ● 英特尔和x86功能支持:Xen Project Hypervisor的最新版本增加了对神经网络指令AVX512_4VNNIW和乘法累加单精度AVX512_4FMAPS的支持,这些可以作为AVX512指令集的子族。通过在Xen中为HVM和PV客户机启用这些指令,客户机操作系统中的程序可以充分利用这些重要指令来加速机器学习的计算。这一Xen版本还进一步增强了VT-d发布中断(PI)优化、机器检查异常(MCE)处理等功能。

  ● GCOV支持:我们删除了旧的GCOV实现,采用更新版本来替代它,新版本支持更多格式,并有更为通用的接口。

  Xen Project用户和贡献者如是说

  Aporeto虚拟化架构师Stefano Stabellini表示:“PVCalls和Xen 9pfs为下一代云原生平台打下了基础。它们支持Xen Project软件在CoreOS rkt等容器引擎中的集成。更重要的是,支持PVCalls和9pfs的Xen Project软件将为云原生应用程序提供更好、更简单的保护,因为它提供默认安全保护,与传统虚拟化技术相比,费用支出更少。”

  ARM开源总监Philippe Robin表示:“Xen在未来嵌入式系统和下一代数据中心和云计算中扮演重要角色。性能、效率和可靠性是ARM架构的基本属性,能够实现更低的中断延迟,所包含的特性能够更好地支持系统错误检测,这进一步提高了可靠性和可维护性,同时保持了合适的性能水平。”

  EPAM汽车与嵌入式系统首席技术官Alex Agizim表示:“对关键外设的原生支持对于在嵌入式系统领域提升Xen Project Hypervisor的应用非常重要。将已经出现漏洞和有可能受攻击的软件与云连接设备中的硬件和其他关键任务部件进行隔离是非常有必要的。用于声音、显示和输入的标准化PV ABI提供了一种简单可靠的方式来构建互联车辆的全交互式数字驾驶舱解决方案。最新发布的Xen Project 版本将推动Xen Project Hypervisor在汽车、工业和物联网的广泛部署。”

  英特尔开源技术中心副总裁兼总经理Imad Sousou表示:“英特尔致力于推动开放云和虚拟化技术的发展,帮助数据中心将目前大量的数据转化为有意义的深刻洞察。英特尔与行业通力合作,确保Xen Project这样的开放虚拟化hypervisor得到优化,适用于最新的Intel®平台,提高灵活性、安全性和价值。”

  Xilinx首席工程师Edgar Iglesias表示:“嵌入式领域以及传统和原生云计算环境中都需要低中断延迟。Xen Project Hypervisor不断推出具有新功能和改进的新版本,使我们能够更轻松地为下一代系统开发新的可编程技术。祝贺所有参与开发Xen Project 4.9的人员,又开发出了一个非常可靠且至关重要的版本。”

  Xen Project将于7月11日至7月13日在匈牙利布达佩斯举办其年度Xen Project开发人员和设计峰会。届时,Xen Project社区的开发人员和用户将汇集一堂,他们将决定项目的未来,并在嵌入式、汽车、云、安全环境等方面分享与Xen Project有关的知识和最佳实践。


分享到:

相关阅读: