On some architectures, SWI-Prolog allows for the creation of saved
states. Currently, the C-sources define two alternative
implementations for them. The old implementation
creates an entirely self-contained executable. It supports only the
save_program/[1,2] predicates. The new implementation
creates a file that is read by the `base' program. This file contains
the data-area of the SWI-Prolog process and optionally the Prolog-
and C stacks. This implementation supports save_program/[1,2],
save/[1,2] and restore/1. The state-file depends entirely on
exactly the Unix program-file used to create it.