资讯详情

【Jailhouse 文章】Virtualization over Multiprocessor System-on-Chip an Enabling Paradigm for...

文章目录

    • 1. Abstract
    • 2. MPSoC Virtualization Solutions
      • 2.1 Xen
      • 2.2 Jailhouse
      • 2.3 XtratuM
      • 2.4 ACRN
      • 2.5 Bao
    • 3. A Reference Architecture for Virtualization-ready IIOT Edge Nodes
    • 4. Use Case Scenario

Virtualization over Multiprocessor System-on-Chip an Enabling Paradigm for Industrial IoT(2021) 在工业物联网中,多处理器片上系统的虚拟化范式。

1. Abstract

下一代工业物联网 (IIoT) 本质上需要具有丰富连接性、本地智能和自主行为的智能设备。新兴的多处理器件上系统 (MPSoC) 对虚拟化的全面支持将代表未来 IIoT 智能设备在边缘基础设施中的两个关键建筑块。我们回顾了现有具有代表性的解决方案,重点介绍和 IIoT 解决方案集成最相关的方面。从分析中,我们得出了一个通用的虚拟化就绪边缘 IIoT 节点参考架构。然后,我们分析了具体用例场景的影响和好处,并确定了对虚拟化就绪的全面支持 IIoT 弥合节点差距所面临的关键研究挑战。

2. MPSoC Virtualization Solutions

尽管过去发表的调查 [9]、[10] 它涵盖了详细的分析,但我们强调了研究人员和从业者在我们的参考架构中塑造理想的虚拟化的最重要特征 IoT/IIoT 管理程序,充分匹配 MPSoC 平台为 AMP 应用程序带来的机会。特别是,我们分析并提供它 MPSoC 基于平台支持(大多数情况下是基于 ARM 架构)、小代码库(用于认证目的)、实时功能(时间隔离)、内存保护(增强缓存一致性)、I/O 隔离(例如,IOMMU 支持)、I/O 加速支持虚拟化灵活性(如半虚拟化设备、完全模拟设备等)(FPGA、GPU 等)。

