用于具有定向I/O的虚拟机的热交换有源存储器.pdf

上传人:小** 文档编号:1035897 上传时间:2018-03-27 格式:PDF 页数:13 大小:487.20KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110089878.3

申请日:

2011.03.31

公开号:

CN102346683A

公开日:

2012.02.08

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 9/455申请日:20110331|||公开

IPC分类号:

G06F9/455; G06F13/28

主分类号:

G06F9/455

申请人:

英特尔公司

发明人:

K·田

地址:

美国加利福尼亚州

优先权:

2010.03.31 WO PCT/CN2010/071456

专利代理机构:

中国专利代理(香港)有限公司 72001

代理人:

柯广华;王洪斌

PDF下载: PDF下载
内容摘要

本发明名称为“用于具有定向I/O的虚拟机的热交换有源存储器”。本发明的实施例描述一种从虚拟机监视器(VMM)接收热页面交换(HPS)请求的DMA重新映射单元(DRU),该HPS请求包括由至少一个虚拟机(VM)使用的、映射到第一存储器页面位置的虚拟地址,以及第二存储器页面位置。DRU还在HPS请求被满足以前,阻塞到正被重新映射的存储器的地址的DMA请求,将第一存储器页面位置的内容复制到第二存储器页面位置,以及将虚拟地址从第一存储器页面位置重新映射到第二存储器页面位置。

权利要求书

1: 一种系统, 包括 : 存储器 ; 处理器 ; 经由所述处理器来执行的虚拟机 (VM) ; 虚拟机监视器 (VMM), 所述虚拟机监视器经由所述处理器来执行, 以: 控制所述 VM 对所述存储器和所述处理器的访问 ; 发出热页面交换 (HPS) 请求, 所述 HPS 请求包括由所述 VM 和指派给所述 VM 的装置中 的至少一个使用的虚拟地址、 映射到所述虚拟地址的第一存储器页面位置、 以及第二存储 器页面位置, 以及 在所述 HPS 请求完成以前, 阻塞所述 VM 到所述虚拟地址的访问 ; 以及 DMA 重新映射单元 (DRU), 可操作地耦合到所述处理器和所述存储器, 以: 接收和校验所述 HPS 请求, 将所述第一存储器页面位置的内容复制到所述第二存储器页面位置 ; 将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置, 以 及 阻塞到正被重新映射的存储器的地址的 DMA 请求。
2: 如权利要求 1 所述的系统, 所述 DRU 还在所述 HPS 请求被满足以前阻塞所有 DMA 请 求。
3: 如权利要求 1 所述的系统, 所述 DRU 还在所述 HPS 请求被满足以前阻塞到所述第一 存储器页面位置的所有 DMA 请求。
4: 如权利要求 1 所述的系统, 所述 DRU 还 : 如果 DMA 请求的存储器的地址已经被重新映射, 则基于所述第二存储器页面位置满足 DMA 请求 ; 以及 如果 DMA 请求的存储器的地址还必须被重新映射, 则基于所述第一存储器页面位置满 足 DMA 请求。
5: 如权利要求 1 所述的系统, 所述 VMM 还在所述 HPS 请求完成以前阻塞附加 HPS 请求。
6: 如权利要求 1 所述的系统, 所述 VMM 还将附加 HPS 请求排队, 所述 DRU 与所述 HPS 请 求并行地处理附加 HPS 请求。
7: 如权利要求 1 所述的系统, 所述 HPS 请求使能以下操作中的至少一个 : 切断到所述第一存储器页面位置的电力, 以及 所述第一存储器页面位置的存储器重新组织。
8: 一种方法, 包括 : 从虚拟机监视器 (VMM) 接收和校验热页面交换 (HPS) 请求, 所述 HPS 请求包括由至少 一个虚拟机 (VM) 使用的虚拟地址、 映射到所述虚拟地址的第一存储器页面位置、 以及第二 存储器页面位置 ; 在所述 HPS 请求完成以前阻塞到正被重新映射的存储器的地址的 DMA 请求 ; 将所述第一存储器页面位置的内容复制到所述第二存储器页面位置 ; 以及 将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置。
9: 如权利要求 8 所述的方法, 还包括在所述 HPS 请求被满足以前阻塞所有 DMA 请求。 2
10: 如权利要求 8 所述的方法, 还包括 : 如果 DMA 请求的存储器的地址已经被重新映射, 则基于所述第二存储器页面位置满足 DMA 请求 ; 以及 如果 DMA 请求的存储器的地址还必须被重新映射, 则基于所述第一存储器页面位置满 足 DMA 请求。
11: 如权利要求 8 所述的方法, 还包括在所述 HPS 请求完成以前阻塞附加 HPS 请求。
12: 如权利要求 8 所述的方法, 还包括与所述 HPS 请求并行地处理附加 HPS 请求。
13: 如权利要求 8 所述的方法, 还包括切断到所述第一存储器页面位置的电力。
14: 如权利要求 8 所述的方法, 还包括重新组织所述第一存储器页面位置的存储器。
15: 一种设备, 包括 : 第一逻辑, 所述第一逻辑接收和校验热页面交换 (HPS), 所述 HPS 请求包括虚拟地址、 映射到由至少一个虚拟机 (VM) 使用的所述虚拟地址的第一存储器页面位置、 以及第二存 储器页面位置 ; 装置接口, 所述装置接口接收 DMA 请求, 所述装置接口在所述 HPS 请求完成以前阻塞到 正被重新映射的存储器的地址的 DMA 请求 ; 以及 第二逻辑, 所述第二逻辑将所述第一存储器页面位置的内容复制到所述第二存储器页 面位置, 以及将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面 位置。
16: 如权利要求 15 所述的设备, 所述装置接口还在所述 HPS 请求被满足以前阻塞所有 DMA 请求。
17: 如权利要求 15 所述的设备, 所述装置接口还 : 如果 DMA 请求的存储器的地址已经被重新映射, 则基于所述第二存储器页面位置满足 DMA 请求 ; 以及 如果 DMA 请求的存储器的地址还必须被重新映射, 则基于所述第一存储器页面位置满 足 DMA 请求。
18: 如权利要求 15 所述的设备, 所述第一逻辑还与所述 HPS 请求并行地处理附加 HPS 请求。
19: 如权利要求 15 所述的设备, 所述 HPS 请求使能以下操作中的至少一个 : 切断到所述第一存储器页面位置的电力, 以及 所述第一存储器页面位置的存储器重新组织。

