USING SYMBOL INFORMATION FOR CATEGORIZATION OF DYNAMIC MEMORY ALLOCATIONS
First Claim
1. A method, implemented by a computing system programmed to perform the following, comprising:
- identifying, by the computing system, one or more statically-allocated symbols in a symbol table for an inferior process, the one or more statically-allocated symbols pertaining to one or more structures for the inferior process, the inferior process having dynamic memory allocations in an inferior process memory space, the symbol table comprising data used to categorize the statically-allocated area of memory;
locating, by the computing system, the one or more structures in the inferior process memory space;
determining, by the computing system, whether an address of the one or more structures in the inferior process memory space matches an address of a block of the dynamically allocated area of memory; and
categorizing, by the computing system, the block of dynamically allocated memory based on the determination of whether an address of the one or more structures matches an address of a block of the dynamically allocated area of memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A programming and debugging system identifies one or more statically-allocated symbols in a symbol table for an inferior process. The statically-allocated symbols pertain to one or more structures for the inferior process. The inferior process has dynamic memory allocations in an inferior process memory space. The symbol table comprises data used to categorize the statically-allocated area of memory. The system locates the structures in the inferior process memory space and determines whether an address of the structures in the inferior process memory space matches an address of a block of the dynamically allocated area of memory. The system categorizes the block of dynamically allocated memory based on the determination of whether an address of the structures matches an address of a block of the dynamically allocated area of memory.
37 Citations
20 Claims
-
1. A method, implemented by a computing system programmed to perform the following, comprising:
-
identifying, by the computing system, one or more statically-allocated symbols in a symbol table for an inferior process, the one or more statically-allocated symbols pertaining to one or more structures for the inferior process, the inferior process having dynamic memory allocations in an inferior process memory space, the symbol table comprising data used to categorize the statically-allocated area of memory; locating, by the computing system, the one or more structures in the inferior process memory space; determining, by the computing system, whether an address of the one or more structures in the inferior process memory space matches an address of a block of the dynamically allocated area of memory; and categorizing, by the computing system, the block of dynamically allocated memory based on the determination of whether an address of the one or more structures matches an address of a block of the dynamically allocated area of memory. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A system comprising:
-
a persistent storage unit to store a symbol table for an inferior process, the inferior process having dynamic memory allocations, the symbol table comprising data used to categorize the statically-allocated areas of memory; and a processing device coupled to the persistent storage unit to identify one or more statically-allocated symbols in the symbol table that pertain to one or more structures for the inferior process, to locate the one or more structure in the inferior process memory space, to determine whether an address of the one or more structures in the inferior process memory space matches an address of a block of the dynamically allocated are of memory, and to categorize by the inferior process the block of dynamically allocated memory based on the determination of whether an address of the one or more structures matches an address of a block of the dynamically allocated area of memory. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage medium including instructions that, when executed by a computer system, causes the computer system to perform a set of operations comprising:
-
identifying one or more statically-allocated symbols in a symbol table for an inferior process, the one or more statically-allocated symbols pertaining to one or more structures for the inferior process, the inferior process having dynamic memory allocations in an inferior process memory space, the symbol table comprising data used to categorize the statically-allocated area of memory; locating the one or more structures in the inferior process memory space; determining whether an address of the one or more structures in the inferior process memory space matches an address of a block of the dynamically allocated area of memory; and categorizing the block of dynamically allocated memory based on the determination of whether an address of the one or more structures matches an address of a block of the dynamically allocated are of memory. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification