MEMORY CORRUPTION DETECTION
First Claim
Patent Images
1. A processing system, comprising:
- a processing core including a register to store a base address of a memory corruption detection (MCD) table;
wherein the processing core is configured to validate a pointer referenced by a memory access instruction, by comparing a first value derived from a first portion of the pointer to a second value stored in the MCD table at an offset referenced by a second portion of the pointer.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems and methods for memory corruption detection. An example processing system comprises a processing core including a register to store a base address of a memory corruption detection (MCD) table. The processing core is configured to validate a pointer referenced by a memory access instruction, by comparing a first value derived from a first portion of the pointer to a second value stored in the MCD table at an offset referenced by a second portion of the pointer.
-
Citations
20 Claims
-
1. A processing system, comprising:
-
a processing core including a register to store a base address of a memory corruption detection (MCD) table; wherein the processing core is configured to validate a pointer referenced by a memory access instruction, by comparing a first value derived from a first portion of the pointer to a second value stored in the MCD table at an offset referenced by a second portion of the pointer. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method, comprising:
-
storing, in a register of a processing core, a base address of a memory corruption detection (MCD) table associated with an application being executed by the processing core; and validating, by the processing core, a pointer produced by a memory access instruction of the application, by comparing a first value derived from a first portion of the pointer to a second value stored in the MCD table at an offset referenced by a second portion of the pointer. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer-readable non-transitory storage medium comprising executable instructions that, when executed by a processor, cause the processor to:
-
responsive to receiving a memory allocation request, allocate a memory buffer; generate an MCD value to be assigned to the memory buffer; initialize, using the MCD value, one or more MCD table entries corresponding to one or more memory blocks comprised by the memory buffer; and store a bit sequence derived from the MCD value within pre-defined bit positions of a pointer referencing the memory buffer.
-
Specification