说明书


用于具有定向 I/O 的虚拟机的热交换有源存储器

    技术领域 本发明的实施例一般涉及系统存储器管理, 并且更具体地涉及指派到虚拟机的系 统存储器的管理。
     背景技术 包括虚拟机 (VM) 的系统允许共享下层 (underlying) 物理机器及其资源。提供到 VM 的虚拟化的软件层称作虚拟机监视器 (VMM) 或管理器。VMM 充当 VM 的主机。VMM 为 VM 上执行的系统软件 ( 例如操作系统软件和应用软件 ) 提供物理机器的抽象。VMM 还能够保 留对处理器资源、 物理存储器、 中断管理和数据 I/O 的选择性控制。
     I/O 虚拟化描述了单个物理 I/O 单元由不止一个 VM 来共享的能力。 现有技术解决 方案经由软件模块来实现 I/O 虚拟化。因此, 到 VM 存储器页面的所有访问都从 CPU 发起, 并且由此引起显著处理开销。此外, 这种类型的虚拟化不允许指派到 VM 的装置直接经由直 接存储器访问 (DMA) 执行存储器操作。
     其它现有技术解决方案经由又称作定向 I/O 的硬件逻辑来实现 I/O 虚拟化。在这 些解决方案中, 装置的 DMA 请求被限制到 ( 通过 VMM) 指派到拥有该装置的 VM 的存储器域 和存储器区。这些硬件现有技术解决方案之一可描述为 DMA 重新映射硬件一即, 定位在具 有 DMA 能力的外围设备与系统的物理存储器之间的硬件单元。未修改的驱动程序可在 VM 中无缝运行, VM 将对指派到该 VM 的 I/O 资源具有完全的特权 ; 但是, 由于 DMA 保护在芯片 组级实施, 因此对于指派到该 VM 的 I/O 装置, 阻止到虚拟机自有的物理页面外部的物理存 储器的访问。
     一些高级计算机服务器存储器特征要求 “热拆卸” 或 “热交换” 存储器的能力 ( 例 如在使用 DIMM 时将其拆卸 )。热交换存储器包括将 ( 至少 ) 一个使用中的页面的内容移到 另一个页面, 而不打断正进行的执行。
     如果 I/O 虚拟化经由软件模块来完成, 则热交换存储器在现有技术中是可能的。 在这种情况下, 在页面内容正在被交换时, VMM 冻结各自的 VM 以阻止竞争访问。在建立新 映射后, 将 VM 解冻, 并且随后的存储器访问将重新定向到新映射的页面。
     但是, 没有热交换具有允许定向 I/O 的 I/O 虚拟化的 VM 的页面的能力。这部分地 归因于 VMM 能够冻结 VM 执行、 但对指派到所述 VM 的装置没有控制力的事实。这些指派的 装置能够在任何时间, 甚至当那个页面的热交换正在进行时, 向 VM 页面发出 DMA 请求。这 种竞争情况是危险的, 因为它可引起旧页面与新页面之间的不一致。
     发明内容
     按照本发明的一个方面, 提供一种系统, 包括 :
     存储器 ;
     处理器 ;
     经由所述处理器来执行的虚拟机 (VM) ;虚拟机监视器 (VMM), 所述虚拟机监视器经由所述处理器来执行, 以:
     控制所述 VM 对所述存储器和所述处理器的访问 ;
     发出热页面交换 (HPS) 请求, 所述 HPS 请求包括由所述 VM 和指派给所述 VM 的装 置中的至少一个使用的虚拟地址、 映射到所述虚拟地址的第一存储器页面位置、 以及第二 存储器页面位置, 以及
     在所述 HPS 请求完成以前, 阻塞所述 VM 到所述虚拟地址的访问 ; 以及
     DMA 重新映射单元 (DRU), 可操作地耦合到所述处理器和所述存储器, 以:
     接收和校验所述 HPS 请求,
     将所述第一存储器页面位置的内容复制到所述第二存储器页面位置 ;
     将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位 置, 以及
     阻塞到正被重新映射的存储器的地址的 DMA 请求。
     按照本发明的另一方面, 提供一种方法, 包括 :
     从虚拟机监视器 (VMM) 接收和校验热页面交换 (HPS) 请求, 所述 HPS 请求包括由 至少一个虚拟机 (VM) 使用的虚拟地址、 映射到所述虚拟地址的第一存储器页面位置、 以及 第二存储器页面位置 ;
     在所述 HPS 请求完成以前阻塞到正被重新映射的存储器的地址的 DMA 请求 ;
     将所述第一存储器页面位置的内容复制到所述第二存储器页面位置 ; 以及
     将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位 置。
     按照本发明的另一方面, 提供一种设备, 包括 :
     第一逻辑, 所述第一逻辑接收和校验热页面交换 (HPS), 所述 HPS 请求包括虚拟地 址、 映射到由至少一个虚拟机 (VM) 使用的所述虚拟地址的第一存储器页面位置、 以及第二 存储器页面位置 ;
     装置接口, 所述装置接口接收 DMA 请求, 所述装置接口在所述 HPS 请求完成以前阻 塞到正被重新映射的存储器的地址的 DMA 请求 ; 以及
     第二逻辑, 所述第二逻辑将所述第一存储器页面位置的内容复制到所述第二存储 器页面位置, 以及将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器 页面位置。 附图说明 以下描述包括对附图的讨论, 附图具有作为本发明实施例的实现示例给出的图 解。应当作为示例而不是限定来理解附图。如本文所使用的, 对一个或多个 “实施例” 的引 用将被理解为描述本发明的至少一个实现中包含的具体特征、 结构或特性。 因此, 本文中出 现的诸如 “在一个实施例中” 或 “在备选实施例中” 的短语描述了本发明的各种实施例和实 现, 并且不一定都指同一个实施例。然而, 它们也并不一定是相互排斥的。
     图 1 是利用本发明实施例的系统的框图。
     图 2 是 DMA 重新映射单元的实施例的框图。
     图 3 是根据本发明实施例处理热页面交换请求的流程图。
     图 4 示出使热页面交换操作期间需要阻塞的 DMA 请求的数量为最少的示例过程。
     下面是某些细节和实现的描述, 包括可描绘下文所述实施例的部分或全部的附图 的描述, 以及讨论本文呈现的发明概念的其它潜在实施例或实现。下面提供本发明的实施 例的概述, 之后是参照附图的更详细描述。 具体实施方式
     本发明的实施例涉及用于具有定向 I/O 的 VM 的增强 DMA 功能性。本发明的实施 例虑及以无竞争和有效率的方式进行的有源存储器单元 ( 例如, 页面 ) 的热交换。
     本发明的示例实施例描述处于芯片组级的增强 DMA 重新映射单元 (DRU)。 增强 DRU 单元与 VMM 结合工作。DRU 包括接受来自 VMM 的页面交换请求的接口。一旦接收到请求, DRU 执行页面交换, 同时 ( 至少部分地 ) 阻塞定向到待交换页面的 DMA 请求。
     本发明的实施例可包含在利用要求存储器热交换能力的特征的系统和服务器中。 所述特征包括例如可靠性、 可用性和可服务性 (RAS), 诸如离线状态的存储器低功率模式 ( 其中切断到 DIMM 的电力以省电 ), 以及当可用存储器资源改变时将跨节点 VM 页面重新组 织为单个节点的不均匀存储器访问 (NUMA) 节点亲合力。这些特征要求将一个使用中的页 面的内容热交换到另一个页面而不打断正进行的执行的能力。 图 1 是利用本发明实施例的系统的框图。系统 100 可包含在系统服务器、 台式计 算机装置、 移动计算机装置或者利用处理器和系统存储器的任何其它任意装置中。
     如图 1 的示例实施例中所示, 系统 100 包括系统存储器 110、 处理器 120、 系统装置 130-139( 例如, 外部盘驱动器、 I/O 装置 )、 以及存储器控制器 150。在这个实施例中, 装置 130-139 是具有 DMA 能力的装置。
     系统 100 可进一步包括 VMM 170, 以便管理 VM 160, 包括向 VM 160 分配存储器的 部分 ( 即, 页面 )。VM 160 可包含运行各种应用的客户操作系统 ( 即, 客户软件 )。VM 160 和 VMM 170 都可经由处理器 120 执行。
     VMM 170 可进一步管理装置 130-139, 并且向 VM 160 指派所述装置中的至少一个。 在这个示例实施例中, 将装置 130、 131 和 139 指派给 VM 160。要理解, 在备选实施例中, 系 统可包括多个 VM, 并且可以任何组合将系统装置指派给各 VM。
     提供客户软件的存储器地址范围, 即客户物理地址 (GPA) 范围, 可能与机器物理 地址 (MPA) 范围不同。具有 DMA 能力的装置 130、 131 和 139 使用 MPA 向 / 从物理存储器位 置传递数据。但是, 在这个实施例中, VM 160 的客户软件 ( 即, 客户 OS) 包括控制装置 130、 131 和 139 的装置驱动程序, 并且因而提供 GPA 范围而不是 MPA 范围。
     DRU 155 用来进行所要求的地址转换。由于 GPA 由 VMM 170 提供, 所以 GPA 范围 必须转换成 MPA 范围。在一个实施例中, VMM170 采用 GPA 到 MPA 转换信息对 DRU 编程, 使 得 DMA 重新映射硬件能够执行必要的转换。这个转换信息在本文中称作 DMA 重新映射页面 表 (DRPT)。使用 DRPT, 来自装置的数据这时能够直接传递到适当的存储器地址, 而不是经 过中间软件仿真层。
     存储器 110 可包括存储器的若干单元, 例如多个 DIMM。 “热拆卸” 或 “热交换” 存 储器的能力包含在 DIMM 使用中将其拆卸。热交换存储器包含例如将 ( 要掉电 / 移动的 ) 第一 DIMM 中包括的 ( 至少 ) 一个使用中的页面的内容移到 ( 将不会掉电 / 移动的 ) 第二
     DIMM 中包括的另一个页面, 而不打断正进行的执行。以这种方式交换页面的操作在本文中 称作热页面交换 (HPS)。
     在页面交换期间, 重要的是没有对该页面进行访问。VMM 170 能够冻结 VM 160 的 执行, 因而阻止 VM 160 访问待交换页面。VMM170 备选地能够只冻结到待交换页面的 VM 访 问。然而, 关于各装置可发出的 DMA 请求, VMM 170 对装置 130、 131 和 139 没有控制力。
     有可能修改用于装置 130、 131 和 139 中的每个的 VM 160 中的装置驱动程序, 以便 抢先冻结指派的装置。在开始页面交换操作之前, VMM 170 可经由 VM 160 向修改的装置驱 动程序发送冻结请求。修改的装置驱动程序然后可用信号通知开始热交换操作是安全的。 一旦热交换完成, 则 VMM 170 可向修改的装置驱动程序发送解冻请求。但是, 这个解决方案 由于若干原因而不理想。
     冻结 / 解冻 ( 即, 停止 / 重新开始 ) 装置的命令是费时的操作。要求不确定的等 待时间以确保处理完用于各装置的所有正进行的 DMA 请求, 并且要求进一步的时间以等待 各装置进入静止状态。这能够进一步对 I/O 吞吐量发生影响并影响系统性能。这个附加等 待时间可进一步阻止硬件优化。 更重要的是, 由于公知的维护和分发考虑, 避免对现有驱动 程序的修改是更好的。 因此, 本发明的实施例包括增强 DRU 单元 155, 以便从装置 130-139 接收 DMA 请求 并向存储器控制器 150 转发所述请求。DRU 单元 155 还处理由 VMM 170 发出的热页面交换 请求。通过从 VMM170 去除热交换执行并因而使 VMM 不再必须消除竞争情况, 装置 DMA 请求 以更有效方式受控。
     图 2 是根据本发明的实施例的 DRU 155 的框图。DRU 155 包括热页面交换命令接 口 (HPSCI)200, 系统 VMM 能够通过 HPSCI 200 把 HPS 请求通知给 DRU。
     由 VMM 生成的 HPS 请求可包括指示待更新的目标客户页面帧号 (GPFN)、 由目标 GPFN 映射的原始机器页面帧号 (MPFN)、 将由目标 GPFN 映射的新 MPFN 的信息, 以及为 HPS 请求指示错误和完成信息的状态字段。GPFN 可备选地称作 “虚拟地址” 。要理解, 原始 MPFN 和新 MPFN 包含在系统存储器 110 中。
     HPSCI 200 对 HPS 请求执行各种有效性检查。例如, HPSCI 200 可确保目标 GPFN 的映射与原始 MPFN 一致, 或者所请求的交换是否因为没有将存储器指派给发出 VM 而无法 完成。
     在 HPS 请求生效后, 热页面交换代理 (HPSA)210 可执行页面交换。HPSA 210 从原 始 MPFN 读出内容, 然后写到新 MPFN。在一个实施例中, 这些存储器访问请求与正进行的装 置 DMA 请求交织。一旦存储器复制结束, HPSA 210 然后改变 DRPT, 以便反映目标 GPFN 到新 MPFN 的最近映射。HPSA 210 可进一步使内部 DMA 重新映射 TLB 无效, 以避免执行 HPS 之后 陈旧的映射条目。
     DRU 155 还包括接受和满足用于系统装置的 DMA 请求的装置接口 220。因此, DRU 155 对装置 DMA 请求具有控制力 ( 与 VMM 相反 ), 并且能够在必要时阻塞到正被交换的页面 的 DMA 请求。
     上述 HPSCI 可以同步或异步方式植入。图 3 是根据本发明实施例的 HPSCI 处理 HPS 请求的流程图。本文所示的流程图提供各种过程动作的序列的示例。虽然以特定序列 或顺序示出, 但是除非载明, 否则能够修改动作的顺序。 因此, 所示实现应当仅理解为示例,
     所示过程能够以不同顺序执行, 并且一些动作可并行执行。另外, 在本发明的各种实施例 中, 能够省略一个或多个动作 ; 因此, 并非在每一个实现中都要求全部动作。其它过程流是 可能的。
     过程 300 开始于 VMM 接收命令以执行 HPS 请求, 310。这个 HPS 请求可以是向 VMM 发出的处理器指令。VMM 响应于接收所述命令而锁定 DRPT, 以免其它命令修改 DRPT, 320。
     VMM 将诸如目标 GPFN、 原始 MPFN 和新 MPFN 的必要热交换信息编译到 HPS 请求中, 330。VMM 向 DRU 的 HPSCI 发送 HPS 请求, 同时还阻塞 VM 访问相应的 GPFN, 340。在这个实 施例中, 还阻塞 VMM 接收其它 HPS 请求。
     然后, HPSCI 将校验 HPS 请求并且将其转发给 HPSA, 350。在 HPS 操作期间应当阻 塞到原始 MPFN 的访问。如上所述, 阻塞 VM 访问原始 MPFN( 经由相应的 GPFN)。还必须阻塞 装置经由 DMA 请求来访问原始 MPFN。这种阻塞经由 DRU 来做到, 360。
     然后, 通过将原始 MPFN 的内容交换到新 MPFN 来满足 HPS 请求, 365。HPSA 还修改 DRPT, 并清洗 DMA 重新映射 TLB 370。HPSA 通知 HPSCI 已经满足了该 HPS 请求, 并且 HPSCI 将这个通知进一步送到 VMM, 380。DRU 不阻塞来自系统装置的 DMA 请求, 390。VMM 不阻塞 VM, 并且对 DRPT 解锁, 395。 在备选实施例中, HPSCI 以异步方式来实现。在这个实施例中, 在热交换操作期间 没有阻塞 VMM 接收其它 HPS 请求。在这个实施例中, VMM 能够继续将其它 HPS 请求排队, 并 且 HPSCI 可并行处理这些排队的请求。在一个实施例中, VMM 设置可服务的并行请求的数 目的阈值。
     在上述示例实施例中, 阻止装置在主机交换过程中发出 DMA 请求。这些 DMA 请求 可保存在 DRU 处或各装置上的某个内部缓冲区中, 并且可仅当重新建立新映射时处理这些 DMA 请求。如果在热交换操作期间发出太多 DMA 请求, 则这个实施例具有缓冲区溢出的风 险, 并且整体性能可能受到负面影响。
     图 4 示出使 HPS 操作期间被阻塞的 DMA 请求的数量为最少的示例过程。 如上所述, 为了热交换使用中的页面, 旧页面的全部内容必须复制到新页面。这个复制过程必须确保 新页面包括最近的内容。
     在一些系统中, 即使阻塞了拥有系统装置的 VM, 仍然存在从这些装置发出的 DMA 访问 ( 即, 写操作 )。此外, 虽然客户软件通常以页面为单位 ( 即, 4Kb) 来管理存储器, 但是 存储器控制器经常以高速缓存行为单位 ( 即, 64 字节 ) 来接受到存储器 DIMM 的突发访问。
     因此, 将旧页面复制到新页面引起数十个 “高速缓存行” 副本 - 例如, 如果将热交 换一个页面, 则存在对那个操作出现的 64 个 “高速缓存行” 大小的写。虽然在整个页面复 制结束以前阻塞装置 DMA 请求更容易, 但是它添加了等待时间和装置内部缓冲区溢出的风 险。过程 400 示出以交织方式处理 HPS 操作和 DMA 请求, 因此允许装置在大多数情况下访 问交换中的页面。
     在这个实施例中, 内部计数器用来在 HPS 操作期间跟踪哪个 “高速缓存行” 当前正 在被复制。因此, 当 DRU 接收装置 DMA 请求时 410, DRU 确定与内部计数器关联的所请求的 存储器的位置, 420。
     如果 DMA 请求是针对比内部计数器更小的 “高速缓存行” , 430, 则这指示存储器的 这个特定部分已经被交换, 因此 DMA 目标地址将改变并且改为针对新的 “高速缓存行” 位置
     ( 即, 新 MFPN), 435。然后, 允许更新的 DMA 请求, 445。
     如果 DMA 请求是针对比内部计数器更大的 “高速缓存行” , 440, 则这指示存储器的 这个特定部分尚未被交换, 因此允许到原始 “高速缓存行” 位置 ( 即, 原始 MFPN) 的 DMA 请 求仍然是安全的, 445。
     如果 DMA 请求是针对与内部计数器相等的 “高速缓存行” , 则这指示存储器的这个 特定部分当前正被交换, 并且因此必须阻塞这个 DMA 请求, 以防止竞争情况或存储器不一 致, 450。
     在一个实施例中, DRU 单元等待当前 “高速缓存行”被交换, 460, 然后更新到新 MPFN 的 ( 这时不阻塞的 )DMA 请求的目标地址 ( 即, 操作 435)。然后允许更新的 DMA 请求, 445。将理解的是, 图 4 的示例过程减少了在 HPS 操作期间需要阻塞的 DMA 请求的数目。
     本文所述的以上称作过程、 服务器或工具的各种组件可以是用于执行所描述功能 的部件。本文所描述的各个组件包括软件或硬件或者它们的组合。组件能够实现为软件模 块、 硬件模块、 特殊目的硬件 ( 例如专用硬件、 ASIC、 DSP 等 )、 嵌入式控制器、 硬连线电路等 等。 软件内容 ( 例如数据、 指令、 配置 ) 可经由包括计算机可读存储介质的制造产品来提供, 计算机可读存储介质提供表示能够被执行的指令的内容。 内容可使计算机执行本文所描述 的各种功能 / 操作。 计算机可读存储介质包括以计算机 ( 例如计算装置、 电子系统等 ) 可访 问形式来提供 ( 即, 存储和 / 或传送 ) 信息的任何机制, 诸如可记录 / 不可记录介质 ( 例如 只读存储器 (ROM)、 随机存取存储器 (RAM)、 磁盘存储介质、 光存储介质、 闪存装置等 )。 内容 可以是直接可执行的 (“目标” 或者 “可执行” 形式 )、 源代码或差代码 (“增量” 或 “补丁” 代码 )。计算机可读存储介质也可包括能够从其中下载内容的存储装置或数据库。计算机 可读介质也可包括在销售或交付时使内容存储于其中的装置或产品。因此, 交付具有已存 储内容的装置或者提供用于通过通信介质下载的内容可理解为提供具有本文所描述的这 种内容的制造产品。

