1. A computer-implemented method comprising: in a computer executing a supervisor program: the supervisor program establishing a plurality of different memory access permissions comprising any combination of read, write, and execute permissions for one or more different regions of memory of a first domain; receiving a request from a process to execute a particular memory page of the regions of memory, wherein the particular memory page comprises a memory access permission set to read-writeable or read-only; throwing an execute fault for the particular memory page; performing one or more responsive actions to restore execution access or content of the particular memory page; after performing the one or more responsive actions, setting the memory access permission to execute only; permitting the process to execute the particular memory page.