Controlling Access to Pages in a Memory in a Computing Device

    公开(公告)号:US20180032443A1

    公开(公告)日:2018-02-01

    申请号:US15224302

    申请日:2016-07-29

    Abstract: The described embodiments perform a method for handling memory accesses by virtual machines in a computing device. The described embodiments include a reverse map table (RMT) and a separate guest accessed pages table (GAPT) for each virtual machine. The RMT has a plurality of entries, each entry including information for identifying a virtual machine that is permitted to access an associated page of data in a memory. Each GAPT has a record of pages being accessed by a corresponding virtual machine. During operation, a table walker receives a request from a given virtual machine to translate a guest physical address to a system physical address. The table walker checks at least one of the RMT and a corresponding GAPT to determine whether the given virtual machine has access to a corresponding page. If not, the table walker terminates the translating. Otherwise, the table walker completes the translating.

    Speculative tablewalk promotion
    24.
    发明授权
    Speculative tablewalk promotion 有权
    投机游泳推广

    公开(公告)号:US09189417B2

    公开(公告)日:2015-11-17

    申请号:US13672188

    申请日:2012-11-08

    CPC classification number: G06F12/1027 G06F12/10 G06F12/1009

    Abstract: A method includes performing a speculative tablewalk. The method includes performing a tablewalk to determine an address translation for a speculative operation and determining whether the speculative operation has been upgraded to a non-speculative operation concurrently with performing the tablewalk. An apparatus is provided that includes a load-store unit to maintain execution operations. The load-store unit includes a tablewalker to perform a tablewalk and includes an input indicative of the operation being speculative or non-speculative as well as a state machine to determine actions performed during the tablewalk based on the input. The apparatus also includes a translation look-aside buffer. Computer readable storage devices for performing the methods and adapting a fabrication facility to manufacture the apparatus are provided.

    Abstract translation: 一种方法包括执行推测性行进。 该方法包括执行行进台以确定用于投机操作的地址转换,并且确定投机操作是否已经与执行台式机同时升级到非投机操作。 提供一种装置,其包括用于维持执行操作的加载存储单元。 加载存储单元包括执行台面的行进者,并且包括指示操作是投机或不推测的输入以及基于输入来确定在行进过程中执行的动作的状态机。 该装置还包括翻译后备缓冲器。 提供了用于执行方法和适配制造设备以制造该装置的计算机可读存储装置。

    Leveraging a peripheral device to execute a machine instruction
    25.
    发明授权
    Leveraging a peripheral device to execute a machine instruction 有权
    利用外围设备执行机器指令

    公开(公告)号:US08997210B1

    公开(公告)日:2015-03-31

    申请号:US14052182

    申请日:2013-10-11

    CPC classification number: G06F9/4411 G06F9/30145 G06F9/3881

    Abstract: A method includes executing microcode in a processing unit of a processor to implement a machine instruction, wherein the microcode is to manipulate the processing unit to access a peripheral device on a public communication bus at a private address not visible to other devices on the public communication bus and not specified in the machine instruction. A processor includes a public communication bus, a peripheral device coupled to the public communication bus, and a processing unit. The processing unit is to execute microcode to implement a machine instruction. The microcode is to manipulate the processing unit to access a peripheral device on a public communication bus at a private address not visible to other devices on the public communication bus and not specified in the machine instruction.

    Abstract translation: 一种方法包括在处理器的处理单元中执行微代码以实现机器指令,其中微代码是操纵处理单元以公共通信总线上的外部设备访问公用通信上的其他设备不可见的专用地址 总线,并未在机器指令中指定。 处理器包括公共通信总线,耦合到公共通信总线的外围设备和处理单元。 处理单元是执行微代码来实现机器指令。 微代码是操纵处理单元以公用通信总线上的公共通信总线上的外部设备访问公共通信总线上的其他设备不可见的私有地址,并且未在机器指令中指定。

    PAGE CROSS MISALIGN BUFFER
    26.
    发明申请
    PAGE CROSS MISALIGN BUFFER 审中-公开
    页面交叉缺口缓冲区

    公开(公告)号:US20140310500A1

    公开(公告)日:2014-10-16

    申请号:US13861267

    申请日:2013-04-11

    CPC classification number: G06F12/1009 G06F9/30043 G06F9/3824

    Abstract: The present application describes embodiments of a method and apparatus including a page cross misalign buffer. Some embodiments of the apparatus include a store queue for a plurality of entries configured to store information associated with store instructions. A respective entry in the store queue can store a first portion of information associated with a page crossing store instruction. Some embodiments of the apparatus also include one or more buffers configured to store a second portion of information associated with the page crossing store instruction.

    Abstract translation: 本申请描述了包括页面交叉对准缓冲器的方法和装置的实施例。 该装置的一些实施例包括用于多个条目的存储队列,其被配置为存储与存储指令相关联的信息。 存储队列中的相应条目可以存储与页面交叉存储指令相关联的信息的第一部分。 该装置的一些实施例还包括配置成存储与页面交叉存储指令相关联的信息的第二部分的一个或多个缓冲器。

    STORE REPLAY POLICY
    27.
    发明申请
    STORE REPLAY POLICY 有权
    商店重置政策

    公开(公告)号:US20140129776A1

    公开(公告)日:2014-05-08

    申请号:US13667095

    申请日:2012-11-02

    Abstract: A method is provided for executing a cacheable store. The method includes determining whether to replay a store instruction to re-acquire one or more cache lines based upon a state of the cache line(s) and an execution phase of the store instruction. The store instruction is replayed in response to determining to replay the store instruction. An apparatus is provided that includes a store queue (SQ) configurable to determine whether to replay a store instruction to re-acquire one or more cache lines based upon a state of the cache line(s) and an execution phase of the store instruction. Computer readable storage devices for adapting a fabrication facility to manufacture the apparatus are provided.

    Abstract translation: 提供了一种用于执行可缓存存储的方法。 该方法包括基于高速缓存行的状态和存储指令的执行阶段确定是否重放存储指令以重新获取一个或多个高速缓存行。 响应于确定重播商店指令而重放存储指令。 提供了一种装置,其包括可配置以基于高速缓存行的状态和存储指令的执行阶段来确定是否重播存储指令以重新获取一个或多个高速缓存行的存储队列(SQ)。 提供了用于使制造设备适应制造装置的计算机可读存储装置。

    Root-Trusted Guest Memory Page Management

    公开(公告)号:US20250130958A1

    公开(公告)日:2025-04-24

    申请号:US18926087

    申请日:2024-10-24

    Abstract: Root-trusted guest memory page management is described. A root-trusted guest is loaded by a hardware platform and authenticated. The root-trusted guest is configured to manage memory operations of different guests via special privileges that permit the root-trusted guest to execute memory operations using a guest's private memory page. To do so, a guest page table includes a novel “T-bit” in each entry, which indicates whether the root-trusted guest or a different guest owns the associated memory page. Each entry in the guest page table for the root-trusted guest additionally includes a “C-bit” that indicates whether the corresponding memory page is a protected page. Combined C-bit and T-bit values for a page table entry dictate whether operations performed as part of handling a guest's memory request are offloaded from the hardware platform to the root-trusted guest.

    USING RETURN ADDRESS PREDICTOR TO SPEED UP CONTROL STACK RETURN ADDRESS VERIFICATION

    公开(公告)号:US20200034144A1

    公开(公告)日:2020-01-30

    申请号:US16046949

    申请日:2018-07-26

    Abstract: Overhead associated with verifying function return addresses to protect against security exploits is reduced by taking advantage of branch prediction mechanisms for predicting return addresses. More specifically, returning from a function includes popping a return address from a data stack. Well-known security exploits overwrite the return address on the data stack to hijack control flow. In some processors, a separate data structure referred to as a control stack is used to verify the data stack. When a return instruction is executed, the processor issues an exception if the return addresses on the control stack and the data stack are not identical. This overhead can be avoided by taking advantage of the return address stack, which is a data structure used by the branch predictor to predict return addresses. In most situations, if this prediction is correct, the above check does not need to occur, thus reducing the associated overhead.

    Controlling access to pages in a memory in a computing device

    公开(公告)号:US10169244B2

    公开(公告)日:2019-01-01

    申请号:US15224302

    申请日:2016-07-29

    Abstract: The described embodiments perform a method for handling memory accesses by virtual machines in a computing device. The described embodiments include a reverse map table (RMT) and a separate guest accessed pages table (GAPT) for each virtual machine. The RMT has a plurality of entries, each entry including information for identifying a virtual machine that is permitted to access an associated page of data in a memory. Each GAPT has a record of pages being accessed by a corresponding virtual machine. During operation, a table walker receives a request from a given virtual machine to translate a guest physical address to a system physical address. The table walker checks at least one of the RMT and a corresponding GAPT to determine whether the given virtual machine has access to a corresponding page. If not, the table walker terminates the translating. Otherwise, the table walker completes the translating.

Patent Agency Ranking