Browse Prior Art Database

A Virtual Memory Management Swap Cache

IP.com Disclosure Number: IPCOM000121380D
Original Publication Date: 1991-Aug-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 1 page(s) / 48K

Publishing Venue

IBM

Related People

Doutre, E: AUTHOR [+3]

Abstract

This article describes a technique which is for use in a computer operating system (OS) which creates a new layer called the swap cache between the memory manager and the swap file rather than complicate the memory manager with new knowledge.

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

A Virtual Memory Management Swap Cache

      This article describes a technique which is for use in a
computer operating system (OS) which creates a new layer called the
swap cache between the memory manager and the swap file rather than
complicate the memory manager with new knowledge.

      In an OS that has a segment based virtual memory manager which
swaps to magnetic disk storage, typical OS applications have a large
number of small segments.  OS swapping yields many small disk
transfers.

      Existing systems address this problem (if at all) with two
separate approaches, group swap-out (GSO) and anticipatory swap-out
(ASO).  GSO collects several segments together in a contiguous area
and swaps them all out in a single write operation.  ASO swaps out
segments before the memory they occupy is needed, but keeps the
current contents.  If that segment is referenced, it can be reclaimed
without a swap-in.  If the space is needed for other segments, it can
be used without having to swap out anything.  Both approaches are
complex and pervasive in memory management code.

      In the technique disclosed herein, when small segments are
swapped out, they are not written to disk, but are copied to a buffer
managed by the swap cache as illustrated in the drawing.  To the
memory manager these segments have actually been swapped out.  When
the buffer is full, the swap cache writes the contents to disk as a
whole.  If a segment is referenced while it resi...