The patent badge is an abbreviated version of the USPTO patent document. The patent badge does contain a link to the full patent document.
The patent badge is an abbreviated version of the USPTO patent document. The patent badge covers the following: Patent number, Date patent was issued, Date patent was filed, Title of the patent, Applicant, Inventor, Assignee, Attorney firm, Primary examiner, Assistant examiner, CPCs, and Abstract. The patent badge does contain a link to the full patent document (in Adobe Acrobat format, aka pdf). To download or print any patent click here.
Patent No.:
Date of Patent:
Jan. 12, 1993
Filed:
Aug. 31, 1989
Michael J Corrigan, Rochester, MN (US);
Gary R Ricard, Rochester, MN (US);
Richard M Rocheleau, Rochester, MN (US);
Larry W Youngren, Rochester, MN (US);
International Business Machines Corporation, Armonk, NY (US);
Abstract
Optimization I/O buffers are used to write data into or read data from auxiliary storage using a double buffering scheme. When a user wants to send data to auxiliary storage, the first buffer is filled with data and the contents are asynchronously written to auxiliary storage. Without waiting for the asynchronous write to complete, the second buffer is filled with data. When the second buffer is filled, the contents of the second buffer are asynchronously written to auxiliary storage. If the first buffer has not completed its write operation by this point, the buffers are determined to be too small and the size of both buffers is increased. Control switches back and forth between these two buffers until all of the desired data is sent to auxiliary storage. The size of the buffers is increased until the computer system does not have to synchronously wait for one buffer to complete its write operation before it can refill that buffer with new data. Ideally, the first buffer should complete its write operation when the second buffer is filled beyond a predetermined threshold percentage, such as one half. If the first buffer completes its write operation before the second buffer is filled beyond the predetermined threshold percentage, the buffers are determined to be too large and the size of both buffers are decreased. The size of the buffers is dynamically increased and decreased as needed to achieve an optimum size based on the unique and dynamically changing computer environment.