用于具有定向I/O的虚拟机的热交换有源存储器.pdf_第1页
第1页 / 共13页
用于具有定向I/O的虚拟机的热交换有源存储器.pdf_第2页
第2页 / 共13页
用于具有定向I/O的虚拟机的热交换有源存储器.pdf_第3页
第3页 / 共13页
点击查看更多>>
资源描述

《用于具有定向I/O的虚拟机的热交换有源存储器.pdf》由会员分享,可在线阅读,更多相关《用于具有定向I/O的虚拟机的热交换有源存储器.pdf(13页珍藏版)》请在专利查询网上搜索。

1、10申请公布号CN102346683A43申请公布日20120208CN102346683ACN102346683A21申请号201110089878322申请日20110331PCT/CN2010/07145620100331WOG06F9/455200601G06F13/2820060171申请人英特尔公司地址美国加利福尼亚州72发明人K田74专利代理机构中国专利代理香港有限公司72001代理人柯广华王洪斌54发明名称用于具有定向I/O的虚拟机的热交换有源存储器57摘要本发明名称为“用于具有定向I/O的虚拟机的热交换有源存储器”。本发明的实施例描述一种从虚拟机监视器VMM接收热页面交换HP。

2、S请求的DMA重新映射单元DRU,该HPS请求包括由至少一个虚拟机VM使用的、映射到第一存储器页面位置的虚拟地址,以及第二存储器页面位置。DRU还在HPS请求被满足以前,阻塞到正被重新映射的存储器的地址的DMA请求,将第一存储器页面位置的内容复制到第二存储器页面位置,以及将虚拟地址从第一存储器页面位置重新映射到第二存储器页面位置。30优先权数据51INTCL19中华人民共和国国家知识产权局12发明专利申请权利要求书2页说明书6页附图4页CN102346703A1/2页21一种系统,包括存储器;处理器;经由所述处理器来执行的虚拟机VM;虚拟机监视器VMM,所述虚拟机监视器经由所述处理器来执行,以。

