-
公开(公告)号:US08521919B2
公开(公告)日:2013-08-27
申请号:US12494274
申请日:2009-06-30
IPC分类号: G06F13/28
CPC分类号: G06F12/1081
摘要: A method of address translation in a computing system providing direct memory access (DMA) by way of one or more remote memory management units (MMUs) is provided. The method comprises intercepting a request for a first DMA operation forwarded by a first device to a second device; and translating a guest address included in the request to a first address according to a mapping referencing a memory frame in a memory of the second device. A local MMU increments a first reference count indicating number of active DMA operations directed to the memory frame and a second reference count indicating number of remote MMUs that have mapped the memory frame.
摘要翻译: 提供了一种通过一个或多个远程存储器管理单元(MMU)提供直接存储器访问(DMA)的计算系统中的地址转换方法。 该方法包括拦截由第一设备转发到第二设备的第一DMA操作的请求; 以及根据引用所述第二设备的存储器中的存储器帧的映射将所述请求中包括的访客地址转换为第一地址。 本地MMU增加指示针对存储器帧的活动DMA操作数的第一参考计数和指示映射存储器帧的远程MMU的数量的第二参考计数。
-
公开(公告)号:US20100332693A1
公开(公告)日:2010-12-30
申请号:US12494274
申请日:2009-06-30
CPC分类号: G06F12/1081
摘要: A method of address translation in a computing system providing direct memory access (DMA) by way of one or more remote memory management units (MMUs) is provided. The method comprises intercepting a request for a first DMA operation forwarded by a first device to a second device; and translating a guest address included in the request to a first address according to a mapping referencing a memory frame in a memory of the second device. A local MMU increments a first reference count indicating number of active DMA operations directed to the memory frame and a second reference count indicating number of remote MMUs that have mapped the memory frame.
摘要翻译: 提供了一种通过一个或多个远程存储器管理单元(MMU)提供直接存储器访问(DMA)的计算系统中的地址转换方法。 该方法包括拦截由第一设备转发到第二设备的第一DMA操作的请求; 以及根据引用所述第二设备的存储器中的存储器帧的映射将所述请求中包括的访客地址转换为第一地址。 本地MMU增加指示针对存储器帧的活动DMA操作数的第一参考计数和指示映射存储器帧的远程MMU的数量的第二参考计数。
-
公开(公告)号:US20110107008A1
公开(公告)日:2011-05-05
申请号:US12609092
申请日:2009-10-30
申请人: Shmuel Ben-Yehuda , Abel Gordon , Anthony Nicholas Liguori , Orit Luba Wasserman , Ben-Ami Yassour
发明人: Shmuel Ben-Yehuda , Abel Gordon , Anthony Nicholas Liguori , Orit Luba Wasserman , Ben-Ami Yassour
CPC分类号: G06F12/109 , G06F9/45558 , G06F2009/45566 , G06F2009/45583
摘要: A method for managing memory in a nested virtualization environment is provided. The method comprises implementing a first virtual machine (VM) for a first software such that a first guest memory is allocated to the first software; maintaining a first data structure to translate one or more memory addresses in the first guest memory to corresponding memory addresses in a physical memory; maintaining a second data structure to translate one or more memory addresses in the second guest memory to corresponding memory addresses in the physical memory. The first software implements a second VM for a second software such that a second guest memory is allocated to the second software and maintains a third data structure to translate one or more memory addresses in the second guest memory to corresponding memory addresses in the first guest memory.
摘要翻译: 提供了一种在嵌套虚拟化环境中管理内存的方法。 该方法包括为第一软件实现第一虚拟机(VM),使得第一客户机存储器被分配给第一软件; 保持第一数据结构以将第一访客存储器中的一个或多个存储器地址转换为物理存储器中的相应存储器地址; 保持第二数据结构以将第二访客存储器中的一个或多个存储器地址转换为物理存储器中的相应存储器地址。 第一软件为第二软件实现第二VM,使得第二客户存储器被分配给第二软件并维护第三数据结构以将第二客户存储器中的一个或多个存储器地址转换为第一客户存储器中的相应存储器地址 。
-
公开(公告)号:US08392916B2
公开(公告)日:2013-03-05
申请号:US12347524
申请日:2008-12-31
IPC分类号: G06F9/30
CPC分类号: G06F9/45537 , G06F2009/45566
摘要: In accordance with one embodiment, a method of nesting a second virtual machine (VM) on a first VM running on a physical machine is provided. The method comprises receiving a first instruction from the physical machine, wherein the first instruction originates from the first VM, wherein a first control structure is associated with the first VM, and wherein a second control structure is associated with the second VM; creating a secondary control structure based on the second control structure associated with the second VM; providing the first instruction and the secondary control structure to the physical machine, wherein the physical machine executes the first instruction according to information included in the secondary control structure; and updating the secondary control structure to correspond to current state or execution environment of the physical machine.
摘要翻译: 根据一个实施例,提供了在运行在物理机上的第一VM上嵌套第二虚拟机(VM)的方法。 所述方法包括从所述物理机接收第一指令,其中所述第一指令来自所述第一VM,其中第一控制结构与所述第一VM相关联,并且其中第二控制结构与所述第二VM关联; 基于与所述第二VM相关联的所述第二控制结构创建二级控制结构; 向所述物理机提供所述第一指令和所述辅助控制结构,其中所述物理机根据所述辅助控制结构中包含的信息执行所述第一指令; 以及更新所述辅助控制结构以对应于所述物理机器的当前状态或执行环境。
-
公开(公告)号:US08135898B2
公开(公告)日:2012-03-13
申请号:US12609092
申请日:2009-10-30
申请人: Shmuel Ben-Yehuda , Abel Gordon , Anthony Nicholas Liguori , Orit Luba Wasserman , Ben-Ami Yassour
发明人: Shmuel Ben-Yehuda , Abel Gordon , Anthony Nicholas Liguori , Orit Luba Wasserman , Ben-Ami Yassour
IPC分类号: G06F12/00
CPC分类号: G06F12/109 , G06F9/45558 , G06F2009/45566 , G06F2009/45583
摘要: A method for managing memory in a nested virtualization environment is provided. The method comprises implementing a first virtual machine (VM) for a first software such that a first guest memory is allocated to the first software; maintaining a first data structure to translate one or more memory addresses in the first guest memory to corresponding memory addresses in a physical memory; maintaining a second data structure to translate one or more memory addresses in the second guest memory to corresponding memory addresses in the physical memory. The first software implements a second VM for a second software such that a second guest memory is allocated to the second software and maintains a third data structure to translate one or more memory addresses in the second guest memory to corresponding memory addresses in the first guest memory.
摘要翻译: 提供了一种在嵌套虚拟化环境中管理内存的方法。 该方法包括为第一软件实现第一虚拟机(VM),使得第一客户机存储器被分配给第一软件; 保持第一数据结构以将第一访客存储器中的一个或多个存储器地址转换为物理存储器中的相应存储器地址; 保持第二数据结构以将第二访客存储器中的一个或多个存储器地址转换为物理存储器中的相应存储器地址。 第一软件为第二软件实现第二VM,使得第二客户存储器被分配给第二软件并维护第三数据结构以将第二客户存储器中的一个或多个存储器地址转换为第一客户存储器中的相应存储器地址 。
-
公开(公告)号:US20100169882A1
公开(公告)日:2010-07-01
申请号:US12347524
申请日:2008-12-31
IPC分类号: G06F9/455
CPC分类号: G06F9/45537 , G06F2009/45566
摘要: In accordance with one embodiment, a method of nesting a second virtual machine (VM) on a first VM running on a physical machine is provided. The method comprises receiving a first instruction from the physical machine, wherein the first instruction originates from the first VM, wherein a first control structure is associated with the first VM, and wherein a second control structure is associated with the second VM; creating a secondary control structure based on the second control structure associated with the second VM; providing the first instruction and the secondary control structure to the physical machine, wherein the physical machine executes the first instruction according to information included in the secondary control structure; and updating the secondary control structure to correspond to current state or execution environment of the physical machine.
摘要翻译: 根据一个实施例,提供了在运行在物理机上的第一VM上嵌套第二虚拟机(VM)的方法。 所述方法包括从所述物理机接收第一指令,其中所述第一指令来自所述第一VM,其中第一控制结构与所述第一VM相关联,并且其中第二控制结构与所述第二VM关联; 基于与所述第二VM相关联的所述第二控制结构创建二级控制结构; 向所述物理机提供所述第一指令和所述辅助控制结构,其中所述物理机根据所述辅助控制结构中包含的信息执行所述第一指令; 以及更新所述辅助控制结构以对应于所述物理机器的当前状态或执行环境。
-
公开(公告)号:US08490090B2
公开(公告)日:2013-07-16
申请号:US13029136
申请日:2011-02-17
IPC分类号: G06F9/455
CPC分类号: G06F9/45558 , G06F2009/45566
摘要: A method of handling an event occurring in a nested virtualization computing environment is provided, wherein N hypervisors are executed nestedly, with a first hypervisor running at level zero (L0) directly over a host machine, and other hypervisors nestedly running at levels L1 to Ln, respectively. The method comprises trapping an event generated by software running at level Ln; determining a hypervisor x at level Lx designated for handling the trapped event; and wherein the hypervisor x emulates features needed for performing the trapped event for the software running at the level Ln.
摘要翻译: 提供了一种处理在嵌套虚拟化计算环境中发生的事件的方法,其中N个虚拟机管理程序被嵌套地执行,第一管理程序直接在主机上运行在零级(L0),并且其他管理程序在层级L1到Ln嵌套运行 , 分别。 该方法包括捕获在Ln级运行的软件产生的事件; 确定指定用于处理被捕获事件的级别Lx的虚拟机管理程序x; 并且其中管理程序x模拟为在级别Ln运行的软件执行被捕获的事件所需的特征。
-
公开(公告)号:US20120216187A1
公开(公告)日:2012-08-23
申请号:US13029136
申请日:2011-02-17
IPC分类号: G06F9/455
CPC分类号: G06F9/45558 , G06F2009/45566
摘要: A method of handling an event occurring in a nested virtualization computing environment is provided, wherein N hypervisors are executed nestedly, with a first hypervisor running at level zero (L0) directly over a host machine, and other hypervisors nestedly running at levels L1 to Ln, respectively. The method comprises trapping an event generated by software running at level Ln; determining a hypervisor x at level Lx designated for handling the trapped event; and wherein the hypervisor x emulates features needed for performing the trapped event for the software running at the level Ln.
摘要翻译: 提供了一种处理在嵌套虚拟化计算环境中发生的事件的方法,其中N个虚拟机管理程序被嵌套地执行,第一管理程序直接在主机上运行在零级(L0),并且其他管理程序在层级L1到Ln嵌套运行 , 分别。 该方法包括捕获在Ln级运行的软件产生的事件; 确定指定用于处理被捕获事件的级别Lx的虚拟机管理程序x; 并且其中管理程序x模拟为在级别Ln运行的软件执行被捕获事件所需的特征。
-
9.
公开(公告)号:US20100242108A1
公开(公告)日:2010-09-23
申请号:US12792766
申请日:2010-06-03
申请人: Michael Backes , Shmuel Ben-Yehuda , Jan Leonhard Camenisch , Ton Engbersen , Zorik Machulsky , Julian Satran , Leah Shalev , Ilan Shimony , Thomas Basil Smith, III , Michael Waidner
发明人: Michael Backes , Shmuel Ben-Yehuda , Jan Leonhard Camenisch , Ton Engbersen , Zorik Machulsky , Julian Satran , Leah Shalev , Ilan Shimony , Thomas Basil Smith, III , Michael Waidner
CPC分类号: G06F12/1433 , G06F12/1441 , G06F12/1466
摘要: A computer-implemented system and method for protecting a memory are provided. The system includes a memory section with privileged and non-privileged sections, a host gateway (HG) to generate a capability credential, a device controller (DC) to append the credential to data transmitted to the memory, and at least one IO device enabled to do direct memory access (DMA) transactions with the memory.
摘要翻译: 提供了一种用于保护存储器的计算机实现的系统和方法。 该系统包括具有特权和非特权部分的存储器部分,用于生成能力证书的主机网关(HG),将证书附加到传输到存储器的数据的设备控制器(DC),以及启用的至少一个IO设备 与内存进行直接内存访问(DMA)事务。
-
公开(公告)号:US08949569B2
公开(公告)日:2015-02-03
申请号:US12111968
申请日:2008-04-30
申请人: Alan Frederic Benner , Shmuel Ben-Yehuda , Zorik Machulsky , Julian Satran , Leah Shalev , Ilan Shimony , Thomas Basil Smith, III
发明人: Alan Frederic Benner , Shmuel Ben-Yehuda , Zorik Machulsky , Julian Satran , Leah Shalev , Ilan Shimony , Thomas Basil Smith, III
CPC分类号: G06F9/3851 , G06F9/3824 , G06F12/0877 , G06F12/0891
摘要: A method for facilitating direct memory access in a computing system in response to a request to transfer data is provided. The method comprises selecting a thread for transferring the data, wherein the thread executes on a processing core within the computing system; providing the thread with the request, wherein the request comprises information for carrying out a data transfer; and transferring the data according to the request. The method may further comprise: coordinating the request with a memory management unit, such that virtual addresses may be used to transfer data; invalidating a cache line associated with the source address or flushing a cache line associated with the destination address, if requested. Multiple threads can be selected to transfer data based on their proximity to the destination address.
摘要翻译: 提供了一种用于响应于传送数据的请求而促进计算系统中的直接存储器访问的方法。 该方法包括选择用于传送数据的线程,其中线程在计算系统内的处理核上执行; 向所述线程提供所述请求,其中所述请求包括用于执行数据传送的信息; 并根据请求传送数据。 该方法还可以包括:将请求与存储器管理单元协调,使得可以使用虚拟地址来传送数据; 如果请求,则使与源地址相关联的高速缓存行无效或者刷新与目的地地址相关联的高速缓存行。 可以选择多个线程以根据其到目的地地址的接近度传输数据。
-
-
-
-
-
-
-
-
-