The virtual file table also checks if a file is both read and written by an application, and will warn if one is, as this can cause inconsistencies across a restart.
 
+There is also a libzsyscall.a which is directly analogous to libsyscall.a, except it performs compression of the checkpoints as they are read/written.
+
 {subsection: Checkpointing}
 
 One of the things in libsyscall is a replacement for crt0.o, which has a special main() function.  This function configures the signal handlers for SIGTSTP and SIGUSR2 (which checkpoint & stop, or checkpoint & resume).  It also determines if it's a restart or not.  Because we're overriding main(), global constructors can be called multiple times per run, but that's probably not important.