Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Asynchronous Whole File Caching for Personal Computers

IP.com Disclosure Number: IPCOM000113617D
Original Publication Date: 1994-Sep-01
Included in the Prior Art Database: 2005-Mar-27
Document File: 2 page(s) / 33K

Publishing Venue

IBM

Related People

Miro, F: AUTHOR

Abstract

Described is a software implementation that is designed to improve operating system performance of Personal Computers (PCs). The implementation provides asynchronous whole file caching that is based on the cache and file size.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 95% of the total text.

Asynchronous Whole File Caching for Personal Computers

      Described is a software implementation that is designed to
improve operating system performance of Personal Computers (PCs).
The implementation provides asynchronous whole file caching that is
based on the cache and file size.

      The concept of providing asynchronous whole file caching is
particularly applicable for PC operating systems, such as the OS/2*.
The implementation of the asynchronous whole file caching takes place
at file opening time and allows a higher percentage of an
applications file Input/Output (I/O),    random and/or sequential, to
be functional through the cache operations instead of through the
disk operations.  The result is higher performance since the whole
file is cached through the use of a maximum block size of 64 Kb
instead of the prior art use of sixteen 4 Kb I/O's when the file was
sequentially accessed.

      To attain asynchronous whole file caching, the concept
implements the following structure at file open time:

If ((open is successful and file exists) and not bypass cache) and
(file not currently queued and caching)

{ If ((( cache_size >= 1024K) and (file_size <= 128K)) or
        (( cache_size >=  512K) and (file_size <=  64K)) or
        (( cache_size >=  256K) and (file_size <=  32K)) or
        (( cache_size >=  128K) and (file_size <=  16K)))

   { Queue request to separate thread to asynchronous cache whole
file
      ...