Adaptively preventing out of memory conditions
Abstract
A computer-implemented method of preventing an out-of-memory condition can include evaluating usage of virtual memory of a process executing within a computer, detecting a low memory condition in the virtual memory for the process, and selecting at least one functional program component of the process according to a component selection technique. The method also can include sending a notification to each selected functional program component and, responsive to receiving the notification, each selected functional program component releasing at least a portion of a range of virtual memory reserved on behalf of the selected functional program component.
Claims
exact text as granted — not AI-modified1 - 20 . (canceled)
21 . A computer-implemented method of preventing an out-of-memory condition, comprising:
evaluating usage of virtual memory by a process executing within a computer; detecting a low memory condition in the virtual memory; selecting, based upon a component selection technique and from a plurality of functional program components of the process, a functional program component of the process; and sending a notification to each selected functional program component, wherein responsive to receiving the notification, each selected functional program component releasing a range of virtual memory reserved on behalf of the selected functional program component.
22 . The method of claim 21 , wherein
the evaluating includes:
building a memory map of the virtual memory; and
while the process continues to execute, updating the memory map to reflect usage of the virtual memory.
23 . The method of claim 21 , wherein
the low memory condition is determined based upon an amount of unreserved virtual memory of the process being less than a minimum amount of virtual memory.
24 . The method of claim 21 , wherein
the low memory condition is determined based upon a largest range of unreserved virtual memory for the process being less than a minimum size.
25 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon the particular functional program component having more reserved and uncommitted virtual memory than other functional program components in the plurality of functional program components.
26 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon an amount of time that the virtual memory has been reserved and remains uncommitted for the particular functional program component.
27 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon an amount of time that the particular functional program having reserved and uncommitted virtual memory for a longer time than other functional program components in the plurality of functional program components.
28 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon an amount of unused and committed virtual memory reserved for \the particular functional program component.
29 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon an amount of virtual memory that has been unreserved and committed for the particular functional program component.
30 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based an amount of time that the virtual memory has been unused and committed for the particular functional program component.
31 . The method of claim 21 , wherein
the component selection technique includes selecting a particular functional program component based upon an amount of time that the particular functional program having unused and committed virtual memory for a longer time than other functional program components in the plurality of functional program components.
32 . A computer program product comprising a computer-usable storage medium having stored therein computer-usable program code for preventing an out-of-memory condition, the computer-usable program code, which when executed by a computer hardware system, causes the computer hardware system to perform:
evaluating usage of virtual memory by a process executing within a computer; detecting a low memory condition in the virtual memory; selecting, based upon a component selection technique and from a plurality of functional program components of the process, a functional program component of the process; sending a notification to each selected functional program component, wherein responsive to receiving the notification, each selected functional program component releasing a range of virtual memory reserved on behalf of the selected functional program component.
33 . The computer program product of claim 32 , wherein
the evaluating includes:
building a memory map of the virtual memory; and
while the process continues to execute, updating the memory map to reflect usage of the virtual memory.
34 . The computer program product of claim 32 , wherein
the low memory condition is determined based upon an amount of unreserved virtual memory of the process being less than a minimum amount of virtual memory.
35 . The computer program product of claim 32 , wherein
the low memory condition is determined based upon a largest range of unreserved virtual memory for the process being less than a minimum size.
36 . A computer hardware system for preventing an out-of-memory condition, comprising:
a processor, wherein the processor is configured to perform and/or initiate:
evaluating usage of virtual memory by a process executing within a computer;
detecting a low memory condition in the virtual memory;
selecting, based upon a component selection technique and from a plurality of functional program components of the process, a functional program component of the process;
sending a notification to each selected functional program component; and
responsive to receiving the notification, each selected functional program component releasing a range of virtual memory reserved on behalf of the selected functional program component.
37 . The computer hardware system of claim 36 , wherein
the evaluating includes:
building a memory map of the virtual memory; and
while the process continues to execute, updating the memory map to reflect usage of the virtual memory.
38 . The computer hardware system of claim 36 , wherein
the low memory condition is determined based upon an amount of unreserved virtual memory of the process being less than a minimum amount of virtual memory.
39 . The computer hardware system of claim 36 , wherein
the low memory condition is determined based upon a largest range of unreserved virtual memory for the process being less than a minimum size.Join the waitlist — get patent alerts
Track US2012179889A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.