1. A method comprising: in response to a request to allocate a first memory page in a virtual machine, triggering an execution event, wherein the execution event is installed on a second memory page; in response to the triggering of the execution event, sending a message to a hypervisor that the first memory page has been allocated in the virtual machine; and in response to receipt of the message, determining whether the first memory page meets a predetermined criteria, and in response to a determination that the first memory page meets the predetermined criteria, appropriating control of the first memory page, wherein control of the first memory page is temporarily appropriated by an another virtual machine via the hypervisor, inserting program code in the first memory page, executing the program code, and in response to a determination that the program code has completed execution, relinquishing control of the first memory page.