Browse Prior Art Database

Technique for Virtual Memory Architecture to Support Checkpoint and Rollback Recovery

IP.com Disclosure Number: IPCOM000121781D
Original Publication Date: 1991-Sep-01
Included in the Prior Art Database: 2005-Apr-03
Document File: 7 page(s) / 284K

Publishing Venue

IBM

Related People

Bowen, NS: AUTHOR [+2]

Abstract

This article describes a virtual address translation mechanism that supports checkpoint and rollback recovery. The translation mechanism provides access to two sets of data; the checkpoint data is a copy of the state at some prior time and the active data is where the state advances past the prior checkpoint. If an error occurs, then the system has the ability to purge the active state and return the system to the checkpointed state. ARCHITECTURE

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

Technique for Virtual Memory Architecture to Support Checkpoint and
Rollback Recovery

      This article describes a virtual address translation
mechanism that supports checkpoint and rollback recovery. The
translation mechanism provides access to two sets of data; the
checkpoint data is a copy of the state at some prior time and the
active data is where the state advances past the prior checkpoint.
If an error occurs, then the system has the ability to purge the
active state and return the system to the checkpointed state.
ARCHITECTURE

      A normal virtual memory translation mechanism is assumed to
take the virtual page number as the input and output a real frame
number (if it exists) and disk slot number.  There is also a change
bit that indicates if the data in the real frame has been modified.
The description of the proposed checkpoint and rollback scheme begins
with several definitions which are summarized in Table 1.  The new
page translation mechanism has information to distinguish among
checkpoint and active versions of the page.  To avoid cumbersome
notations, we shall assume that our focus is the translation of a
single virtual page.  This means the notation shall exclude any
reference to the virtual page number.  For each page, the mappings
are replicated and are referred to as ml and m-l .   The mapping ml
contains mappings for the real frame (rl) and the disk copy (dl).
The alternate mapping, m-l, has similar fields. Each page translation
mechanism has a one-bit field, l, which can be thought of as a switch
which points to the most recently used mapping.
Thus, ml is always the mapping that was used last.  In addition, each
page translation mechanism has a k-bit field (v) which contains a
copy of the checkpoint number (V) during the previous reference.  The
checkpoint number, V, is a global value which is incremented on every
checkpoint. The scope of the checkpoint number can take on various
ranges, such as the entire system, several address spaces, a single
address space, or a portion of an address space. Each real frame,
designated by rl, contains a bit cl which is the "change bit" used to
indicate if the data at the real frame has been changed and is
different than the disk copy at dl.  Figure 1 shows the fields
required for the translation of a single page.  The pair of mappings,
m0 and m1, can be independently operated upon by traditional
operating system page managers in regards to real storage management
(e.g., page stealing).

      If the memory is non-volatile or a memory failure is outside
the domain of fault protection, then a checkpoint is taken by simply
incrementing the global checkpoint counter V.  If the memory is
considered volatile, then, in addition to incrementing V, modified
portions of the page table plus modified pages must be forced to a
safe location.
OPERATIONAL OVERVIEW

      This section provides a high-level overview of the operation of
the system.  As stated, on ever...