Duration-based memory management of complex objects
AssigneeOracle Corporation
InventorsLakshminarayanan Chidambaran, Srinath Krishnaswamy, Joyo Wijaya
Life of this patent
Estimating the term…
Loading patent…
AssigneeOracle Corporation
InventorsLakshminarayanan Chidambaran, Srinath Krishnaswamy, Joyo Wijaya
Estimating the term…
Memory for complex objects is maintained in pools of dynamic memory on a “per-duration” basis. Each duration is assigned its own area or areas of the heap, and all the memory allocation for a specific duration comes from those assigned areas of the heap. Memory allocation for a complex object is performed with respect to a single duration and, hence, memory is allotted for the complex object from the corresponding memory pool. When a duration is terminated, the memory allocated for its corresponding heap is freed, thereby releasing memory for all the complex object using the memory from the memory pool for that duration. Management of other resources for complex objects such as opening and closing files may also be duration-based. In one aspect, the memory management of complex objects is located in an automatically generated client stub routine for a remote procedure call. Accordingly, the interface description language (IDL) for the remote procedure call is extended to incorporate the duration idea for out parameters.
A method of managing resources used by a plurality of complex objects, said method comprising the computer-implemented steps of:
A method of managing memory for a plurality of dynamically allocated complex objects, said method comprising the computer-implemented steps of:
A method of translating a description of an interface for a procedure call, said method comprising the computer-implemented steps of:
A computer-readable medium bearing instruction for managing resources used by a plurality of complex objects, said instructions arranged, when executed, to cause one or processors to perform the steps of:
A computer-readable medium bearing instructions for managing memory for a plurality of dynamically allocated complex objects, said complex objects assigned to a plurality of durations, said instructions arranged, when executed, to cause one or more processors to perform the steps of:
A computer-readable medium bearing instructions for translating a description of an interface for a procedure call, said instructions arranged, when executed, for causing one or more processors to perform the steps of:
Dependencies are inferred from the claim text.