Application-Controlled File Caching Policies
Pei Cao, Edward W. Felten, and Kai L
Department of Computer Science
We consider how to improve the performance of file caching by allowing
user-level control over file cache replacement decisions. We use
two-level cache management: the kernel allocates physical pages to
individual applications(allocation ), and each application is
responsible for deciding how to use its physical pages (replacement ).
Previous work on two-level memory management has focused on
replacement, largely ignoring allocation.
The main contribution of this paper is our solution to the allocation
problem. Our solution allows processes to manage their own cache
blocks, while at the same time maintains the dynamic allocation of
cache blocks among processes. Our solution makes sure that good
user-level policies can improve the file cache hit ratios of the
entire system over the existing replacement approach. We evaluate our
scheme by trace-based simulation, demonstrating that it leads to
significant improvements in hit ratios for a variety of applications.
Download the full text of this paper in
ASCII (44,534 bytes) and
POSTSCRIPT (612,144 bytes) form.
To Become a USENIX Member, please see our