User`s guide
D2.1.4 IST-033576
1 Introduction
The current prototype of Linux-XOS consists of two major components: the ker-
nel checkpoint/restart mechanisms and the node-level VO-support mechanisms.
Checkpointing in Linux-XOS is conceptually seperated in three layers: grid
checkpointer, system checkpointer and kernel checkpointer. This document mainly
describes the lower layer, the kernel checkpointer, as functionality for the sys-
tem and grid checkpointer. System and grid checkpointer are being implemented
in the framework defined by the Application Execution Management work of
WP3.3. The current document presents guidelines to install and use the kernel
checkpointer functionalites. It also present the BLCR checkpoint/restart API.
The node-level VO support component described in section 3 consists of the
following modules: a PAM extension (a dynamic library pam_xos.so), a NSS
extension (a dynamic library libnss_xos.so), an Account Mapping Service
(AMS, a daemon program xos_amsd), and several utilities for testing. The
PAM extension is used to dynamically map VO user credentials into local user
accounts. The NSS extension is used for extracting user/group mapping informa-
tion via standard naming lookup APIs. AMS plays a role of managing runtime
mappings which serves as the backend for PAM/NSS extensions. Based on these
components, the widely used login tool, OpenSSH, is modified to allow VO users
to interactively access a remote XtreemOS node. Section 3 details a step-by-step
procedure of installation, configuration and testing of all relevant components on
a fresh Linux environment.
2 Kernel Checkpointer
The kernel checkpoint/restart component consists of three kernel modules, an
API/library and three binaries. The library is used to implement user callbacks for
the checkpointing (as described in [2]). The binaries are the following: cr_run,
cr_checkpoint and cr_restart. They are respectively used to preload libcr and
libpthread if the application has not been linked against BLCR library, checkpoint
a tree of processes, and restart a previously checkpointed tree of processes. The
kernel modules implement the checkpointing logic: blcr.ko implements coordina-
tion between callbacks and the checkpoint of each process/thread, blcr_vmadump.ko
is used to do the underlying dump, and blcr_imports.ko is used to export unex-
ported kernel symbols.
5/49 XtreemOS–Integrated Project










