The performance of memory-intensive applications tends to be poor due to the high overhead added by the swapping mechanism. The same problem may be found in highly-loaded multi-programming systems where all running applications have to use the swap space in order to be able to execute at the same time.In this paper, we present a solution to these problems. The idea consists of compressing the swapped pages and keeping them in a swap cache whenever possible.The idea of a compressed swap cache was proposed a few years ago, but it did not achieve the expected results due to hardware limitations. As processors are much faster and the performance gap between processors and disk is also much bigger, we believe that now it is the right time to revisit this idea. In this paper, we present a new implementation of the compressed cache, plus some enhancements that significantly improve the performance of the swapping mechanism.
A FIRST APPROACH TerminologyBefore starting to describe the compressed swap cache, we believe it is necessary to define some terms that might otherwise get mixed up.