← Back to Patent Explorer
US5895488A Expired / Lapsed US ⏱️ 0.0 years remaining

Cache flushing methods and apparatus

Assignee: POWER MANAGEMENT ENTERPRISES LLC
•
Filing: 1997-02-24
•
Granted: 1999-04-20
•
Expires: 2017-02-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Methods and apparatus for managing a cache which includes a number of dirty lines in which (a) the percentage of dirty lines in the cache is determined, (b) the cache is flushed if the determined percentage of dirty lines exceeds a predetermined threshold, (c) whether a state of a system is idle is determined based on at least two indicators including (i) CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second, and (d) if the state of the system is determined to be idle, a line of the cache is flushed.

Inventors

  • 👤 Barbara Loechel

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 08:35
CPC Classifications
G; G06; G06F; G06F12/00; G06F12/02; G06F12/08; G06F12/0802; G06F12/0804; G06F12/0866

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 73 words
A method for managing a cache which includes a number of dirty lines, the method including steps of: a) determining whether a state of a system is idle based on at least two indicators including (i) CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and b) flushing, if the state of the system is determined to be idle, a line of the cache.
Claim 2
Independent Claim 73 words
A method for managing a cache which includes a number of dirty lines, the method including steps of: a) determining whether a state of a system is idle based on at least two indicators including (i) CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and b) flushing, if the state of the system is determined to be idle, a line of the cache.
Claim 3
Dependent Claim 40 words
The method of claim 1 wherein the state of the system is determined to be idle when (i) the CPU idle percentage is above a first predetermined threshold, and (ii) the data bus busyness percentage is below a second threshold.
Claim 4
Dependent Claim 13 words
The method of claim 2 wherein the first predetermined threshold is 50 percent.
Claim 5
Dependent Claim 13 words
The method of claim 2 wherein the second predetermined threshold is 50 percent.
Claim 6
Dependent Claim 16 words
The method of claim 2 wherein both the first and second predetermined thresholds are 50 percent.
Claim 7
Dependent Claim 44 words
The method of claim 2 wherein data bus busyness percentage is determined by dividing the number of blocks transferred over a data bus during a sampling period divided by the theoretical maximum number of blocks transferable over the data bus during the sampling period.
Claim 8
Dependent Claim 13 words
The method of claim 6 wherein the data bus is a SCSI bus.
Claim 9
Dependent Claim 128 words
In a system having a host computer and a mass storage device, a mass storage controller comprising: a) an input/output interface for permitting communication between the host computer, the mass storage controller, and the mass storage device; b) a cache having a number of cache lines, some of which cache lines may include dirty data; and c) an input/output management controller, the input output management controller including i) means for determining whether a state of a system is idle based on at least two indicators including (i) a host CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and ii) means for flushing a line of the cache if the state of the system is determined to be idle.
Claim 10
Dependent Claim 128 words
In a system having a host computer and a mass storage device, a mass storage controller comprising: a) an input/output interface for permitting communication between the host computer, the mass storage controller, and the mass storage device; b) a cache having a number of cache lines, some of which cache lines may include dirty data; and c) an input/output management controller, the input output management controller including i) means for determining whether a state of a system is idle based on at least two indicators including (i) a host CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and ii) means for flushing a line of the cache if the state of the system is determined to be idle.
Claim 11
Dependent Claim 40 words
The device of claim 8 wherein the state of the system is determined to be idle when (i) the CPU idle percentage is above a first predetermined threshold, and (ii) the data bus busyness percentage is below a second threshold.
Claim 12
Dependent Claim 44 words
The device of claim 9 wherein data bus busyness percentage is determined by dividing the number of blocks transferred over a data bus during a sampling period divided by the theoretical maximum number of blocks transferable over the data bus during the sampling period.
Claim 13
Dependent Claim 13 words
The method of claim 10 wherein the data bus is a SCSI bus.
Claim 14
Independent Claim 98 words
A method for managing a cache which includes a number of dirty lines, the method including steps of: a) determining the percentage of dirty lines in the cache; b) flushing, if the determined percentage of dirty lines exceeds a predetermined threshold, the cache; c) determining whether a state of a system is idle based on at least two indicators including (i) CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and d) flushing, if the state of the system is determined to be idle, a line of the cache.
Claim 15
Independent Claim 98 words
A method for managing a cache which includes a number of dirty lines, the method including steps of: a) determining the percentage of dirty lines in the cache; b) flushing, if the determined percentage of dirty lines exceeds a predetermined threshold, the cache; c) determining whether a state of a system is idle based on at least two indicators including (i) CPU idle percentage, (ii) data bus busyness percentage, (iii) percentage of dirty lines, and (iv) I/Os per second; and d) flushing, if the state of the system is determined to be idle, a line of the cache.
Claim 16
Dependent Claim 12 words
The method of claim 12 wherein the predetermined threshold is 95 percent.
Claim 17
Dependent Claim 86 words
The method of claim 12 wherein the cache includes a total number of cache lines, and wherein the step of determining the percentage of dirty lines in the cache includes sub-steps of i) determining a number of dirty cache lines based on cache lines having headers with a dirty map indicating dirty data, ii) dividing the number of dirty cache lines, determined above, by the total number of cache lines of the cache to derive a intermediate result, and iii) multiplying the intermediate result by 100.
Claim 18
Dependent Claim 40 words
The method of claim 12 wherein the state of the system is determined to be idle when (i) the CPU idle percentage is above a first predetermined threshold, and (ii) the data bus busyness percentage is below a second threshold.
Claim 19
Dependent Claim 13 words
The method of claim 15 wherein the first predetermined threshold is 50 percent.
Claim 20
Dependent Claim 13 words
The method of claim 15 wherein the second predetermined threshold is 50 percent.
Claim 21
Dependent Claim 16 words
The method of claim 15 wherein both the first and second predetermined thresholds are 50 percent.
Claim 22
Dependent Claim 44 words
The method of claim 15 wherein data bus busyness percentage is determined by dividing the number of blocks transferred over a data bus during a sampling period divided by the theoretical maximum number of blocks transferable over the data bus during the sampling period.

References Cited (Backward Citations)

US4426682A Cited
US4827401A Cited
US4775955A Cited
US5038278A Cited
US5347634A Cited
US5414827A Cited
US5408644A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-04-19 2002-10-19 2003-04-20 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-04-19 2006-10-19 2007-04-20 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-04-19 2010-10-19 2011-04-20 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag