X-Git-Url: http://demsky.eecs.uci.edu/git/?p=model-checker.git;a=blobdiff_plain;f=snapshot.h;h=d3fc7b80f9856e5c83a662ba1235c72a6f1b18f4;hp=3b33a7ef5aeaa774af2501f8b32fe7d005b5886b;hb=2d0d4ac38e05905a6633b3f2d5112ccadd45c27f;hpb=4568d21526e5c3c79cb99eea8277a5fef9127283 diff --git a/snapshot.h b/snapshot.h index 3b33a7e..d3fc7b8 100644 --- a/snapshot.h +++ b/snapshot.h @@ -1,28 +1,20 @@ +/** @file snapshot.h + * @brief Snapshotting interface header file. + */ + #ifndef _SNAPSHOT_H #define _SNAPSHOT_H #include "snapshot-interface.h" +#include "config.h" +#include "mymemory.h" -#define PAGESIZE 4096 - -/* If USE_MPROTECT_SNAPSHOT=1, then snapshot by using mmap() and mprotect() - If USE_MPROTECT_SNAPSHOT=0, then snapshot by using fork() */ -#define USE_MPROTECT_SNAPSHOT 1 - -/* Size of signal stack */ -#define SIGSTACKSIZE 16384 - -void addMemoryRegionToSnapShot( void * ptr, unsigned int numPages ); +void snapshot_add_memory_region(void *ptr, unsigned int numPages); +snapshot_id take_snapshot(); +void snapshot_roll_back(snapshot_id theSnapShot); -snapshot_id takeSnapshot( ); - -void rollBack( snapshot_id theSnapShot ); - -#ifdef __cplusplus -extern "C" { -#endif -void createSharedLibrary(); -#ifdef __cplusplus -}; /* end of extern "C" */ +#if !USE_MPROTECT_SNAPSHOT +mspace create_shared_mspace(); #endif + #endif