DIRECT MEMORY ACCESS-LIKE DATA TRANSFER BETWEEN GUEST OPERATING SYSTEMS
    1.
    发明申请
    DIRECT MEMORY ACCESS-LIKE DATA TRANSFER BETWEEN GUEST OPERATING SYSTEMS 有权
    用户操作系统之间的直接存储器访问数据传输

    公开(公告)号:US20120271981A1

    公开(公告)日:2012-10-25

    申请号:US13442904

    申请日:2012-04-10

    IPC分类号: G06F12/00

    摘要: A computer system with a memory containing a first guest operating system, including a first portion of the memory and a second guest operating system, including a second portion of the memory. The memory further contains an address exchange module for exchanging memory address handles, a data mover for moving data between the first and second portions of the memory, and an emulated input output memory management unit for controlling the data mover. Instructions in the memory cause the processor to: register accessible memory with the emulated input output memory management unit, write address handles to the address exchange module, read the address handles from the address exchange module, and move the data into the second portion of the memory.

    摘要翻译: 一种具有包含第一客户机操作系统的存储器的计算机系统,包括存储器的第一部分和包括存储器的第二部分的第二客户机操作系统。 存储器还包括用于交换存储器地址句柄的地址交换模块,用于在存储器的第一和第二部分之间移动数据的数据移动器,以及用于控制数据移动器的仿真输入输出存储器管理单元。 存储器中的指令会导致处理器:使用仿真的输入输出存储器管理单元注册可访问存储器,将地址处理写入地址交换模块,从地址交换模块读取地址句柄,并将数据移入第二部分 记忆。

    Method and Data Processing System for Generating and Applying Patches to a Computer Program Code Concurrently with its Execution
    2.
    发明申请
    Method and Data Processing System for Generating and Applying Patches to a Computer Program Code Concurrently with its Execution 有权
    用于生成和应用补丁到计算机程序代码的方法和数据处理系统与其执行并行

    公开(公告)号:US20090187725A1

    公开(公告)日:2009-07-23

    申请号:US12357067

    申请日:2009-01-21

    IPC分类号: G06F12/02

    摘要: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may comprise allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may comprise providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.

    摘要翻译: 公开了一种方法和数据处理系统,用于同时加载多个新模块,同时在计算机系统上加载和执行原始(即当前运行的)计算机程序的多个模块的代码。 该方法可以包括为初始计算机程序中的每个线程分配模块TLS块,其中所分配的模块TLS块足够​​大以容纳加载或要加载的所有模块线程变量。 该方法还可以包括在对应于模块TLS块的模块TLS块指针和用于所有线程的模块线程变量之间提供恒定的偏移。 所公开的方法可以用于通过替换多个原始计算机程序模块中的一个或多个来将模块添加到原始计算机程序和/或应用并发补丁。

    Generating and applying patches to a computer program code concurrently with its execution
    3.
    发明授权
    Generating and applying patches to a computer program code concurrently with its execution 有权
    生成并应用修补程序与计算机程序代码并发执行

    公开(公告)号:US08839225B2

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

    申请号:US12357067

    申请日:2009-01-21

    IPC分类号: G06F9/44 G06F9/445

    摘要: A method and data processing system are disclosed for concurrently loading a plurality of new modules while code of a plurality of modules of an original (i.e., currently running) computer program is loaded and executed on a computer system. The method may comprise allocating a module TLS block for each thread within an initial computer program, wherein the allocated module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded. The method further may comprise providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads. The disclosed method may be used to add modules to the original computer program and/or to apply a concurrent patch by replacing one or more of the plurality of original computer program modules.

    摘要翻译: 公开了一种方法和数据处理系统,用于同时加载多个新模块,同时在计算机系统上加载和执行原始(即当前运行的)计算机程序的多个模块的代码。 该方法可以包括为初始计算机程序中的每个线程分配模块TLS块,其中所分配的模块TLS块足够​​大以容纳加载或要加载的所有模块线程变量。 该方法还可以包括在对应于模块TLS块的模块TLS块指针和用于所有线程的模块线程变量之间提供恒定的偏移。 所公开的方法可以用于通过替换多个原始计算机程序模块中的一个或多个来将模块添加到原始计算机程序和/或应用并发补丁。

    Direct memory access-like data transfer between guest operating systems
    4.
    发明授权
    Direct memory access-like data transfer between guest operating systems 有权
    在客户机操作系统之间进行直接内存访问的数据传输

    公开(公告)号:US08799592B2

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

    申请号:US13442904

    申请日:2012-04-10

    摘要: A computer system with a memory containing a first guest operating system, including a first portion of the memory and a second guest operating system, including a second portion of the memory. The memory further contains an address exchange module for exchanging memory address handles, a data mover for moving data between the first and second portions of the memory, and an emulated input output memory management unit for controlling the data mover. Instructions in the memory cause the processor to: register accessible memory with the emulated input output memory management unit, write address handles to the address exchange module, read the address handles from the address exchange module, and move the data into the second portion of the memory.

    摘要翻译: 一种具有包含第一客户机操作系统的存储器的计算机系统,包括存储器的第一部分和包括存储器的第二部分的第二客户机操作系统。 存储器还包括用于交换存储器地址句柄的地址交换模块,用于在存储器的第一和第二部分之间移动数据的数据移动器,以及用于控制数据移动器的仿真输入输出存储器管理单元。 存储器中的指令会导致处理器:使用仿真的输入输出存储器管理单元注册可访问存储器,将地址处理写入地址交换模块,从地址交换模块读取地址句柄,并将数据移入第二部分 记忆。