发明名称 GENERATING AND APPLYING PATCHES TO COMPUTER PROGRAM CODE CONCURRENTLY WITH ITS EXECUTION
摘要 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 include allocating a module thread local storage (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 include 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.
申请公布号 US2016274899(A1) 申请公布日期 2016.09.22
申请号 US201615169433 申请日期 2016.05.31
申请人 INTERNATIONAL BUSINESS MACHINES CORPORATION 发明人 MENCIAS ANGEL NUNEZ;SCHIRMER ALBERT;AXNIX CHRISTINE;USENBINZ STEFAN
分类号 G06F9/445 主分类号 G06F9/445
代理机构 代理人
主权项 1. A method for concurrently loading a plurality of new modules while code of a plurality of modules of an original computer program is loaded and executed on a computer system, the method comprising: allocating a module thread local storage (TLS) block for each thread within an initial computer program, wherein the module TLS blocks are large enough to hold all module thread variables that are loaded or to be loaded, and wherein the module TLS blocks are allocated consecutively, with the same layout for each thread; providing constant offsets between module TLS block pointers corresponding to the module TLS blocks and the module thread variables for all of the threads; and reserving spare areas between the module TLS blocks for adding new module thread variables.
地址 ARMONK NY US