On 01/18/2016 12:02 PM, Eli Zaretskii wrote: >> From: Paul Eggert >> Date: Mon, 18 Jan 2016 11:50:31 -0800 >> >> Emacs could live without the current unexec in a semi-portable way by doing what >> XEmacs does, which is to write out data and mmap it in later (sorry, don't know >> the details). There are other possibilities, e.g., have unexec write out the >> state in the form of C files that are compiled and linked in the usual way to >> build a faster-starting executable (this would be an Emacs API change, though). >> Any such changes would take some time to hack into something reliable and >> portable, and so will have to wait until after Emacs 25 is out. > > There's also what the MS-Windows port does (temacs allocates off a > static array), which AFAIK is entirely portable, and doesn't require > mmap. See w32heap.c. > It's a portable stopgap, maybe, but a real portable dumper would be _much_ better, since then Emacs could be a much safer position-independnent executable (as a portable dumper would relocate the dump as it loads, since it knows where all the pointers are).