Patent ID: 9176888
Filing Date: 2015-11-03
Classification: G06F

Abstract:
1. A method, in a data processing system, for accessing a memory location in a physical memory of the data processing system, comprising: receiving a request, from an application, to access a memory location specified by an effective address in an application address space; performing, at a user level of execution, a translation of the effective address to a real address table index (RATI) value corresponding to the effective address; performing, at a hardware level of execution, a lookup operation of the RATI value in a real address table data structure maintained by trusted system level hardware of the data processing system, to identify a real address for accessing physical memory; accessing a memory location in the physical memory based on the identified real address; generating, by the application, an address translation request that requests a translation of the effective address into the real address, wherein the address translation request specifies a RATI of the real address table where results of the address translation are to be stored: performing, by the trusted system level hardware, the translation of the effective address to the real address; storing the real address for the effective address in an entry of the real address table corresponding to the RATI specified by the application in the address translation request; storing, by the application, the effective address to RATI mapping entry in an effective address to RATI mapping table data structure maintained at the user level in association with the application; and wherein the real addresses for accessing the physical memory are not directly accessible outside of the hardware level of execution, are maintained only in the real address table data structure in the trusted system level hardware, and are only indirectly accessible, via RATI values, by the application at the user level of execution via the effective address to RATI mapping table data structure.