3、控制所述VM对所述存储器和所述处理器的访问;发出热页面交换HPS请求,所述HPS请求包括由所述VM和指派给所述VM的装置中的至少一个使用的虚拟地址、映射到所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置,以及在所述HPS请求完成以前,阻塞所述VM到所述虚拟地址的访问;以及DMA重新映射单元DRU,可操作地耦合到所述处理器和所述存储器,以接收和校验所述HPS请求,将所述第一存储器页面位置的内容复制到所述第二存储器页面位置;将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置,以及阻塞到正被重新映射的存储器的地址的DMA请求。2如权利要求1所述的系统,所述DRU还在所述H。

4、PS请求被满足以前阻塞所有DMA请求。3如权利要求1所述的系统,所述DRU还在所述HPS请求被满足以前阻塞到所述第一存储器页面位置的所有DMA请求。4如权利要求1所述的系统,所述DRU还如果DMA请求的存储器的地址已经被重新映射,则基于所述第二存储器页面位置满足DMA请求;以及如果DMA请求的存储器的地址还必须被重新映射,则基于所述第一存储器页面位置满足DMA请求。5如权利要求1所述的系统,所述VMM还在所述HPS请求完成以前阻塞附加HPS请求。6如权利要求1所述的系统,所述VMM还将附加HPS请求排队,所述DRU与所述HPS请求并行地处理附加HPS请求。7如权利要求1所述的系统,所述HPS请。

