Intel开源NEMU:一款为云时代而生的虚拟机管理程序

栏目: 服务器 · 发布时间: 5年前

内容简介:NEMU是一款开源虚拟机管理程序,是专门为了在现代64位英特尔和ARM CPU上运行现代云工作负载而构建和设计的。初衷:托管运行云工作负载的现代访客操作系统在不需要任何遗留硬件的虚拟硬件平台上运行。此外,数据中心中所使用的现代CPU有先进的虚拟化功能,无需大多数CPU仿真。目前市面上没有明确专注于在现代CPU上运行云工作负载的开源虚拟机管理程序解决方案。所有可用的解决方案都在与时俱进,力求相当通用。它们尝试支持一系列广泛的虚拟硬件架构,在硬件虚拟化支持程度不一的硬件上运行。这导致要求提供一大批需要CPU、

NEMU是一款开源虚拟机管理程序,是专门为了在现代64位英特尔和ARM CPU上运行现代云工作负载而构建和设计的。

初衷:托管运行云工作负载的现代访客操作系统在不需要任何遗留硬件的虚拟硬件平台上运行。此外,数据中心中所使用的现代CPU有先进的虚拟化功能,无需大多数CPU仿真。

目前市面上没有明确专注于在现代CPU上运行云工作负载的开源虚拟机管理程序解决方案。所有可用的解决方案都在与时俱进,力求相当通用。它们尝试支持一系列广泛的虚拟硬件架构,在硬件虚拟化支持程度不一的硬件上运行。这导致要求提供一大批需要CPU、设备和平台仿真的遗留平台和设备款式。因此,它们建立在庞大复杂的代码库之上。

另一方面,NEMU旨在充分利用KVM,专注于在一组有限的硬件架构和平台上专门运行现代云原生工作负载。它假设相当新的CPU和KVM让用户不需要大多数仿真逻辑。

与现有解决方案相比,这让人们得以简化代码库、降低复杂性和缩小攻击面。它还为提供针对云的优化以及为云提供性能更高的虚拟机管理程序留下了更多的空间。减小代码的数量和复杂性让人们更容易审核代码、进行模糊测试、模块化和未来的创新。

QEMU基础

QEMU是目前事实上的标准开源云虚拟机管理程序。它有一套丰富的功能,这些功能不断开发出来并加以测试。这包括实时迁移、PCI、内存、NVDIMM及CPU热插拔、VFIO、中介式设备透传(mediated device passthrough)和vhost-user等功能。QEMU还是众多企业投入了大量精力和创新技术以创建多种高性能I/O模型所依赖的代码基础。

它还随带广泛支持遗留功能、平台和设备的功能,并能够在大量硬件平台上运行。它还允许跨平台仿真。基本目标之一是,尽可能通用,另外在大量硬件上运行,并托管运行各种工作负载。由于硬件缺乏关键的虚拟化功能,QEMU需要仿真支持融入到代码中。

QEMU允许构建代码时配置一些丰富的功能特性。QEMU还在代码中含有支持所有这些遗留功能的抽象机制。

NEMU

NEMU基于QEMU,充分利用其丰富的功能特性,不过侧重的面要窄得多。它利用了高性能、强大又稳定的QEMU代码库,无需支持与云无关的众多功能、平台和硬件。

NEMU的目的是保留QEMU代码库中下述功能特性所需要的最基本代码。QEMU代码库也将得到简化,以减少通用抽象的数量。

要求

NEMU提供了一个PCI virtio平台,支持基于vfio的设备直接分配,并支持中介式设备分配。它还旨在继续支持实时迁移和vhost-user,并为PCI、内存、NVDIMM和CPU提供构建时可配置设备热插拔支持。NEMU需要仿真一小部分功能,包括PCI主机桥。

NEMU还推出了一种新的QEMU x86-64机器类型:virt。它是一个纯虚拟平台,不会试图仿真任何现有的x86芯片组或遗留总线(ISA和SMBUS等),将尽可能多的功能卸载到KVM上。这种方法与已有的AArch64 virt机器类型相似,NEMU仅支持两种virt机器类型。

以下是NEMU将保留和添加的QEMU功能列表。

大致功能

  • 基于KVM

  • 仿真极少

  • 延迟低

  • 内存占用少

  • 复杂性低

  • 攻击面小

  • 只支持64位

  • 构建时可配置的CPU、内存、PCI和NVDIMM热插拔(可选)

  • 机器到机器的迁移

网址:https://github.com/intel/nemu

声明:本文来自安全内参,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如需转载,请联系原作者获取授权。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

PHP程序设计

PHP程序设计

Kevin Tatroe、Rasmus Lerdorf / 邓云佳 / 中国电力出版社 / 2003-7-1 / 68.00

本书涵盖了创建一个高效PHP Web应用程序所需要的所有技术,其内容包括:PHP语言基础的详细信息,包括数据类型、变量、操作符和流控制语句。用专门章节讨论关于函数、字符串、数组和对象的基本内容。涵盖通用的PHP Web应用程序设计技术,如表单处理和验证、会话跟踪以及cookie。用和数据库无关的PEAR DB库与关系数据库(如MySQL和Oracle)进行交互的内容。介绍用PHP生成动态图像、创建一起来看看 《PHP程序设计》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

URL 编码/解码
URL 编码/解码

URL 编码/解码