Patent ID: 8838996

Claim:
A non-transitory computer readable medium storing a program executed by a computer, the program comprising: a designation receiving unit that receives a designation of a protection target section which is a protection target for the program; a movement arranging unit that moves and arranges the protection target section of the program to a second arrangement location which is different from a first arrangement location which corresponds to an arrangement location of the protection target section of the program; and a changing unit that changes the protection target section of the program to a substitution code, the substitution code including the protection target section in the second arrangement location, the changing unit converting code of the protection target section into an individual code relationship for a virtual machine, wherein the substitution code causes a native environment to execute: a reconstruction unit that reconstructs context of the native environment at a time point in which the program is executed until immediately before the program proceeds to the protection target section as virtual context for the virtual machine in a memory of the native environment, and a virtual machine execution unit that executes the virtual machine, and delivers information indicative of an address in the memory of the reconstructed virtual context using the reconstruction unit to the virtual machine, so that the virtual machine executes the protection target section using the virtual context.