5、求使能以下操作中的至少一个切断到所述第一存储器页面位置的电力,以及所述第一存储器页面位置的存储器重新组织。8一种方法,包括从虚拟机监视器VMM接收和校验热页面交换HPS请求,所述HPS请求包括由至少一个虚拟机VM使用的虚拟地址、映射到所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置;在所述HPS请求完成以前阻塞到正被重新映射的存储器的地址的DMA请求;将所述第一存储器页面位置的内容复制到所述第二存储器页面位置;以及将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置。9如权利要求8所述的方法,还包括在所述HPS请求被满足以前阻塞所有DMA请求。权利要求书CN10234。

6、6683ACN102346703A2/2页310如权利要求8所述的方法,还包括如果DMA请求的存储器的地址已经被重新映射,则基于所述第二存储器页面位置满足DMA请求;以及如果DMA请求的存储器的地址还必须被重新映射,则基于所述第一存储器页面位置满足DMA请求。11如权利要求8所述的方法,还包括在所述HPS请求完成以前阻塞附加HPS请求。12如权利要求8所述的方法,还包括与所述HPS请求并行地处理附加HPS请求。13如权利要求8所述的方法,还包括切断到所述第一存储器页面位置的电力。14如权利要求8所述的方法,还包括重新组织所述第一存储器页面位置的存储器。15一种设备,包括第一逻辑,所述第一逻辑接。