本表总结了本文分析的管理程序的主要特点,并根据代码行进行分析 (LOC) 考虑管理程序大小的三类,即小(小于) 10kLOC)、中(小于 100kLOC)和大(大于 100kLOC)类。不出所料,所有的解决方案大多是小的(只是 LOC 而且要特别注意 vCPU 通常采用静态解决方案决方案进行调度。内存和 I/O 管理(通过输入/输出 MMU - IOMMU)在大多数解决方案中,允许静态分配资源是相当成熟的。然而,并非所有的管理程序都实现了缓存一致性的机制,这代表了不确定性的来源。

请添加图片描述

此外,在大多数情况下,对加速器缺乏明确的支持,这表明目前的解决方案只部分是 IoT/IIoT 准备用例。我们使用表中报告的功能来评估 IoT/IIoT 就绪指标,因为它们与上一节描述的指标相匹配 IoT/IIoT 相关要求如下:

● Determinism. This crucial requirement for realtime systems is linked to Scheduling;

● Safety certification. No solutions are certified (some are certifiable) according to safetyrelated standards, and the number of LOC (i.e., Size) directly impacts the certification effort;

● Isolation. Includes both time and space isolation, linked to Scheduling, Memory Management, Cache Coherence, and I/O Isolation;

● Flexibility. It is directly related to I/O Virtualization and Accelerators Support, as they simplify the management of I/O devices for embedded systems (e.g., through VirtIO, full emulation, or passthrough) and the transparent sharing of FPGAs, GPUs, or other accelerators.

使用上述映射,我们在表中分配了 IoT/IIoT-readiness(级别 1 到 5)指示管理程序功能的覆盖级超过上述要求:级别 5 解决方案已经完全准备好了 IoT/ IIoT 应用程序,等级 1 表明管理程序缺乏真正的适用性。例如,虽然提供了强大的隔离,但是 Xtratum 管理程序很低 IoT/IIoTreadiness 因为,因为它目前不提供正确的 IOMMU 任何支持加速器(此工作正在进行中 相反,由于对加速器(FPGA 和 GPU)和 I/O 虚拟化(这是 MPSoC 可以认为,平台的关键点)的一致支持 ACRN 和 Jailhouse 虚拟机管理程序几乎准备好了 IoT/IIoT 场景。

2.1 Xen

Xen [11] 它是一个著名的虚拟机管理程序,对虚拟机进行半虚拟化,即需要修改 Guest 通过超级调用(即) PV 直接与模式通信。实际上,Xen 也可以使用硬件仿真(即硬件仿真(即 HVM 完全虚拟化和半虚拟化功能(即模式) PVHVM 模式)。Xen 实时延迟服务器 (RTDS) 可为客人提供调度程序 VM 提供有保证的 CPU 容量,这是时间隔离的基础。Xen 还提供了空调程序,允许它 vCPU 静态分配给物理 CPU (pCPU),从而消除任何调度决策。Xen 已被用作 Xilinx 系统 [12] 构建块包括系统内存管理单元 (SMMU) 和对 AMP 完全控制应用程序的内存分区。缓存着色 [13] 由于虚拟机在没有共享资源的情况下分配缓存条目,因此提高了确定性。FPGA 也被集成为 Xen [7] 中间设备,这表明加速器可以在多个客户操作系统之间共享。

2.2 Jailhouse

Jailhouse [15] 是一个基于 Linux 分区管理程序,使 AMP 可以与应用程序相匹配 Linux 裸机应用程序和多个客户操作系统的内核合作操作。主要目的是增强隔离,而不是提供经典的虚拟化;因此,管理程序将 CPU、内存、设备等拆分为单元(cell),即高度隔离的域,每个域都分配给客户操作系统及其应用程序,称为囚犯(inmate)。最近,在 Hercules H2020 在项目背景下,Jailhouse 由于支持页面着色,得益于支持页面着色 OpenAMP 的 Remoteproc/RPMsg 和 VirtIO 技术,Jailhouse 支持单位访问 FPGA 加速器。

2.3 XtratuM

Xtratum [16] 由于符合航空电子领域半虚拟分区管理程序,因为它符合要求 ARINC 653。Xtratum 支持多个 CPU 系列(包括 ARM),利用固定的循环调度程序提供强大的时间隔离。分区内存是静态分配的,它们之间没有共享内存区域。Xtratum 定义了一组最小的确定性超级调用,中断了正在运行的分区,以最大限度地减少分区之间的时间干扰。通过虚拟内存映射的不可缓存内存区域强制执行缓存一致性。尽管目前不支持 FPGA 虚拟化,但 Xtratum 正在发展成为使用这种加速器的下一代航天工业设备的构建块 [8]。

2.4 ACRN

ACRN 是用于 IIoT 开源轻量级裸机管理程序用于场景和边缘设备用例,采用硬件辅助 CPU 扩展实现空间和时间隔离 [17]。它考虑用户或服务 VM 和实时 VM (RTVM),即具有特殊物理资源实时能力的特殊隔离用户 VM。通过硬件辅助虚拟化(例如 Intel EPT、VT-d)确保内存分区。ACRN 提供丰富的嵌入式 I/O 虚拟化包括英特尔 GVT-d 提供直接技术介导 GPU 虚拟化,但没有明确的支持 FPGA 虚拟化。

2.5 Bao

Bao [18] 专为混合关键物联网系统而设计的轻量级裸机管理程序。Bao 专注于安全和安全要求,提供强大的隔离、故障控制和实时功能。当虚拟机实例化时,Bao 资源将在没有调度干预的情况下静态分区,因为它将每个资源分区 vCPU 映射到单个 pCPU。内存使用两阶段转换硬件虚拟化来支持静态分配, I/O 虚拟化只是直接的。Bao 由于共享最后一级缓存,页面着色减少 (LLC) [13] 来宾分区之间的分区之间的干扰。

3. A Reference Archtecture for Virtualization-ready IIOT Edge Nodes

如图详细描述了 IIoT 节点平台的参考架构。

4. Use Case Scenario

如图描绘了参考架构与风力涡轮机案例研究的组件之间的映射,突出了虚拟化就绪的 MPSoC 边缘节点的影响以及不同托管 VM 的作用。

标签: 12通用hvm10二极管

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台