Back to results
US 9,208,082 B1Granted
Hardware-supported per-process metadata tags
AssigneeDavid R. Cheriton
InventorsDavid R. Cheriton, Alexandre Y. Solomatnikov
Life of this patent
Estimating the term…
Abstract
A memory controller is used to receive a first request for a portion of a physical memory and metadata associated with the portion of the physical memory. The first request for the portion of the physical memory is translated to correspond to an indirect data structure. The indirect data structure comprises a reference to a data line, and a metadata associated with the data line. The data line is formed within the physical memory.
Claims26
A computer system, comprising:
- a physical memory;
- a memory controller coupled to the physical memory, configured to:
- receive a first request regarding a portion of the physical memory and metadata associated with the portion of the physical memory;
- wherein the first request is requested by a first process;
- translate the first request for the portion of the physical memory to correspond to a first indirect data structure;
- wherein the first indirect data structure comprises:
- a physical line reference to a data line within a physical page of the physical memory, and
- a first metadata associated with the physical line reference;
- receive a second request regarding the portion;
- wherein the second request is requested by a second process;
- in the event a metadata conflict is detected between the first process and the second process:
- translate the second request to correspond to a second indirect data structure;
- wherein the second indirect data structure comprises:
- the physical line reference, and
- a second metadata associated with the physical line reference;
- otherwise in the event no metadata conflict is detected between the first process and the second process:
- translate the second request to correspond to the first indirect data structure.
14 more elements
A method comprising:
- using a memory controller to receive a first request regarding a portion of a physical memory and metadata associated with the portion of the physical memory;
- wherein the first request is requested by a first process;
- translating the first request for the portion of the physical memory to correspond to a first indirect data structure;
- wherein the first indirect data structure comprises:
- a physical line reference to a data line within a physical page of the physical memory, and
- a first metadata associated with the physical line reference;
- using the memory controller to receive a second request regarding the portion;
- wherein the second request is requested by a second process;
- in the event a metadata conflict is detected between the first process and the second process:
- translating the second request to correspond to a second indirect data structure;
- wherein the second in direct data structure comprises:
- the physical line reference, and
- a second metadata associated with the physical line reference;
- otherwise in the event no metadata conflict is detected between the first process and the second process:
- translating the second request to correspond to the first indirect data structure.
12 more elements
Dependencies are inferred from the claim text.