发明名称 METHOD FOR ALTERING EXECUTION OF A PROGRAM, DEBUGGER, AND COMPUTER-READABLE MEDIUM
摘要 A method for altering execution of a program on a computer. The program resides in a memory unit that has a logical address space assigned thereto. The method comprises: operating the computer to start executing the program; operating the computer to suspend execution of the program; selecting a patch insertion address within a logical address range of the program, saving the original code residing at the patch insertion address; generating a patch routine; writing a jump instruction to the patch insertion address, thus overwriting said original code, wherein the jump instruction is arranged to instruct the computer to jump to a start address of the patch routine; and operating the computer to resume execution of the program. The patch routine is arranged to prompt the computer to: save a current context of the program; execute a user code; restore the saved context of the program; and execute a surrogate code.
申请公布号 US2016062875(A1) 申请公布日期 2016.03.03
申请号 US201414528451 申请日期 2014.10.30
申请人 NISTOR MIHAIL-MARIAN;MADAN TEODOR;MILOIU DRAGOS 发明人 NISTOR MIHAIL-MARIAN;MADAN TEODOR;MILOIU DRAGOS
分类号 G06F11/36;G06F9/445 主分类号 G06F11/36
代理机构 代理人
主权项 1. A method for altering execution of a program on a computer, wherein the program resides in a memory unit that has a logical address space assigned to it, and wherein the method comprises: operating the computer to start executing the program; operating the computer to suspend execution of the program; selecting a patch insertion address within a logical address range of the program, saving original code residing at the patch insertion address; generating a patch routine; writing a jump instruction to the patch insertion address, thus overwriting said original code, wherein the jump instruction is arranged to instruct the computer to jump to a start address of the patch routine; and operating the computer to resume execution of the program; wherein the patch routine is arranged to prompt the computer to: save a current context of the program; execute a user code; restore the saved context of the program; and execute a surrogate code which is equivalent to said original code.
地址 BUCHAREST RO