7、收和校验热页面交换HPS,所述HPS请求包括虚拟地址、映射到由至少一个虚拟机VM使用的所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置;装置接口,所述装置接口接收DMA请求,所述装置接口在所述HPS请求完成以前阻塞到正被重新映射的存储器的地址的DMA请求;以及第二逻辑,所述第二逻辑将所述第一存储器页面位置的内容复制到所述第二存储器页面位置,以及将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置。16如权利要求15所述的设备,所述装置接口还在所述HPS请求被满足以前阻塞所有DMA请求。17如权利要求15所述的设备,所述装置接口还如果DMA请求的存储器的地址已经被重新映。

8、射,则基于所述第二存储器页面位置满足DMA请求;以及如果DMA请求的存储器的地址还必须被重新映射,则基于所述第一存储器页面位置满足DMA请求。18如权利要求15所述的设备,所述第一逻辑还与所述HPS请求并行地处理附加HPS请求。19如权利要求15所述的设备,所述HPS请求使能以下操作中的至少一个切断到所述第一存储器页面位置的电力,以及所述第一存储器页面位置的存储器重新组织。权利要求书CN102346683ACN102346703A1/6页4用于具有定向I/O的虚拟机的热交换有源存储器技术领域0001本发明的实施例一般涉及系统存储器管理,并且更具体地涉及指派到虚拟机的系统存储器的管理。背景技术0。

9、002包括虚拟机VM的系统允许共享下层UNDERLYING物理机器及其资源。提供到VM的虚拟化的软件层称作虚拟机监视器VMM或管理器。VMM充当VM的主机。VMM为VM上执行的系统软件例如操作系统软件和应用软件提供物理机器的抽象。VMM还能够保留对处理器资源、物理存储器、中断管理和数据I/O的选择性控制。0003I/O虚拟化描述了单个物理I/O单元由不止一个VM来共享的能力。现有技术解决方案经由软件模块来实现I/O虚拟化。因此,到VM存储器页面的所有访问都从CPU发起,并且由此引起显著处理开销。此外,这种类型的虚拟化不允许指派到VM的装置直接经由直接存储器访问DMA执行存储器操作。0004其它。

10、现有技术解决方案经由又称作定向I/O的硬件逻辑来实现I/O虚拟化。在这些解决方案中,装置的DMA请求被限制到通过VMM指派到拥有该装置的VM的存储器域和存储器区。这些硬件现有技术解决方案之一可描述为DMA重新映射硬件一即,定位在具有DMA能力的外围设备与系统的物理存储器之间的硬件单元。未修改的驱动程序可在VM中无缝运行,VM将对指派到该VM的I/O资源具有完全的特权;但是,由于DMA保护在芯片组级实施,因此对于指派到该VM的I/O装置,阻止到虚拟机自有的物理页面外部的物理存储器的访问。0005一些高级计算机服务器存储器特征要求“热拆卸”或“热交换”存储器的能力例如在使用DIMM时将其拆卸。热交。

11、换存储器包括将至少一个使用中的页面的内容移到另一个页面,而不打断正进行的执行。0006如果I/O虚拟化经由软件模块来完成,则热交换存储器在现有技术中是可能的。在这种情况下,在页面内容正在被交换时,VMM冻结各自的VM以阻止竞争访问。在建立新映射后,将VM解冻,并且随后的存储器访问将重新定向到新映射的页面。0007但是,没有热交换具有允许定向I/O的I/O虚拟化的VM的页面的能力。这部分地归因于VMM能够冻结VM执行、但对指派到所述VM的装置没有控制力的事实。这些指派的装置能够在任何时间,甚至当那个页面的热交换正在进行时,向VM页面发出DMA请求。这种竞争情况是危险的,因为它可引起旧页面与新页面。

12、之间的不一致。发明内容0008按照本发明的一个方面,提供一种系统,包括0009存储器;0010处理器;0011经由所述处理器来执行的虚拟机VM;说明书CN102346683ACN102346703A2/6页50012虚拟机监视器VMM,所述虚拟机监视器经由所述处理器来执行,以0013控制所述VM对所述存储器和所述处理器的访问;0014发出热页面交换HPS请求,所述HPS请求包括由所述VM和指派给所述VM的装置中的至少一个使用的虚拟地址、映射到所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置,以及0015在所述HPS请求完成以前,阻塞所述VM到所述虚拟地址的访问;以及0016DMA重新映。

13、射单元DRU,可操作地耦合到所述处理器和所述存储器,以0017接收和校验所述HPS请求,0018将所述第一存储器页面位置的内容复制到所述第二存储器页面位置;0019将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置,以及0020阻塞到正被重新映射的存储器的地址的DMA请求。0021按照本发明的另一方面,提供一种方法,包括0022从虚拟机监视器VMM接收和校验热页面交换HPS请求,所述HPS请求包括由至少一个虚拟机VM使用的虚拟地址、映射到所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置;0023在所述HPS请求完成以前阻塞到正被重新映射的存储器的地址的DMA请求;0。

14、024将所述第一存储器页面位置的内容复制到所述第二存储器页面位置;以及0025将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置。0026按照本发明的另一方面,提供一种设备,包括0027第一逻辑,所述第一逻辑接收和校验热页面交换HPS,所述HPS请求包括虚拟地址、映射到由至少一个虚拟机VM使用的所述虚拟地址的第一存储器页面位置、以及第二存储器页面位置;0028装置接口,所述装置接口接收DMA请求,所述装置接口在所述HPS请求完成以前阻塞到正被重新映射的存储器的地址的DMA请求;以及0029第二逻辑,所述第二逻辑将所述第一存储器页面位置的内容复制到所述第二存储器页面位置,以及。

15、将所述虚拟地址从所述第一存储器页面位置重新映射到所述第二存储器页面位置。附图说明0030以下描述包括对附图的讨论,附图具有作为本发明实施例的实现示例给出的图解。应当作为示例而不是限定来理解附图。如本文所使用的,对一个或多个“实施例”的引用将被理解为描述本发明的至少一个实现中包含的具体特征、结构或特性。因此,本文中出现的诸如“在一个实施例中”或“在备选实施例中”的短语描述了本发明的各种实施例和实现,并且不一定都指同一个实施例。然而,它们也并不一定是相互排斥的。0031图1是利用本发明实施例的系统的框图。0032图2是DMA重新映射单元的实施例的框图。0033图3是根据本发明实施例处理热页面交换请。

