Patent ID: 7886287

Claim:
A method for updating a running process, comprising: allocating in executable program code text first memory space operable to receive new program instructions comprising at least a first updated function; allocating in executable program code text second memory space operable to receive address information related to said new program instructions; running said executable program code; stopping execution of said executable program code; injecting a jump instruction and an address of an update table at a location in a memory containing a first instruction of a first replaced function, wherein said address of said update table contains an address of a first instruction of said first updated function; resuming execution of said executable program code, wherein said first updated function is called in place of said first replaced function, and wherein said executable code is updated in said memory; determining a first distance between a position within said executable program code text at which execution of said executable program code is stopped and an address of a first function, wherein said first function is a function to be updated; and in response to said first distance exceeding a predetermined amount, populating an update table stored in memory with an address of the first updated function.