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

Method for managing a buffer pool referenced by batch and interactive processes

Assignee: International Business Machines Corp
•
Filing: 1982-06-24
•
Granted: 1985-04-02
•
Expires: 2002-06-24
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Method for managing a buffer pool shared by sequential and random processes. A data base manager includes a buffer manager which: (1) maintains a normal least recently used (LRU) buffer chain and a sequential LRU buffer chain, the sequential LRU buffer chain being replicated on the normal LRU buffer chain; (2) places buffers released from a sequential process in both LRU buffer chains and buffers released from a random process only in the normal LRU buffer chain; and (3) responsive to a request for a buffer for a sequential process, steals the head buffer from the sequential LRU buffer chain, otherwise steals the head buffer from the normal LRU buffer chain. The buffer manager further conditionally asynchronously prefetches data set pages from the external storage device in response to a request for a data set page which is an integral multiple of a process defined prefetch quantity.

Inventors

  • 👤 Robert A. Gumaer
  • 👤 John A. Mortenson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-03 05:12
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/461; G06F9/463; G06F16/00; G06F9/44; G06F11/00; G06F11/07; G06F11/14; G06F11/1446

Claims Analysis

Total Claims: 5
Claim 1
Independent Claim 267 words
A method for operating a computing apparatus including a main processor, a plurality of main storage buffers, and at least one external storage device; the main processor being operated under control of a data base system which includes a buffer manager for allocating data set pages read from the storage device into the buffers for concurrent access by both sequential and random processes; the method being characterized by the steps of: (1) establishing a sequential steal threshold value of a queue as the product of the number of levels of out-of-line nesting most often expected per sequential processing instance times the maximum number of concurrent sequential processing instances most often expected; (2) maintaining a normal least recently used (LRU) buffer chain and a sequential LRU buffer chain with sequential buffers included in both chains and the random buffer included only in the normal LRU buffer chain; (3) placing buffers released from a sequential process that is not a prefetch process in both LRU buffer chains, and placing buffers released from a random process or from a sequential prefetch process only in the normal LRU buffer chain; and (4) responsive to a sequential access request for a buffer, stealing the head buffer from the sequential LRU buffer chain provided the number of buffers in that chain exceeds the queue value, otherwise, stealing the head buffer from the normal LRU chain, because the number of buffers on the sequential LRU chain is not greater than the queue value or the request is for access by a random process, thereby preventing recursive steals of buffers employed in nested sequential processes.
Claim 2
Independent Claim 267 words
A method for operating a computing apparatus including a main processor, a plurality of main storage buffers, and at least one external storage device; the main processor being operated under control of a data base system which includes a buffer manager for allocating data set pages read from the storage device into the buffers for concurrent access by both sequential and random processes; the method being characterized by the steps of: (1) establishing a sequential steal threshold value of a queue as the product of the number of levels of out-of-line nesting most often expected per sequential processing instance times the maximum number of concurrent sequential processing instances most often expected; (2) maintaining a normal least recently used (LRU) buffer chain and a sequential LRU buffer chain with sequential buffers included in both chains and the random buffer included only in the normal LRU buffer chain; (3) placing buffers released from a sequential process that is not a prefetch process in both LRU buffer chains, and placing buffers released from a random process or from a sequential prefetch process only in the normal LRU buffer chain; and (4) responsive to a sequential access request for a buffer, stealing the head buffer from the sequential LRU buffer chain provided the number of buffers in that chain exceeds the queue value, otherwise, stealing the head buffer from the normal LRU chain, because the number of buffers on the sequential LRU chain is not greater than the queue value or the request is for access by a random process, thereby preventing recursive steals of buffers employed in nested sequential processes.
Claim 3
Dependent Claim 48 words
The method of claim 1, further characterized by the step of (5) conditionally asynchronously prefetching data set pages from the external storage device to virtual storage buffers in response to a request for a data set page which is an integral multiple of a process defined prefetch quantity.
Claim 4
Independent Claim 208 words
A method for preventing monopolization of a buffer pool by sequential processes sharing the buffer pool concurrently with random processes, comprising the steps of: establishing a sequential steal threshold value of a queue as the product of the number of levels of out-of-line nesting most often expected per sequential processing instance times the maximum number of concurrent sequential processing instances most often expected; maintaining a normal least recently used (LRU) buffer chain and a sequential LRU buffer chain with sequential buffers included in both chains and the random buffer included only in the normal LRU buffer chain; placing buffers released from a sequential process that is not a prefetch process in both LRU buffer chains, and placing buffers released from a random process or from a sequential prefetch process only in the normal LRU buffer chain; and responsive to a request for a buffer for a sequential process, stealing the head buffer from the sequential LRU buffer chain provided the number of buffers in that chain exceeds the queue value, otherwise, stealing the head buffer from the normal LRU buffer chain because the number of buffers on the sequential LRU chain is not greater than the queue value or the request is for access by a random process.
Claim 5
Independent Claim 208 words
A method for preventing monopolization of a buffer pool by sequential processes sharing the buffer pool concurrently with random processes, comprising the steps of: establishing a sequential steal threshold value of a queue as the product of the number of levels of out-of-line nesting most often expected per sequential processing instance times the maximum number of concurrent sequential processing instances most often expected; maintaining a normal least recently used (LRU) buffer chain and a sequential LRU buffer chain with sequential buffers included in both chains and the random buffer included only in the normal LRU buffer chain; placing buffers released from a sequential process that is not a prefetch process in both LRU buffer chains, and placing buffers released from a random process or from a sequential prefetch process only in the normal LRU buffer chain; and responsive to a request for a buffer for a sequential process, stealing the head buffer from the sequential LRU buffer chain provided the number of buffers in that chain exceeds the queue value, otherwise, stealing the head buffer from the normal LRU buffer chain because the number of buffers on the sequential LRU chain is not greater than the queue value or the request is for access by a random process.

References Cited (Backward Citations)

US3217298A Cited
US3618045A Cited
US4320451A Cited
US4121286A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1988-04-01 1988-10-01 1989-04-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 1992-04-01 1992-10-01 1993-04-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 1996-04-01 1996-10-01 1997-04-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag