Memory write protection for memory corruption detection architectures
First Claim
Patent Images
1. A method comprising:
- storing in a register an address of a memory corruption detection (MCD) table;
receiving, from an application, an allocation request for allocation of a memory object with a contiguous memory block in memory;
allocating the contiguous memory block for the memory object in view of a size of the memory object requested;
writing, into the MCD table, a MCD metadata word, wherein the MCD metadata word comprises;
a first MCD unique identifier (ID) associated with the contiguous memory block; and
a write protection indicator that indicates a first protection mode of a first portion of the contiguous memory block;
receiving, from the application, a memory store request to store data in the first portion of the contiguous memory block of the memory object of the memory, wherein the memory store request comprises a first pointer indicating a first location of the first portion in the contiguous memory block to store the data;
retrieving, from the MCD table, the write protection indicator that indicates the first protection mode of the first portion; and
sending, to the application, a fault message when a fault event associated with the first portion occurs based on the first protection mode of the first portion.
0 Assignments
0 Petitions
Accused Products
Abstract
Memory corruption detection technologies are described. A method may store in a register an address of a memory corruption detection (MCD) table. The method receives, from an application, a memory store request to store data in a first portion of a contiguous memory block of a memory and sends, to the application, a fault message when a fault event associated with the first portion occurs in view of a protection mode of the first portion, wherein the protection mode indicates that the first portion is write protected.
37 Citations
20 Claims
-
1. A method comprising:
-
storing in a register an address of a memory corruption detection (MCD) table; receiving, from an application, an allocation request for allocation of a memory object with a contiguous memory block in memory; allocating the contiguous memory block for the memory object in view of a size of the memory object requested; writing, into the MCD table, a MCD metadata word, wherein the MCD metadata word comprises; a first MCD unique identifier (ID) associated with the contiguous memory block; and a write protection indicator that indicates a first protection mode of a first portion of the contiguous memory block; receiving, from the application, a memory store request to store data in the first portion of the contiguous memory block of the memory object of the memory, wherein the memory store request comprises a first pointer indicating a first location of the first portion in the contiguous memory block to store the data; retrieving, from the MCD table, the write protection indicator that indicates the first protection mode of the first portion; and sending, to the application, a fault message when a fault event associated with the first portion occurs based on the first protection mode of the first portion. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a memory device; and a processor coupled to the memory device, wherein the processor comprises; a register to store an address of a memory corruption detection (MCD) table; and a memory controller coupled to the memory device, wherein the processor is to; receive, from an application, a memory store request to store data in a first portion of a contiguous memory block of a memory; and send, to the application, a fault message when a fault event associated with the first portion occurs in view of a protection mode of the first portion, wherein the protection mode indicates that the first portion is write protected. - View Dependent Claims (9, 10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
storing in a register an address of a memory corruption detection (MCD) table; receiving, from an application, a memory store request to store data in a first portion of a contiguous memory block of a memory; and sending, to the application, a fault message when a fault event associated with the first portion occurs in view of a protection mode of the first portion, wherein the protection mode indicates that the first portion is write protected. - View Dependent Claims (17, 18, 19, 20)
-
Specification