更多的使用管理程序

多核、multi-chip系统和安全提供新的理由来扩展这种技术。

受欢迎程度

管理程序是出现在更多的地方作为一个快速和廉价的方式比以往任何时候都更有效地利用多核和多个芯片和更安全。

这是一个有趣的转折的技术最初是作为一种开发启用虚拟化的PC,允许用户在同一台计算机上运行多个不兼容的应用程序。早期年之后的迅速采用虚拟机监控程序在数据中心的服务器利用率增加,允许在同一台机器上运行多个应用程序,从而减少这些服务器供电和冷却的能源账单。

的最新技术是更有效地利用多核芯片上,或在一个更大的跨多个芯片,连接系统比如买一辆汽车。尽管许多报道多年来关于这项技术的持久的价值,仍然是最快和最便宜的解决方案,和许多设计团队的首选。

“一个简单的原因是,他们从一个旧环境迁移,他们只有一个核心,现在他们搬到多核设备,但他们仍有一个配置,他们对安全或安全reasons-three不同卡片每张卡片做不同的事情,”费利克斯鲍姆说,产品经理,嵌入式虚拟化导师图形的嵌入式软件部门。”很多时候,当他们试图使用这些零件,他们不能运行一个软件堆栈顶部的许多不同的原因。现在他们正在运行在3至4核soc但他们不能结合所有这些原因,因为申请安全、安全或其他原因。”

本机运行的软件团队最终不同的任务和独立,他说。一个核心运行一个应用程序运行在一个独立的委员会,另一个运行在第二个核心,曾经是一个独立的董事会。“想象一下你有一个VME或PCI架,现在你正试图运行一个SoC。因为人声称它是可行和可能的,它需要大量的纪律和考试,因为一旦你把东西,不管你愿不愿意,你会碰到一种情况的内存是共享的,共享串行端口,以太网是共享的。迟早你会遇到这种情况,一个应用程序,用于运行卡或董事会在旧系统中,现在发生在核心上运行试图伸手去触摸某块内存或外围,和另一个应用程序,用来运行在一个二级板但现在运行在第二个核心在同一SoC,试图联系相同的资源。他们崩溃,他们互相伤害。你进入时机问题,系统变得不像开发人员会喜欢健壮。”

这就是虚拟机监控程序适应。副总裁史蒂夫•威尔逊的核心基础设施Citrix说,他第一次接触到虚拟机监控程序的想法是十多年前在华尔街会见一些人从一个大型投资银行。”其中一个说,“我有一个大问题,因为我不能再安装电脑。不管我是否能支付他们。我有足够的钱。我只是不能运行任何更多的电脑。我的数据中心25楼的建筑。整个25层的建筑,我有满每一个管道从地面到25楼的电缆。我的能力和我的空间。我们谈到了他一直想做些什么来缓解这个问题。他说,他的第一个计划是建立另一个数据中心在新泽西州,所以他和价格出去,去了他的老板,说他需要1.5亿美元来建立一个新的数据中心。 Not surprisingly, his boss told him no. So we started having to look at creative alternatives.”

他们决定这些服务器上的cpu的平均利用率,平均在一天,在所有的系统中,是5%。所有这些电脑填满了整个地板,燃烧的力量,燃烧的空调,空闲时间的95%。“这是为什么?如果你看一个典型的计算机程序,他们中的一些人只是不这样做一天在一个给定的点,或在,但当时没有办法把那些,”他说。

虚拟机监控程序来拯救
虚拟机监控程序突然变得不可或缺。“使用增长以及需要运行多个计算机程序在相同的物理块电脑服务器硬件,因为问题是如果每个项目都有一个服务器,将会有一个可怕的效率、速度和成本将20倍计算能力太多,”威尔逊说。”,而在一台计算机上运行多个程序的想法可能听起来像一个好主意,他们为不同的操作系统设计,都写在不同的时间和不共存。写这样一个极端的例子可能是一个运行在Windows上,和一个可能是写在Linux上运行,而不能同时运行。”

进入虚拟机监控程序,它本质上是一个特殊的软件生成虚拟机。虚拟机监控程序的工作是创建多个虚拟的硬件。

“假设我构建一个汽车,”他解释道。“如果你看看如今汽车行业,大量的知识产权进入汽车与内燃机无关。它的软件。如果你看一个特斯拉,运行一个现成的计算机的核心,但它是一个巨大的运行软件的集合。一些内部开发的可能,但是一些应用程序可能来自第三方和将被集成到系统中。他们不想要为每个应用程序购买一台新电脑,他们要在车里运行,如一个映射电脑,所说的计算机,电子驱动电脑。他们只是想要一个。”

但是,这些应用程序可能会写不同类型的软件环境。事实上,人们有充分的理由让他们彼此分开,尤其是出于安全原因。“我不一定想要信息娱乐系统能够达到,控制所说从安全的角度来看,我想让他们孤立。虚拟机监控程序设计允许清洁分离不同的软件,让它安全,并使它的应用程序可以一起合作互相不了解,因为每个认为他们有自己的物理硬件上运行,”威尔逊。

