A method, program, and system for modifying computer program instructions
during execution of those instructions are provided. The invention
comprises writing a first instruction into a memory location, wherein the
instruction is a patch class instruction. This first instruction is then
fetched from the memory location and executed. Concurrent with execution
of the first instruction, the memory location is overwritten with a second
instruction, which is also a patch class instruction. Because the first
and second instructions are patch class instructions, if a program is
executing from the memory location, or returns to execute from that
location, it will fetch and execute either the first instruction or the
second instruction. In one embodiment, reconciling the processor's
execution pipeline with the memory location will ensure that the second
instruction is fetched and executed if the program returns to execute from
that location.
Um método, um programa, e um sistema para instruções de programa modificando do computador durante a execução daquelas instruções são fornecidos. A invenção compreende a escrita de uma primeira instrução em uma posição de memória, wherein a instrução é uma instrução da classe do remendo. Esta primeira instrução então é buscada da posição de memória e executada. O concurrent com execução da primeira instrução, a posição de memória overwritten com uma segunda instrução, que seja também uma instrução da classe do remendo. Porque as primeiras e segundas instruções são instruções da classe do remendo, se um programa estiver executando da posição de memória, ou retornar para executar dessa posição, buscará e executará a primeira instrução ou a segunda instrução. Em uma incorporação, reconciling o encanamento da execução do processador com a posição de memória assegurar-se-á de que a segunda instrução esteja buscada e executada se o programa retornar para executar dessa posição.