[TUHS] Emacs and undump

Warner Losh imp at bsdimp.com
Mon Feb 27 17:26:08 AEST 2017


On Mon, Feb 27, 2017 at 12:19 AM, Lars Brinkhoff <lars at nocrew.org> wrote:
> Tim Bradshaw wrote:
>>> David wrote:
>>> I remember that GNU Emacs launched the first time and then dumped
>>> itself out as a core file. Each subsequent launch would then ‘undump’
>>> itself back into memory. All this because launching emacs the first
>>> time required compiling all that lisp code.
>> It still works like that.  Indeed that's the conventional way that
>> Lisp systems tend to work for delivering applications
>
> Emacs came from ITS, and many Lisps derive from Maclisp which also came
> from ITS.  In ITS, it was common for applications to be dumped into a
> loadable core image, even if they were written in assembly language.

Unix systems are retiring sbrk(2), so emacs is breaking on those
systems. Trouble is, sbrk is kinda hard to implement on systems that
allocate memory for processes from multiple pools and other crazy
things. So now Emacs has no way of knowing where the upper limit was
so it can't start allocating with its own custom allocator...

At least GNU Emacs...

Warner


More information about the TUHS mailing list