smp: Add configure option --enable-smp.
authorMatt Birkholz <puck@birchwood-abbey.net>
Fri, 19 Dec 2014 23:53:42 +0000 (16:53 -0700)
committerMatt Birkholz <puck@birchwood-abbey.net>
Sun, 21 Dec 2014 19:19:08 +0000 (12:19 -0700)
commitb9a4a7ba56fd62cf58240730702b9bc9d9b54efc
tree4f85e3d296b82b3f2cfd2c06ee2638ca0708f967
parent8bbf2faab72df7a0653da5bc999266f0a0cb5171
smp: Add configure option --enable-smp.

Arrange for multiple Scheme machines, "processors" (pthreads), to
share the heap.  Each gets its own stack and "local" heap areas.
Gc-flips trace the stacks and evacuate the local heaps into the shared
heap.  The dump-band primitive now works like half a gc-flip,
evacuating the local heaps and saving the shared heap to disk before
the primitive gc daemons can start consing in a local heap again.
28 files changed:
src/microcode/boot.c
src/microcode/cmpint.c
src/microcode/configure.ac
src/microcode/confshared.h
src/microcode/debug.c
src/microcode/extern.h
src/microcode/fasdump.c
src/microcode/fasload.c
src/microcode/gccode.h
src/microcode/gcloop.c
src/microcode/interp.c
src/microcode/makegen/files-os-prim.scm
src/microcode/memmag.c
src/microcode/memmag.h
src/microcode/object.h
src/microcode/option.c
src/microcode/option.h
src/microcode/os2xcpt.c
src/microcode/ossmp.h [new file with mode: 0644]
src/microcode/prossmp.c [new file with mode: 0644]
src/microcode/purify.c
src/microcode/storage.c
src/microcode/sysprim.c
src/microcode/term.c
src/microcode/utils.c
src/microcode/uxtrap.c
src/microcode/xdebug.c
src/runtime/savres.scm