IP Library Granted Patent US 7,398,369
Granted Patent B2
US 7,398,369 · App. 10/976,269 · Granted Jul 8, 2008

Memory leakage management

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,398,369
App. No.
10/976,269
Granted
Jul 8, 2008
Kind
B2
Abstract

Methods, systems, and media to enhance memory leakage management by identifying a suspect allocation pattern during execution of a task, which may be indicative of memory leakage and implementing measures to protect against memory leakage based upon the suspect allocation pattern, are disclosed. More specifically, embodiments may detect a suspect allocation pattern by monitoring memory allocations and deallocations for tasks. The pattern of memory allocations and deallocations may then be analyzed to determine whether a suspect allocation pattern exists. For instance, the memory allocations and deallocations may be compared to determine whether there is an increasing net residual allocation left by the task after it has reached a quiescent runtime state. In some embodiments, a suspect allocation pattern exists if the total memory allocation for a task continues to rise after a pre-determined time period.

Claims (16)

1. A method to manage memory leakage for a computer system, the method comprising:

monitoring, by the computer system, memory allocations and memory deallocations associated with a task;

analyzing, by the computer system, the memory allocations and memory deallocations by a task of the computer system to detect a suspect allocation pattern associated with the memory leakage;

determining, by the computer system, to terminate the task in response to an evaluation of the suspect allocation pattern and an impact of restarting the task on other operations by the computer system;

selecting, by the computer system, a time to terminate the task after time critical operations cease if termination of the task will affect a critical operation in progress; and

generating, by the computer system, an output in response to selecting the time to terminate the task to attenuate the memory leakage.

2. The method of claim 1 , wherein determining to terminate the task comprises evaluating the suspect allocation pattern to determine a likelihood of the memory leakage and terminating the task based upon the likelihood.

3. The method of claim 1 , further comprising dynamically adjusting criteria for identifying the suspect allocation pattern based upon a determined effectiveness of the identification, wherein adjusting the criteria comprises at least extending a time period or changing a threshold associated with identification of the suspect allocation pattern.

4. The method of claim 1 , further comprising dynamically adjusting criteria for terminating the task based upon a determined effectiveness for selection of the task for termination, wherein adjusting the criteria comprises at least extending a time period or changing a threshold associated with identification of the suspect allocation pattern.

5. The method of claim 1 , wherein analyzing the memory allocations and memory deallocations comprises determining whether the memory deallocations release an amount of memory equivalent to an amount of memory acquired via the memory allocations.

6. The method of claim 1 , wherein analyzing the memory allocations and memory deallocations comprises determining whether the memory allocations and the memory deallocations continue to increase the amount of memory allocated for the task.

7. The method of claim 1 , wherein analyzing the memory allocations and memory deallocations comprises determining whether a net result of the memory allocations and the memory deallocations is an amount of memory allocated for the task that is greater than a threshold amount of memory.

8. The method of claim 1 , wherein analyzing the memory allocations and memory deallocations comprises determining that a net result of the memory allocations and the memory deallocations is an amount of memory allocated for the task that continues to increase beyond a threshold time period.

9. The method of claim 1 , wherein generating the output comprises logging the task to indicate the detection of the suspect allocation pattern.

10. The method of claim 1 , wherein generating the output comprises reporting the detection of the suspect allocation pattern for the task to a technical service provider.

11. The method of claim 1 , wherein generating the output comprises terminating the task to attenuate the memory leakage.

Assignments (3)
CHANGE OF NAME Recorded Dec 20, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058553/0802 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 4, 2012
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: FACEBOOK, INC.
Reel/Frame 027991/0416 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 15, 2004
From: DICKENSON, MARC ALAN
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 015379/0258 →