| CPC G06F 9/3836 (2013.01) [G06F 9/30043 (2013.01); G06F 9/34 (2013.01); G06F 12/10 (2013.01); G06F 2212/1008 (2013.01); G06F 2212/657 (2013.01)] | 20 Claims |

|
1. A device, comprising:
a first processor configured to:
receive, from a second processor, a pointer identifying a virtual memory address in a computing system, the pointer comprising at least an offset representing a memory location offset within an object, an object type associated with the object, and an object identifier having a first number of bits, wherein the object type has a value that identifies the object associated with the object identifier;
apply a hash to the object identifier, a portion of the offset representing the memory location offset within the object, and the object type provided as a portion of the pointer to generate an index from the pointer, wherein the index has a second number of bits that is fewer than the first number of bits;
determine, based on the index, an entry in an address translation table that identifies a base of a physical address corresponding to the virtual memory address;
access a physical memory location represented by the virtual memory address using the entry determined based on the index from the address translation table; and
combine the base identified in the entry with a remaining portion of the offset to generate the physical address.
|