Add a safepoint-based mechanism to avoid SIGALRM for the TIMER facility
authorDavid Lichteblau <david@lichteblau.com>
Thu, 13 Sep 2012 16:26:19 +0000 (18:26 +0200)
committerDavid Lichteblau <david@lichteblau.com>
Wed, 19 Sep 2012 15:10:28 +0000 (17:10 +0200)
commit266ccb364ef5379abd1c0c7b0a2aa81c41753de6
tree856f9e65305bcbdfd313f0b1b7abc51b8b247340
parent83fc8f3154fa6ffe1c9451399eb23586ae07357d
Add a safepoint-based mechanism to avoid SIGALRM for the TIMER facility

  - Retrofits the signal-free timer thread for Windows (thanks to
    Anton Kovalenko) to POSIXy platforms.

  - Provide os_* functions in the C runtime which simulate the win32
    API for waitable timers.

Currently supported on Linux (timerfd), FreeBSD (kqueue), and SunOS
(completion ports).  A tentative (untested) implementation is
provided for Darwin's kqueue.
base-target-features.lisp-expr
src/code/save.lisp
src/code/target-signal.lisp
src/code/timer.lisp
src/runtime/bsd-os.c
src/runtime/darwin-os.c
src/runtime/linux-os.c
src/runtime/sunos-os.c