Non-unified code and data decoding to provide execute-only memory
AssigneeIntel Corporation
InventorsVedvyas Shanbhogue, Ravi L. Sahita
Life of this patent
Estimating the term…
Abstract
In one embodiment, one or more regions of memory are designated as execute-only memory, wherein execute-only memory can only be accessed to retrieve code for execution, and wherein a designation of execute-only memory cannot be modified by system software executing on a processor. A data read request is detected within the execute-only memory, and the data read request is aborted. In addition, a code read request is detected within the execute-only memory, and the code read request is allowed. In some embodiments, a write request may also be detected within the execute-only memory, and the write request is aborted.
Claims20
At least one machine accessible storage medium having instructions stored thereon, the instructions when executed on a machine, cause the machine to:
- designate one or more regions of memory as execute-only memory, wherein execute-only memory can only be accessed to retrieve code for execution, and wherein a designation of execute-only memory cannot be modified by system software executing on a processor;
- detect a data read request within the execute-only memory;
- abort the data read request;
- detect a code read request within the execute-only memory;
- and
- allow the code read request.
An apparatus, comprising:
- a processor;
- a memory;
- a security agent configured to:
- designate one or more regions of the memory as execute-only memory, wherein execute-only memory can only be accessed to retrieve code for execution, and wherein a designation of execute-only memory cannot be modified by system software executing on a processor;
- detect a data read request within the execute-only memory;
- abort the data read request;
- detect a code read request within the execute-only memory;
- and
- allow the code read request.
A method, comprising:
- designating one or more regions of memory as execute-only memory, wherein execute-only memory can only be accessed to retrieve code for execution, and wherein a designation of execute-only memory cannot be modified by system software executing on a processor;
- detecting a data read request within the execute-only memory;
- aborting the data read request;
- detecting a code read request within the execute-only memory;
- and
- allowing the code read request.
Dependencies are inferred from the claim text.