Patching of in-use functions on a running computer system
    1.
    发明授权
    Patching of in-use functions on a running computer system 有权
    在正在运行的计算机系统上修补正在使用的功能

    公开(公告)号:US07784044B2

    公开(公告)日:2010-08-24

    申请号:US10307902

    申请日:2002-12-02

    IPC分类号: G06F9/45

    CPC分类号: G06F8/658 G06F8/656

    摘要: A system and method for automatically updating software components on a running computer system without requiring any interruption of service. A software module is hotpatched by loading a patch into memory and modifying an instruction in the original module to jump to the patch. A coldpatching technique places a coldpatch version of the module on disk for subsequent loading by processes, after hotpatching occurred. The coldpatch has the entry points to its functions at the same relative locations within the module as the hotpatch, which facilitates subsequent hotpatching. A hotpatch and coldpatch are automatically generated by deriving differences between changed and original binary files, and establishing the point to insert the jump. Validation is performed to ensure that the hotpatch is applied to the correct version, and that the coldpatch is replacing the correct version. Version management is also provided to control the number of patches via support rules.

    摘要翻译: 一种用于在运行中的计算机系统上自动更新软件组件而不需要任何中断服务的系统和方法。 通过将补丁加载到内存中并修改原始模块中的指令以跳转到修补程序来对软件模块进行热补丁。 冷发技术将冷却版本的模块放在磁盘上,以便在热补丁发生后随后加载进程。 冷补物具有在模块内与热补丁相同的相对位置的入口点,这有助于随后的热补丁。 通过导出更改和原始二进制文件之间的差异,并建立点来插入跳转,自动生成热补丁和冷补。 执行验证以确保热补丁应用于正确的版本,并且冷补正在替换正确的版本。 还提供版本管理以通过支持规则控制补丁的数量。