
D2.1.4 IST-033576
2.4 Checkpoint/restart API
The API described in D2.1.3 will become available with the next release. There-
fore, checkpoint/restart API available is the BLCR API. The main functions of
this API are described below, see header file libcr.h for a complete description of
this API.
However, BLCR functionalities have already been enhanced with the possibil-
ity to save libraries and executable during the checkpoint. Therefore, a previously
checkpointed program can restart even if the executable and the librairies are not
available. The use of this functionality is described in 2.4.2.
2.4.1 Initialization
To begin, each thread that will make any call to the libcr must first call the follow-
ing function. The only exception is for the callback threads, which run in a thread
created by libcr, and don’t need to do this call.
e x t e r n c r _ c l i e n t _ i d _ t c r _ i n i t ( v oid ) ;
This function returns a positive thread-scope identifier on success, and a neg-
ative value if failure.
2.4.2 Checkpoint parameters
Checkpoints can be parameterised using the following structure:
t y p e d e f s t r u c t c r _ c h e c k p o i n t _ a r g s {
c r _ v e r s i o n _ t c r _ v e r s i o n ;
c r _ s c o p e _ t c r _ s c o p e ;
p i d _ t c r _ t a r g e t ;
i n t c r _ f d ;
i n t c r _ s i g n a l ;
un sig ne d i n t c r _ t i m e o u t ;
un sig ne d i n t vmadump_flags ;
un sig ne d i n t c r _ f l a g s ;
} c r _ c h e c k p o i n t _ a r g s _ t ;
Before being filled by user values, this structure must be initialized via a call
to the following function :
vo i d c r i _ i n i t i a l i z e _ c h e c k p o i n t _ a r g s _ t (
c r _ c h e c k p o i n t _ a r g s _ t ∗ v a l u e ) ;
7/49 XtreemOS–Integrated Project
Comentários a estes Manuais