|
From: Arthur N. <ac...@ca...> - 2015-10-08 15:58:38
|
The file "reduce.img" in the CSL version is a single file that is
structured as with a mini-file system within it. One sub-part of it is
known as "InitialImage" and is the main heap image loaded at the start of
a run. Other units within that one file are the "fasl" (for fast-loadable)
files representing dynamically loadable units of the Code that makes up
Reduce. When you go "load_package xxxx" in general it accesses and loads
several of these - a top level one called (sort of) xxxx.fasl and then
others that are sub-components of the package concerned.
CSL does it this way so that all those resources are in a single file, and
you only pay the operating system overhead of going to the system's
file-directory search once to find "reduce.img", while other systems will
open and close files for every single fast-loadable file used. It also
measn that there is just one (big) file there rather than many many
smaller ones, and my view when I set that up was that if you had many
files then perhaps a few would get lost or corrupted and you might not
notice for ages....
So reduce.img(InitialImage) refers to the start-up heap image as stored as
a component of the file reduce.img.
This has been the situation since around the initial release of CSL.
Arthur
On Thu, 8 Oct 2015, Andrey G. Grozin wrote:
> After installing lsb-release and recompiling reduce on my 64-bit gentoo
> box, everything works. So, when packaging reduce for gentoo, I'll have to
> include lsb-release in the list of build-time dependences.
>
> What remains unsolved is the behavious on my 32-bit gentoo box. From where
> has "(InitialImage)" appeared after the correct reduce.img file path? This
> problem does not appear in the 2014-11-30 snapshot; it is a result of some
> later change.
>
> Many thanks for your help,
> Andrey
>
>
|