16、求的流程图。说明书CN102346683ACN102346703A3/6页60034图4示出使热页面交换操作期间需要阻塞的DMA请求的数量为最少的示例过程。0035下面是某些细节和实现的描述,包括可描绘下文所述实施例的部分或全部的附图的描述,以及讨论本文呈现的发明概念的其它潜在实施例或实现。下面提供本发明的实施例的概述,之后是参照附图的更详细描述。具体实施方式0036本发明的实施例涉及用于具有定向I/O的VM的增强DMA功能性。本发明的实施例虑及以无竞争和有效率的方式进行的有源存储器单元例如,页面的热交换。0037本发明的示例实施例描述处于芯片组级的增强DMA重新映射单元DRU。增强DRU单元。

17、与VMM结合工作。DRU包括接受来自VMM的页面交换请求的接口。一旦接收到请求,DRU执行页面交换,同时至少部分地阻塞定向到待交换页面的DMA请求。0038本发明的实施例可包含在利用要求存储器热交换能力的特征的系统和服务器中。所述特征包括例如可靠性、可用性和可服务性RAS,诸如离线状态的存储器低功率模式其中切断到DIMM的电力以省电,以及当可用存储器资源改变时将跨节点VM页面重新组织为单个节点的不均匀存储器访问NUMA节点亲合力。这些特征要求将一个使用中的页面的内容热交换到另一个页面而不打断正进行的执行的能力。0039图1是利用本发明实施例的系统的框图。系统100可包含在系统服务器、台式计算机。

18、装置、移动计算机装置或者利用处理器和系统存储器的任何其它任意装置中。0040如图1的示例实施例中所示,系统100包括系统存储器110、处理器120、系统装置130139例如,外部盘驱动器、I/O装置、以及存储器控制器150。在这个实施例中,装置130139是具有DMA能力的装置。0041系统100可进一步包括VMM170,以便管理VM160,包括向VM160分配存储器的部分即,页面。VM160可包含运行各种应用的客户操作系统即,客户软件。VM160和VMM170都可经由处理器120执行。0042VMM170可进一步管理装置130139,并且向VM160指派所述装置中的至少一个。在这个示例实施例。

19、中,将装置130、131和139指派给VM160。要理解,在备选实施例中,系统可包括多个VM,并且可以任何组合将系统装置指派给各VM。0043提供客户软件的存储器地址范围,即客户物理地址GPA范围,可能与机器物理地址MPA范围不同。具有DMA能力的装置130、131和139使用MPA向/从物理存储器位置传递数据。但是,在这个实施例中,VM160的客户软件即,客户OS包括控制装置130、131和139的装置驱动程序,并且因而提供GPA范围而不是MPA范围。0044DRU155用来进行所要求的地址转换。由于GPA由VMM170提供,所以GPA范围必须转换成MPA范围。在一个实施例中,VMM170采。

20、用GPA到MPA转换信息对DRU编程,使得DMA重新映射硬件能够执行必要的转换。这个转换信息在本文中称作DMA重新映射页面表DRPT。使用DRPT,来自装置的数据这时能够直接传递到适当的存储器地址,而不是经过中间软件仿真层。0045存储器110可包括存储器的若干单元,例如多个DIMM。“热拆卸”或“热交换”存储器的能力包含在DIMM使用中将其拆卸。热交换存储器包含例如将要掉电/移动的第一DIMM中包括的至少一个使用中的页面的内容移到将不会掉电/移动的第二说明书CN102346683ACN102346703A4/6页7DIMM中包括的另一个页面,而不打断正进行的执行。以这种方式交换页面的操作在本。

21、文中称作热页面交换HPS。0046在页面交换期间,重要的是没有对该页面进行访问。VMM170能够冻结VM160的执行,因而阻止VM160访问待交换页面。VMM170备选地能够只冻结到待交换页面的VM访问。然而,关于各装置可发出的DMA请求,VMM170对装置130、131和139没有控制力。0047有可能修改用于装置130、131和139中的每个的VM160中的装置驱动程序,以便抢先冻结指派的装置。在开始页面交换操作之前,VMM170可经由VM160向修改的装置驱动程序发送冻结请求。修改的装置驱动程序然后可用信号通知开始热交换操作是安全的。一旦热交换完成,则VMM170可向修改的装置驱动程序发。

22、送解冻请求。但是,这个解决方案由于若干原因而不理想。0048冻结/解冻即,停止/重新开始装置的命令是费时的操作。要求不确定的等待时间以确保处理完用于各装置的所有正进行的DMA请求,并且要求进一步的时间以等待各装置进入静止状态。这能够进一步对I/O吞吐量发生影响并影响系统性能。这个附加等待时间可进一步阻止硬件优化。更重要的是,由于公知的维护和分发考虑,避免对现有驱动程序的修改是更好的。0049因此,本发明的实施例包括增强DRU单元155,以便从装置130139接收DMA请求并向存储器控制器150转发所述请求。DRU单元155还处理由VMM170发出的热页面交换请求。通过从VMM170去除热交换执。

23、行并因而使VMM不再必须消除竞争情况,装置DMA请求以更有效方式受控。0050图2是根据本发明的实施例的DRU155的框图。DRU155包括热页面交换命令接口HPSCI200,系统VMM能够通过HPSCI200把HPS请求通知给DRU。0051由VMM生成的HPS请求可包括指示待更新的目标客户页面帧号GPFN、由目标GPFN映射的原始机器页面帧号MPFN、将由目标GPFN映射的新MPFN的信息,以及为HPS请求指示错误和完成信息的状态字段。GPFN可备选地称作“虚拟地址”。要理解,原始MPFN和新MPFN包含在系统存储器110中。0052HPSCI200对HPS请求执行各种有效性检查。例如,H。

24、PSCI200可确保目标GPFN的映射与原始MPFN一致,或者所请求的交换是否因为没有将存储器指派给发出VM而无法完成。0053在HPS请求生效后,热页面交换代理HPSA210可执行页面交换。HPSA210从原始MPFN读出内容,然后写到新MPFN。在一个实施例中,这些存储器访问请求与正进行的装置DMA请求交织。一旦存储器复制结束,HPSA210然后改变DRPT,以便反映目标GPFN到新MPFN的最近映射。HPSA210可进一步使内部DMA重新映射TLB无效,以避免执行HPS之后陈旧的映射条目。0054DRU155还包括接受和满足用于系统装置的DMA请求的装置接口220。因此,DRU155对装。

