- May 01, 1998
-
-
dtc authored
-
- Jan 26, 1998
-
-
dtc authored
the *all-processes* list, function affected: make-process, destroy-process, restart-process, disable-process, and enable-process. Save and restore the process wait return value when a process is interrupted in case a process is interrupted before it reads the return value.
-
- Jan 25, 1998
-
-
dtc authored
make-stack-group. The binding stack size didn't match the actual vector length which was recently reduced, this typically led to heap and bindings stack corruption. Better abstract the creation of the initial binding stack, adding a new function initial-binding-stack.
-
- Jan 20, 1998
-
-
dtc authored
-
- Jan 17, 1998
-
-
dtc authored
package.
-
- Jan 15, 1998
-
-
dtc authored
print-unreadable-object macro. Bind *read-eval* to nil and catch any errors when reading the password object in the lisp connection listener!
-
- Jan 13, 1998
-
-
dtc authored
port, and add at least some simple password protection.
-
- Jan 12, 1998
-
-
dtc authored
next process wait timeout and use this as the select timeout if it occurs sooner than the default timeout. This helps reduce the time blocked when processes wait for short periods, for example during graphics animation.
-
- Jan 11, 1998
- Jan 04, 1998
-
-
dtc authored
sys:wait-until-fd-usable but uses process-wait so avoids blocking if there are other runnable processes. Redefine the sleep function to use process-wait-with-timeout to avoid blocking if there are other runnable processes.
-
- Jan 03, 1998
-
-
dtc authored
-
- Jan 02, 1998
-
-
dtc authored
for the CLX holding-lock macro. New support function lock-wait-with-timeout.
-
- Jan 01, 1998
-
-
dtc authored
Update the eval-stack for the current stack-group when scrubbing to ensuring that the stack-top is valid and maybe flush an old stored vector. Completely scrub the stored binding stack for the current stack group. Implement the lock waiting in a separate function rather than inlining. This ensures that the wait predicate is fast native code so that locking in byte-compiled and interpreted code doesn't slow the scheduler.
-
- Dec 31, 1997
-
-
dtc authored
rather than inheriting the current stack. Add support for scrubbing the binding and eval stacks of all the processes - call this before GC.
-
dtc authored
stacks rather than inheriting those of the current stack group. The alien stack, the eval stack, and the shallow bindings are allocated afresh for the new stack-group, but some work on the VOPs is needed to handle the control stack. Initial bindings for the following symbols are setup by default: * ** *** - + ++ +++ /// // /. Exploit this new option during the creation of new processes. The user visible change is that new processes now have a fresh set of bindings rather than inheriting those of the parent process. During the unwinding and rebinding of the binding stacks there is the possibility that *interrupts-enabled* will briefly set to true which may cause an unexpected interrupt. For now mask the interrupts during the binding stack switch; a better fix may be to implement these functions in assembly routines using pseudo-atomic to block interrupts.
-
- Dec 30, 1997
-
-
dtc authored
all the processes giving them some chance to unwinding, before shutting down multi-processing. Can be restarted by init-multi-processing. Ensure that processes are activated when sent an interrupt by destroy-process, otherwise inactive processes can't be destroyed.
-
dtc authored
possible from the initial process). When a process throws to %end-of-the-world the exit value is noted in the *quitting-lisp* variable and further process creation is blocked. Have the idle loop try to gracefully destroy all the processes when *quitting-lisp* before exiting.
-
- Dec 29, 1997
-
-
dtc authored
handled by sub-serve-event.
-
dtc authored
process switch: at process exits and processes interrupts.
-
dtc authored
yield, and at each process switch update the outgoing processes accrued real and run times. Three new functions: process-real-time, process-run-time, and process-idle-time. Add a verbose option to show-processes to prints these times.
-
- Dec 28, 1997
-
-
dtc authored
runnable processes. Take care not to schedule inactive processes.
-
- Nov 22, 1997
-
-
dtc authored
debugger. Add a few more assertions to check that the current process and stack group are consistent.
-
- Nov 21, 1997
-
-
dtc authored
that the symbol slot is actually a symbol as this slot may be zero if a bind or unbind is interrupted - have it ignore these for now so that it as least proceeds rather than giving a SIGSEGV fault. Re-write of make-stack-group and stack-group-resume taking care not to mess with unwind-protect during a stack group switch. No longer need to disable the GENCGC pointer filter when starting the SIGALRM yield interrupt because the object allocation should now be interrupt safe now. Have the SIGALRM handler return quickly if the interrupt nesting is too great.
-
- Sep 29, 1997
- Sep 24, 1997
-
-
dtc authored
-