Compressed program recording
    1.
    发明授权
    Compressed program recording 有权
    压缩程序录制

    公开(公告)号:US07620938B2

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

    申请号:US11264487

    申请日:2005-10-31

    IPC分类号: G06F9/45

    CPC分类号: G06F11/3636

    摘要: Program execution can be monitored and recorded for later playback. Certain state changes that can be predicted via a virtual processor during playback need not be recorded, so a compressed recording can be stored. To facilitate random access with respect to time during playback, key frames can be stored within the compressed recording. An index mechanism can associate key frames with particular memory addresses. Additionally, a snapshot of values for memory addresses can be used to further facilitate determining the value of a memory address without having to simulate execution. Multiprocessor executions can be supported, and playback can be done on a machine type different from that on which recording took place.

    摘要翻译: 程序执行可以被监视和记录以备以后播放。 在播放期间可以通过虚拟处理器预测的某些状态变化不需要被记录,因此可以存储压缩记录。 为了便于在回放期间相对于时间的随机访问,关键帧可以存储在压缩记录中。 索引机制可以将关键帧与特定的存储器地址相关联。 此外,可以使用存储器地址的值的快照来进一步便于确定存储器地址的值而不必模拟执行。 可以支持多处理器执行,并且可以在不同于录音发生的机器类型上进行播放。

    Compressed program recording
    2.
    发明申请
    Compressed program recording 有权
    压缩程序录制

    公开(公告)号:US20070168989A1

    公开(公告)日:2007-07-19

    申请号:US11264487

    申请日:2005-10-31

    IPC分类号: G06F9/44

    CPC分类号: G06F11/3636

    摘要: Program execution can be monitored and recorded for later playback. Certain state changes that can be predicted via a virtual processor during playback need not be recorded, so a compressed recording can be stored. To facilitate random access with respect to time during playback, key frames can be stored within the compressed recording. An index mechanism can associate key frames with particular memory addresses. Additionally, a snapshot of values for memory addresses can be used to further facilitate determining the value of a memory address without having to simulate execution. Multiprocessor executions can be supported, and playback can be done on a machine type different from that on which recording took place.

    摘要翻译: 程序执行可以被监视和记录以备以后播放。 在播放期间可以通过虚拟处理器预测的某些状态变化不需要被记录,因此可以存储压缩记录。 为了便于在回放期间相对于时间的随机访问,关键帧可以存储在压缩记录中。 索引机制可以将关键帧与特定的存储器地址相关联。 此外,可以使用存储器地址的值的快照来进一步便于确定存储器地址的值而不必模拟执行。 可以支持多处理器执行,并且可以在不同于录音发生的机器类型上进行播放。

    Leveraging transactional memory hardware to accelerate virtualization and emulation
    3.
    发明授权
    Leveraging transactional memory hardware to accelerate virtualization and emulation 有权
    利用事务性内存硬件来加速虚拟化和仿真

    公开(公告)号:US08176253B2

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

    申请号:US11823236

    申请日:2007-06-27

    IPC分类号: G06F12/00 G06F9/455 G06F9/44

    摘要: Various technologies and techniques are disclosed for using transactional memory hardware to accelerate virtualization or emulation. A central processing unit is provided with the transactional memory hardware. Code backpatching can be facilitated by providing transactional memory hardware that supports a facility to maintain private memory state and an atomic commit feature. Changes made to certain code are stored in the private state facility. Backpatching changes are enacted by attempting to commit all the changes to memory at once using the atomic commit feature. An efficient call return stack can be provided by using transactional memory hardware. A call return cache stored in the private state facility captures a host address to return to after execution of a guest function completes. A direct-lookup hardware-based hash table is used for the call return cache.

    摘要翻译: 公开了用于使用事务性存储器硬件来加速虚拟化或仿真的各种技术和技术。 中央处理单元设置有事务存储器硬件。 可以通过提供事务性存储器硬件来支持代码反向补丁,该硬件支持维护私有内存状态和原子提交功能的功能。 对某些代码所做的更改存储在私人状态设施中。 通过尝试使用原子提交功能一次性向内存提交所有更改来实现后期更改。 可以通过使用事务性存储器硬件来提供高效的回叫栈。 存储在私有状态设施中的调用返回缓存捕获主机地址以在执行客户机功能完成后返回。 直接查找基于硬件的哈希表用于调用返回缓存。

    SIGNED/UNSIGNED INTEGER GUEST COMPARE INSTRUCTIONS USING UNSIGNED HOST COMPARE INSTRUCTIONS FOR PRECISE ARCHITECTURE EMULATION
    4.
    发明申请
    SIGNED/UNSIGNED INTEGER GUEST COMPARE INSTRUCTIONS USING UNSIGNED HOST COMPARE INSTRUCTIONS FOR PRECISE ARCHITECTURE EMULATION 有权
    签署/不符合整数的用户比较使用不符合标准的对比指令进行精确建筑仿真的比较说明

    公开(公告)号:US20090030668A1

    公开(公告)日:2009-01-29

    申请号:US11828364

    申请日:2007-07-26

    IPC分类号: G06F9/455 G06F9/30 G06F9/305

    摘要: Architecture for efficient translation and processing of PowerPC guest instructions on an x86 host machine. In an x86-based architecture, signed integer values are projected into the unsigned integer value space for processing by the host using the negation of the left-most (sign) bit. Compare operations are performed in the unsigned space and the compare results are written into the host flags register. Once the compare results are written into the host flags register, the flag values can be read out and used in a table lookup to retrieve the corresponding values for the guest register. The guest flag values are then passed into the guest flags register for processing by the guest application.

    摘要翻译: 用于在x86主机上高效翻译和处理PowerPC guest虚拟机指令的体系结构。 在基于x86的体系结构中,有符号整数值被投影到无符号整数值空间中,由主机使用最左(符号)位的否定进行处理。 比较操作在无符号空间中执行,比较结果将写入主机标志寄存器。 一旦将比较结果写入主机标志寄存器,可以读取标志值并在表查找中使用该值,以检索访客寄存器的相应值。 来宾标志值然后被传递到客人标志寄存器以供客户应用程序处理。

    Leveraging transactional memory hardware to accelerate virtualization and emulation
    5.
    发明申请
    Leveraging transactional memory hardware to accelerate virtualization and emulation 有权
    利用事务性内存硬件来加速虚拟化和仿真

    公开(公告)号:US20090006751A1

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

    申请号:US11823236

    申请日:2007-06-27

    IPC分类号: G06F12/00

    摘要: Various technologies and techniques are disclosed for using transactional memory hardware to accelerate virtualization or emulation. A central processing unit is provided with the transactional memory hardware. Code backpatching can be facilitated by providing transactional memory hardware that supports a facility to maintain private memory state and an atomic commit feature. Changes made to certain code are stored in the private state facility. Backpatching changes are enacted by attempting to commit all the changes to memory at once using the atomic commit feature. An efficient call return stack can be provided by using transactional memory hardware. A call return cache stored in the private state facility captures a host address to return to after execution of a guest function completes. A direct-lookup hardware-based hash table is used for the call return cache.

    摘要翻译: 公开了用于使用事务性存储器硬件来加速虚拟化或仿真的各种技术和技术。 中央处理单元设置有事务存储器硬件。 可以通过提供事务性存储器硬件来支持代码反向补丁,该硬件支持维护私有内存状态和原子提交功能的功能。 对某些代码所做的更改存储在私人状态设施中。 通过尝试使用原子提交功能一次性向内存提交所有更改来实现后期更改。 可以通过使用事务性存储器硬件来提供高效的回叫栈。 存储在私有状态设施中的调用返回缓存捕获主机地址以在执行客户机功能完成后返回。 直接查找基于硬件的哈希表用于调用返回缓存。

    Leveraging transactional memory hardware to accelerate virtualization and emulation
    6.
    发明申请
    Leveraging transactional memory hardware to accelerate virtualization and emulation 有权
    利用事务性内存硬件来加速虚拟化和仿真

    公开(公告)号:US20090006750A1

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

    申请号:US11823224

    申请日:2007-06-27

    IPC分类号: G06F12/00

    摘要: Various technologies and techniques are disclosed for using transactional memory hardware to accelerate virtualization or emulation. State isolation can be facilitated by providing isolated private state on transactional memory hardware and storing the stack of a host that is performing an emulation in the isolated private state. Memory accesses performed by a central processing unit can be monitored by software to detect that a guest being emulated has made a self modification to its own code sequence. Transactional memory hardware can be used to facilitate dispatch table updates in multithreaded environments by taking advantage of the atomic commit feature. An emulator is provided that uses a dispatch table stored in main memory to convert a guest program counter into a host program counter. The dispatch table is accessed to see if the dispatch table contains a particular host program counter for a particular guest program counter.

    摘要翻译: 公开了用于使用事务性存储器硬件来加速虚拟化或仿真的各种技术和技术。 通过在事务性存储器硬件上提供隔离的私有状态并将执行仿真的主机的堆栈存储在隔离的私有状态中,可以促进状态隔离。 由中央处理单元执行的存储器访问可以被软件监视,以检测被仿真的客户对其自己的代码序列进行了自我修改。 事务存储器硬件可以用于通过利用原子提交功能来促进多线程环境中的调度表更新。 提供了一个仿真器,它使用存储在主存储器中的调度表将客户机程序计数器转换为主机程序计数器。 访问调度表以查看分派表是否包含特定客户机程序计数器的特定主机程序计数器。

    Leveraging transactional memory hardware to accelerate virtualization emulation
    8.
    发明申请
    Leveraging transactional memory hardware to accelerate virtualization emulation 有权
    利用事务性内存硬件来加速虚拟化仿真

    公开(公告)号:US20090007107A1

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

    申请号:US11823212

    申请日:2007-06-27

    IPC分类号: G06F9/455 G06F17/50

    CPC分类号: G06F9/45533

    摘要: Various technologies and techniques are disclosed for using transactional memory hardware to accelerate virtualization or emulation. One or more central processing units are provided with transactional memory hardware that is operable to accelerate virtualization. The transactional memory hardware has a facility to maintain private state, a facility to render memory accesses from other central processing units visible to software, and support for atomic commit of the private state. The transactional memory hardware can be used, for example, to facilitate emulation of precise exception semantics. The private state is operable to enable an emulated state to remain inconsistent with an architectural state and only synchronized on certain boundaries. An optimized sequence of instructions is executed using chunk-accurate simulation to try and achieve a same end effect.

    摘要翻译: 公开了用于使用事务性存储器硬件来加速虚拟化或仿真的各种技术和技术。 一个或多个中央处理单元设置有可操作以加速虚拟化的事务存储器硬件。 事务性存储器硬件具有维护私有状态的功能,用于使得对软件可见的其它中央处理单元进行存储器访问的设施,以及对私有状态的原子提交的支持。 例如,可以使用事务性存储器硬件来促进精确异常语义的仿真。 私有状态可操作以使仿真状态与架构状态保持不一致,并且仅在某些边界上同步。 使用块精确模拟来执行优化的指令序列,以尝试并实现相同的最终效果。

    Leveraging transactional memory hardware to accelerate virtualization emulation
    10.
    发明授权
    Leveraging transactional memory hardware to accelerate virtualization emulation 有权
    利用事务性内存硬件来加速虚拟化仿真

    公开(公告)号:US08266387B2

    公开(公告)日:2012-09-11

    申请号:US11823212

    申请日:2007-06-27

    IPC分类号: G06F12/00 G06F9/445

    CPC分类号: G06F9/45533

    摘要: Various technologies and techniques are disclosed for using transactional memory hardware to accelerate virtualization or emulation. One or more central processing units are provided with transactional memory hardware that is operable to accelerate virtualization. The transactional memory hardware has a facility to maintain private state, a facility to render memory accesses from other central processing units visible to software, and support for atomic commit of the private state. The transactional memory hardware can be used, for example, to facilitate emulation of precise exception semantics. The private state is operable to enable an emulated state to remain inconsistent with an architectural state and only synchronized on certain boundaries. An optimized sequence of instructions is executed using chunk-accurate simulation to try and achieve a same end effect.

    摘要翻译: 公开了用于使用事务性存储器硬件来加速虚拟化或仿真的各种技术和技术。 一个或多个中央处理单元设置有可操作以加速虚拟化的事务存储器硬件。 事务性存储器硬件具有维护私有状态的功能,用于使得对软件可见的其它中央处理单元进行存储器访问的设施,以及对私有状态的原子提交的支持。 例如,可以使用事务性存储器硬件来促进精确异常语义的仿真。 私有状态可操作以使仿真状态与架构状态保持不一致,并且仅在某些边界上同步。 使用块精确模拟来执行优化的指令序列,以尝试并实现相同的最终效果。