Method and system for global constant management
First Claim
1. A system, comprising:
- one or more processors, a memory coupled to the one or more processors, wherein the memory includes program instructions executable by the one or more processors to;
determine whether a copy of at least a portion of a first constant included within a first executable object exists within a specified memory region after the first executable object is loaded for execution; and
in response to determining that a copy of the at least a portion of the first constant does not exist within the specified memory region, store a copy of the at least a portion of the first constant within the specified memory region.
5 Assignments
0 Petitions
Accused Products
Abstract
Method and system for global constant management. A method of operating a computer is described in which, for data structures and a set of data structures, the date structure is received from a first memory. The data structure includes one or more sets of instructions and a set of one or more constants. The data structure is stored in a second memory. If constants from the data structure have not been stored in other data structures in the second memory, other than the first data structure, then constants in the data structures are stored in data structures in second memory. The constants from the first data structure in the second memory are replaced with links to respective other data structures in the second memory. In one example system, the data structure from the first memory comprises a Java class, and the sets of instructions comprise Java methods. The constants from the data structure in the first memory may comprise a constant pool.
-
Citations
80 Claims
-
1. A system, comprising:
-
one or more processors, a memory coupled to the one or more processors, wherein the memory includes program instructions executable by the one or more processors to; determine whether a copy of at least a portion of a first constant included within a first executable object exists within a specified memory region after the first executable object is loaded for execution; and in response to determining that a copy of the at least a portion of the first constant does not exist within the specified memory region, store a copy of the at least a portion of the first constant within the specified memory region. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system, comprising:
-
one or more processors, a memory coupled to the one or more processors, wherein the memory includes program instructions executable by the one or more processors to; classify a set of constants identified in a first memory region into two or more categories including a first category and a second category, wherein constants in the first category are expected to have a higher probability of common use by two or more executable objects than constants placed in the second category, wherein the first category comprises a first constant; determine whether a data structure comprising at least a portion of the first constant exists within a second memory region after the data structure is loaded for execution; and in response to determining that a data structure comprising at least a portion of the first constant does not exist within the second memory region, copy at least a portion of the first constant into a particular data structure in the second memory region. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22)
-
-
23. A computer-implemented method, comprising:
-
determining whether a copy of at least a portion of a first constant included within a first executable object exists within a specified memory region after the first executable object is loaded for execution; and in response to determining that a copy of the at least a portion of the first constant does not exist within the specified memory region, storing a copy of the at least a portion of the first constant within the specified memory region. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A computer-implemented method, comprising:
-
classifying a set of constants identified in a first memory region into two or more categories including a first category and a second category, wherein constants in the first category are expected to have a higher probability of common use by two or more executable objects than constants placed in the second category, wherein the first category comprises a first constant; determining whether a data structure comprising at least a portion of the first constant exists within a second memory region after at least one of the executable objects is loaded for execution; and in response to determining that a data structure comprising at least a portion of the first constant does not exist within the second memory region, copying at least a portion of the first constant into a particular data structure in the second memory region. - View Dependent Claims (38, 39, 40, 41, 42, 43, 44)
-
-
45. A tangible computer readable medium comprising instructions that are stored thereon that, responsive to execution by a computing device, cause the computing device to perform operations comprising:
-
determining whether a copy of at least a portion of a first constant included within a first executable object exists within a specified memory region after the first executable object is loaded for execution; and in response to determining that a copy of the at least a portion of the first constant does not exist within the specified memory region, storing a copy of the at least a portion of the first constant within the specified memory region. - View Dependent Claims (46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58)
-
-
59. A tangible computer readable medium comprising instructions that are stored thereon that, responsive to execution by a computing device, cause the computing device to perform operations comprising:
-
classifying a set of constants identified in a first memory region into two or more categories including a first category and a second category, wherein constants in the first category are expected to have a higher probability of common use by two or more executable objects than constants placed in the second category, wherein the first category comprises a first constant; determining whether a data structure comprising at least a portion of the first constant exists within a second memory region after at least one of the executable objects is loaded for execution; and in response to determining that a data structure comprising at least a portion of the first constant does not exist within the second memory region, copying at least a portion of the first constant into a particular data structure in the second memory region. - View Dependent Claims (60, 61, 62, 63, 64, 65, 66)
-
-
67. A computing device comprising:
-
one or more processors, a memory coupled to the one or more processors, wherein the memory includes program instructions executable by the one or more processors to;
receive a first executable object, via a network, that was generated from source code;
determine whether a copy of at least a portion of a first constant included within the first executable object exists within a specified memory region in the memory after the first executable object is loaded for execution; andin response to determining that a copy of the at least a portion of the first constant does not exist within the specified memory region in the memory, store a copy of the at least a portion of the first constant within the specified memory region. - View Dependent Claims (68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80)
-
Specification