25、置DMA请求具有控制力与VMM相反,并且能够在必要时阻塞到正被交换的页面的DMA请求。0055上述HPSCI可以同步或异步方式植入。图3是根据本发明实施例的HPSCI处理HPS请求的流程图。本文所示的流程图提供各种过程动作的序列的示例。虽然以特定序列或顺序示出,但是除非载明,否则能够修改动作的顺序。因此,所示实现应当仅理解为示例,说明书CN102346683ACN102346703A5/6页8所示过程能够以不同顺序执行,并且一些动作可并行执行。另外,在本发明的各种实施例中,能够省略一个或多个动作;因此,并非在每一个实现中都要求全部动作。其它过程流是可能的。0056过程300开始于VMM接收命令。

26、以执行HPS请求,310。这个HPS请求可以是向VMM发出的处理器指令。VMM响应于接收所述命令而锁定DRPT,以免其它命令修改DRPT,320。0057VMM将诸如目标GPFN、原始MPFN和新MPFN的必要热交换信息编译到HPS请求中,330。VMM向DRU的HPSCI发送HPS请求,同时还阻塞VM访问相应的GPFN,340。在这个实施例中,还阻塞VMM接收其它HPS请求。0058然后,HPSCI将校验HPS请求并且将其转发给HPSA,350。在HPS操作期间应当阻塞到原始MPFN的访问。如上所述,阻塞VM访问原始MPFN经由相应的GPFN。还必须阻塞装置经由DMA请求来访问原始MPFN。。

27、这种阻塞经由DRU来做到,360。0059然后,通过将原始MPFN的内容交换到新MPFN来满足HPS请求,365。HPSA还修改DRPT,并清洗DMA重新映射TLB370。HPSA通知HPSCI已经满足了该HPS请求,并且HPSCI将这个通知进一步送到VMM,380。DRU不阻塞来自系统装置的DMA请求,390。VMM不阻塞VM,并且对DRPT解锁,395。0060在备选实施例中,HPSCI以异步方式来实现。在这个实施例中,在热交换操作期间没有阻塞VMM接收其它HPS请求。在这个实施例中,VMM能够继续将其它HPS请求排队,并且HPSCI可并行处理这些排队的请求。在一个实施例中,VMM设置可服。

28、务的并行请求的数目的阈值。0061在上述示例实施例中,阻止装置在主机交换过程中发出DMA请求。这些DMA请求可保存在DRU处或各装置上的某个内部缓冲区中,并且可仅当重新建立新映射时处理这些DMA请求。如果在热交换操作期间发出太多DMA请求,则这个实施例具有缓冲区溢出的风险,并且整体性能可能受到负面影响。0062图4示出使HPS操作期间被阻塞的DMA请求的数量为最少的示例过程。如上所述,为了热交换使用中的页面,旧页面的全部内容必须复制到新页面。这个复制过程必须确保新页面包括最近的内容。0063在一些系统中,即使阻塞了拥有系统装置的VM,仍然存在从这些装置发出的DMA访问即,写操作。此外,虽然客户。

29、软件通常以页面为单位即,4KB来管理存储器,但是存储器控制器经常以高速缓存行为单位即,64字节来接受到存储器DIMM的突发访问。0064因此,将旧页面复制到新页面引起数十个“高速缓存行”副本例如,如果将热交换一个页面,则存在对那个操作出现的64个“高速缓存行”大小的写。虽然在整个页面复制结束以前阻塞装置DMA请求更容易,但是它添加了等待时间和装置内部缓冲区溢出的风险。过程400示出以交织方式处理HPS操作和DMA请求,因此允许装置在大多数情况下访问交换中的页面。0065在这个实施例中,内部计数器用来在HPS操作期间跟踪哪个“高速缓存行”当前正在被复制。因此,当DRU接收装置DMA请求时410,。

30、DRU确定与内部计数器关联的所请求的存储器的位置,420。0066如果DMA请求是针对比内部计数器更小的“高速缓存行”,430,则这指示存储器的这个特定部分已经被交换,因此DMA目标地址将改变并且改为针对新的“高速缓存行”位置说明书CN102346683ACN102346703A6/6页9即,新MFPN,435。然后,允许更新的DMA请求,445。0067如果DMA请求是针对比内部计数器更大的“高速缓存行”,440,则这指示存储器的这个特定部分尚未被交换,因此允许到原始“高速缓存行”位置即,原始MFPN的DMA请求仍然是安全的,445。0068如果DMA请求是针对与内部计数器相等的“高速缓存行。

31、”,则这指示存储器的这个特定部分当前正被交换,并且因此必须阻塞这个DMA请求,以防止竞争情况或存储器不一致,450。0069在一个实施例中,DRU单元等待当前“高速缓存行”被交换,460,然后更新到新MPFN的这时不阻塞的DMA请求的目标地址即,操作435。然后允许更新的DMA请求,445。将理解的是,图4的示例过程减少了在HPS操作期间需要阻塞的DMA请求的数目。0070本文所述的以上称作过程、服务器或工具的各种组件可以是用于执行所描述功能的部件。本文所描述的各个组件包括软件或硬件或者它们的组合。组件能够实现为软件模块、硬件模块、特殊目的硬件例如专用硬件、ASIC、DSP等、嵌入式控制器、硬。

32、连线电路等等。软件内容例如数据、指令、配置可经由包括计算机可读存储介质的制造产品来提供,计算机可读存储介质提供表示能够被执行的指令的内容。内容可使计算机执行本文所描述的各种功能/操作。计算机可读存储介质包括以计算机例如计算装置、电子系统等可访问形式来提供即,存储和/或传送信息的任何机制,诸如可记录/不可记录介质例如只读存储器ROM、随机存取存储器RAM、磁盘存储介质、光存储介质、闪存装置等。内容可以是直接可执行的“目标”或者“可执行”形式、源代码或差代码“增量”或“补丁”代码。计算机可读存储介质也可包括能够从其中下载内容的存储装置或数据库。计算机可读介质也可包括在销售或交付时使内容存储于其中的装置或产品。因此,交付具有已存储内容的装置或者提供用于通过通信介质下载的内容可理解为提供具有本文所描述的这种内容的制造产品。说明书CN102346683ACN102346703A1/4页10图1说明书附图CN102346683ACN102346703A2/4页11图2说明书附图CN102346683ACN102346703A3/4页12图3说明书附图CN102346683ACN102346703A4/4页13图4说明书附图CN102346683A。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1