Patent ID: 7802110

Claim:
A method for ensuring secure execution of an executable file in a system comprising a processor and a memory, wherein the processor supports different privilege levels and wherein only first program code executing at a first one of the privilege levels is permitted to map memory and to designate the mapped memory as read-only, writable, and executable, the method comprising the following steps performed by said first program code executing at said first one of the privilege levels of the processor: in response to a request from other program code executing at a different privilege level to allocate a portion of memory for loading an executable file that is separate from said first program code and said other program code, mapping a portion of memory for loading the executable file, the mapped portion of memory being accessible to said other program code; after the executable file has been loaded into the mapped portion of memory, designating the mapped portion of memory as read-only and verifying a signature associated with the executable file; and if the signature is verified, then thereafter designating the mapped portion of memory as executable, but not writable, and permitting the executable file to be executed at a privilege level other than the first one of the privilege levels, but if the signature is not verified, then preventing the executable file from being executed on the processor.