Fix SEGV bug in profiler signal handler

The handler may be called on a thread that hasn't have VM.
Rewrite dolist using do for the better performance

Using for-each may introduce unnecessary closure allocation.
Add sys-available-processors
Fix non-void dummy functions to return some value