Wingard,首席技术官超音速,表示赞同:“在嵌入式系统中,这是一种从保护防火墙开放使用。有更有效的方法,但他们需要大量的工作。”

Wingard指出,一个常数的担忧是多少这些多个使用可以对系统的破坏。然而,他说,出于安全原因,特别是从成本效益的角度来看,虚拟机监控程序的意义

一个大小并不适合所有人
嵌入式系统,工程团队使用8位或16位微控制器,然后迁移到32位处理器,现在有多核处理器,这些嵌入式应用程序仍然尝试运行独立的,孤立的任务。但过去10年或20年使用的虚拟机监控程序可能不是正确的适合嵌入式软件开发人员关心的事情,因为不同的事情网络路由器的开发团队而言,如吞吐量

“在嵌入式领域你关心隔离,你关心安全,你关心安全,”鲍姆说。“很多工程团队来我们开始讨论虚拟化管理程序不谈。他们正在谈论分离和保证分离/隔离的东西。”

因此,重要的是要掌握不同类型的虚拟机监控程序。

首先,鲍姆解释说,有1型(也称为类型0)管理程序。“你可以有一个系统管理程序,当你打开电源,这个软件出现,它所做的是硬件分区。它说,这个的内存块分配给资源和这样一个核心,那块内存资源。它建立了基于硬件的分离特性,然后放开手,这意味着它并不参与任何东西,它只是让操作系统启动。唯一一次程序类型0 / 1型运行,一旦一切都是分开的,如果其中一个操作系统试图触摸的东西它不应该。正因为如此,这些类型0 / 1型虚拟机监控程序是真正的快,真正确定,他们提供非常,非常小的开销的性能。“垂直细分市场,针对类型1 / 0型虚拟机监控程序包括汽车、工业、医疗、物联网,和网关。

也有2型虚拟机监控程序,例如那些由VMWare, KVM, Xen项目和其他几个人。一个很好的例子是苹果Mac,它既可以运行Mac OS和模拟Windows环境。Xen项目的另一个区别是,这种类型的系统管理程序上运行x86,英特尔和ARM指令集。

所有这一切说明总体的想法,软件团队将应对未来更大的挑战,首席执行官Simon Davidmann说治之软件。“硬件处理器可以从1到4或8核心,,要么他们放到仓库做不同的图像分析,或运行一个SMP的Linux版本,一切都是单独工作。他们不是想做大平行在典型的嵌入式系统。的挑战,他们现在已经是有多个相互作用的子系统,它被越来越多的分布。例如,在汽车的每个块在一个ECU软件运行,但它们都是相互关联的,他们说可以,但实际上它是一个系统,有很多设计和验证整个系统不只是小事。这个问题是有多个进程发生在平行的新一代的挑战有不同的筒仓。在一块硬件上你可能会有三个不同的操作系统上运行,处理器,所有不同的筒仓,使用虚拟机监控程序。这没什么好只是Linux在一个盒子里。”

另一方面,他说,硬件团队几乎是排序。“将较小的过程和混合信号,绝对不能低估了复杂的芯片。和成本和工作技能和专业知识,你必须有非常深的人。巨大的大芯片构建,但实际上软件仍悬而未决。人们真的不知道如何去做。他们使用线程,然后他们发现锁定两年后的事情,然后他们发现有漏洞,人们可以在即使他们不能打破。大多数人在嵌入式世界不知道任何关于这些。然后不知何故他们的老板说,我们必须有一个USB堆栈,以太网,它必须做一些wi - fi,它必须有一个GUI,并且你已经有了三个月。”他们说,“我们会得到一个臂板从圣飞思卡尔或谁,把Linux。但实际上他们真的不知道所有的漏洞和困难和挑战,这些东西的复杂性。他们试图重用软件但很艰难。 So I think the software guys have a huge nightmare.”

这些新的挑战需要新工具和新技术。“调试应用程序的老方法是你跑一个gdbserver[一个计算机程序,可以远程调试其他程序)在你的产品,这样你就可以控制你的应用程序之外,“Davidmann解释道。“但问题复杂,实时、多核的东西扰乱系统,你失去了决定论和可控性,你需要所有这些。当事情变得更复杂,我们必须有更好的抽象工具,和我们在GDB的范式是20岁,非常简单。当前的解决方案需要比这更为复杂的东西。”

好消息是,每个人都变得越来越聪明,Baum断言。“我们看到新的处理器、芯片和架构越来越复杂和添加某些hardware-enabled虚拟化技术。例如,手臂皮层A9相比几乎没有什么皮质A15,虚拟化的一些基本特性。现在你看皮质A53上面,有更多支持虚拟化加快速度和优化的事情。”

有关的故事
将虚拟机监控程序保护我们吗?
他们可能不是一个银弹,但他们是一个很好的第一步时确保汽车和物联网。问题开始当人们认为工作就完成了。
虚拟机监控程序:帮助或阻碍?
几乎一切都是权衡和引爆尺度通常是影响最终产品的目标。虚拟机监控程序有几个这样的参数。



留下一个回复


(注意:这个名字会显示公开)

Baidu