|ext:save-lisp core-file-name &key gc purify root-structures environment-name init-function load-init-file site-init verbose-herald process-command-line key-file||[Function]|
Saves a Common Lisp core image in the file of the specified name. The following keywords are defined:
- The final garbage collection generation. Either the generation number which defaults to 0, or :full for a full garbage collection, or nil to inhibit a final garbage collection. The final garbage collection is performed just before saving the lisp core file and is performed without scavenging the thread dynamic state which is no longer relevant and this avoids holding onto objects with references from the stacks or other conservative roots. See also ext:gc.
- If true, do a full GC which moves all dynamically allocated objects into an older generation and also clear some of the internal caches. The default is false. See ext:purify.
- This should be a list of the main entry points in any newly loaded systems. This need not be supplied, but locality and/or GC performance will be better if they are. Meaningless if :purify is nil. See ext:purify.
- Also passed to ext:purify when :purify is t. Rarely used.
- This is the function that starts running when the created core file is resumed. The default function simply invokes the top level read-eval-print loop. If the function returns the lisp will exit.
- If true, then look for an init.lisp or init.fasl file when the core file is resumed.
- If true, then the name of the site init file to load. The default is file://library/site-init. No error if this does not exist.
- If true (the default), print out the full lisp system herald when starting.
- File from which to read a key for the encryption of the saved core. When supplied the core file is encrypted using the AES256 cipher in CBC mode, and the key will need to be entered to decrypt and run the core file. Not available on export software versions.