/[cmucl]/src/code/multi-proc.lisp
ViewVC logotype

Log of /src/code/multi-proc.lisp

Parent Directory Parent Directory | Revision Log Revision Log


Links to HEAD: (view) (annotate)
Sticky Tag:

Revision 1.46 - (view) (annotate) - [select for diffs]
Mon Apr 19 02:18:04 2010 UTC (4 years ago) by rtoy
Branch: MAIN
CVS Tags: GIT-CONVERSION, HEAD, RELEASE_20b, cross-sol-x86-2010-12-20, cross-sol-x86-base, cross-sol-x86-merged, cross-sparc-branch-base, release-20b-pre1, release-20b-pre2, snapshot-2010-05, snapshot-2010-06, snapshot-2010-07, snapshot-2010-08, snapshot-2010-11, snapshot-2010-12, snapshot-2011-01, snapshot-2011-02, snapshot-2011-03, snapshot-2011-04, snapshot-2011-06, snapshot-2011-07, snapshot-2011-09, sparc-tramp-assem-2010-07-19, sparc-tramp-assem-base
Branch point for: RELEASE-20B-BRANCH, cross-sol-x86-branch, cross-sparc-branch, sparc-tramp-assem-branch
Changes since 1.45: +36 -36 lines
Diff to previous 1.45
Remove _N"" reader macro from docstrings when possible.

Revision 1.45 - (view) (annotate) - [select for diffs]
Fri Mar 19 15:18:59 2010 UTC (4 years, 1 month ago) by rtoy
Branch: MAIN
CVS Tags: post-merge-intl-branch, snapshot-2010-04
Changes since 1.44: +40 -37 lines
Diff to previous 1.44
Merge intl-branch 2010-03-18 to HEAD.  To build, you need to use
boot-2010-02-1 as the bootstrap file.  You should probably also use
the new -P option for build.sh to generate and update the po files
while building.

Revision 1.44.14.4 - (view) (annotate) - [select for diffs]
Tue Mar 2 13:45:54 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-2010-03-18-1300
Changes since 1.44.14.3: +4 -2 lines
Diff to previous 1.44.14.3 , to branch point 1.44 , to next main 1.46
Convert strings containing ~:P to use ngettext for proper
translations.

Revision 1.44.14.3 - (view) (annotate) - [select for diffs]
Fri Feb 26 15:32:49 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-branch
Changes since 1.44.14.2: +2 -2 lines
Diff to previous 1.44.14.2 , to branch point 1.44
Put these files in their own domain since they are only compiled on the
appropriate architecture and OS.

Revision 1.44.16.1 - (view) (annotate) - [select for diffs]
Thu Feb 25 20:34:50 2010 UTC (4 years, 1 month ago) by rtoy
Branch: intl-2-branch
Changes since 1.44: +37 -36 lines
Diff to previous 1.44 , to next main 1.46
Restart internalization work.  This new branch starts with code from
the intl-branch on date 2010-02-12 18:00:00+0500.  This version works
and

LANG=en@piglatin bin/lisp

works (once the piglatin translation is added).

Revision 1.44.14.2 - (view) (annotate) - [select for diffs]
Tue Feb 9 21:33:10 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
CVS Tags: intl-branch-working-2010-02-11-1000, intl-branch-working-2010-02-19-1000
Changes since 1.44.14.1: +36 -36 lines
Diff to previous 1.44.14.1 , to branch point 1.44
Mark translatable strings; update cmucl.pot and ko/cmucl.po
accordingly.

Revision 1.44.14.1 - (view) (annotate) - [select for diffs]
Mon Feb 8 17:15:48 2010 UTC (4 years, 2 months ago) by rtoy
Branch: intl-branch
Changes since 1.44: +2 -1 lines
Diff to previous 1.44
Add (intl:textdomain "cmucl") to the files to set the textdomain.

Revision 1.43.16.1 - (view) (annotate) - [select for diffs]
Fri Dec 19 01:31:32 2008 UTC (5 years, 3 months ago) by rtoy
Branch: unicode-utf16-extfmt-branch
CVS Tags: unicode-snapshot-2009-05, unicode-snapshot-2009-06, unicode-utf16-extfmt-2009-03-27, unicode-utf16-extfmt-2009-06-11, unicode-utf16-extfmts-sync-2008-12
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 , to next main 1.46
Merge changes from utf16 branch to update to snapshot 2008-12.

Revision 1.43.14.1 - (view) (annotate) - [select for diffs]
Thu Dec 18 21:50:18 2008 UTC (5 years, 4 months ago) by rtoy
Branch: unicode-utf16-branch
CVS Tags: unicode-utf16-char-support-2009-03-25, unicode-utf16-char-support-2009-03-26, unicode-utf16-sync-2008-12, unicode-utf16-sync-label-2009-03-16
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 , to next main 1.46
Merge Snapshot 2008-12 to this branch.  Some tweaks needed in
boot-2008-05-cross-unicode-x86.lisp and the Config files.  FreeBSD and
Darwin/x86 untested, but Linux and Solaris build ok.

Revision 1.44 - (view) (annotate) - [select for diffs]
Wed Nov 12 15:04:23 2008 UTC (5 years, 5 months ago) by rtoy
Branch: MAIN
CVS Tags: RELEASE_19f, RELEASE_20a, amd64-dd-start, intl-2-branch-base, intl-branch-base, label-2009-03-16, label-2009-03-25, merge-sse2-packed, merge-with-19f, merged-unicode-utf16-extfmt-2009-06-11, portable-clx-base, portable-clx-import-2009-06-16, pre-merge-intl-branch, release-19f-base, release-19f-pre1, release-20a-base, release-20a-pre1, snapshot-2008-12, snapshot-2009-01, snapshot-2009-02, snapshot-2009-04, snapshot-2009-05, snapshot-2009-07, snapshot-2009-08, snapshot-2009-11, snapshot-2009-12, snapshot-2010-01, snapshot-2010-02, snapshot-2010-03, unicode-string-buffer-base, unicode-string-buffer-impl-base
Branch point for: RELEASE-19F-BRANCH, RELEASE-20A-BRANCH, amd64-dd-branch, intl-2-branch, intl-branch, portable-clx-branch, unicode-string-buffer-branch, unicode-string-buffer-impl-branch
Changes since 1.43: +2 -2 lines
Diff to previous 1.43
Merge in SSE2 changes from sse2-packed-branch (tag
sse2-packed-2008-11-12).

Revision 1.43.18.1 - (view) (annotate) - [select for diffs]
Wed Oct 1 20:05:15 2008 UTC (5 years, 6 months ago) by rtoy
Branch: sse2-branch
CVS Tags: sse2-checkpoint-2008-10-01, sse2-merge-with-2008-10, sse2-merge-with-2008-11, sse2-packed-2008-11-12, sse2-packed-base
Branch point for: sse2-packed-branch
Changes since 1.43: +2 -2 lines
Diff to previous 1.43 , to next main 1.46
Don't need float-wait instructions with SSE2 (which are precise and
occur as soon as the instruction completes execution).

Revision 1.42.6.1 - (view) (annotate) - [select for diffs]
Mon Dec 19 01:09:51 2005 UTC (8 years, 4 months ago) by rtoy
Branch: ppc_gencgc_branch
CVS Tags: ppc_gencgc_snap_2005-12-17, ppc_gencgc_snap_2006-01-06
Changes since 1.42: +2 -2 lines
Diff to previous 1.42 , to next main 1.46
Merge code from main branch of 2005-12-17 to ppc gencgc branch.  Still
doesn't work of course.

Revision 1.43 - (view) (annotate) - [select for diffs]
Tue Jul 5 13:12:50 2005 UTC (8 years, 9 months ago) by rtoy
Branch: MAIN
CVS Tags: double-double-array-base, double-double-array-checkpoint, double-double-base, double-double-init-%make-sparc, double-double-init-checkpoint-1, double-double-init-ppc, double-double-init-sparc, double-double-init-sparc-2, double-double-init-x86, double-double-irrat-end, double-double-irrat-start, double-double-reader-base, double-double-reader-checkpoint-1, double-double-sparc-checkpoint-1, pre-telent-clx, release-19c, release-19c-base, release-19c-pre1, release-19d, release-19d-base, release-19d-pre1, release-19d-pre2, release-19e, release-19e-base, release-19e-pre1, release-19e-pre2, snapshot-2005-07, snapshot-2005-08, snapshot-2005-09, snapshot-2005-10, snapshot-2005-11, snapshot-2005-12, snapshot-2006-01, snapshot-2006-02, snapshot-2006-03, snapshot-2006-04, snapshot-2006-05, snapshot-2006-06, snapshot-2006-07, snapshot-2006-08, snapshot-2006-09, snapshot-2006-10, snapshot-2006-11, snapshot-2006-12, snapshot-2007-01, snapshot-2007-02, snapshot-2007-03, snapshot-2007-04, snapshot-2007-05, snapshot-2007-06, snapshot-2007-07, snapshot-2007-08, snapshot-2007-09, snapshot-2007-10, snapshot-2007-11, snapshot-2007-12, snapshot-2008-01, snapshot-2008-02, snapshot-2008-03, snapshot-2008-04, snapshot-2008-05, snapshot-2008-06, snapshot-2008-07, snapshot-2008-08, snapshot-2008-09, snapshot-2008-10, snapshot-2008-11, sse2-base, unicode-utf16-base, unicode-utf16-extfmts-pre-sync-2008-11, unicode-utf16-string-support, unicode-utf16-sync-2008-07, unicode-utf16-sync-2008-09, unicode-utf16-sync-2008-11
Branch point for: double-double-array-branch, double-double-branch, double-double-reader-branch, release-19c-branch, release-19d-branch, release-19e-branch, sse2-branch, unicode-utf16-branch, unicode-utf16-extfmt-branch
Changes since 1.42: +2 -2 lines
Diff to previous 1.42
From Vladimir Sekissov, cmucl-help, 04 Jul 2005.

Fix typo.

Revision 1.42 - (view) (annotate) - [select for diffs]
Thu Sep 25 02:40:13 2003 UTC (10 years, 6 months ago) by toy
Branch: MAIN
CVS Tags: amd64-merge-start, mod-arith-base, ppc_gencgc_snap_2005-05-14, prm-before-macosx-merge-tag, release-19a, release-19a-base, release-19a-pre1, release-19a-pre2, release-19a-pre3, release-19b-base, release-19b-pre1, release-19b-pre2, snapshot-2003-10, snapshot-2003-11, snapshot-2003-12, snapshot-2004-04, snapshot-2004-05, snapshot-2004-06, snapshot-2004-07, snapshot-2004-08, snapshot-2004-09, snapshot-2004-10, snapshot-2004-11, snapshot-2004-12, snapshot-2005-01, snapshot-2005-02, snapshot-2005-03, snapshot-2005-04, snapshot-2005-05, snapshot-2005-06
Branch point for: mod-arith-branch, ppc_gencgc_branch, release-19a-branch, release-19b-branch
Changes since 1.41: +3 -1 lines
Diff to previous 1.41
Implmement Pierre Mai's idea of adding 2 macros for setting *FEATURES*
and *RUNTIME-FEATURES* and setting them appropriately as files are
loaded so that recompiling CMUCL produces a result with the same set
of features.  *RUNTIME-FEATURES* is a subset of *FEATURES* that is
written out to internals.h so the C code can be compiled
appropriately.

A simple bootstrap with boot17 is needed.

Revision 1.41 - (view) (annotate) - [select for diffs]
Thu Dec 12 19:09:45 2002 UTC (11 years, 4 months ago) by moore
Branch: MAIN
CVS Tags: cold-pcl-base, dynamic-extent-base, lisp-executable-base, release-18e, release-18e-base, release-18e-pre1, release-18e-pre2, remove_negative_zero_not_zero, sparc_gencgc, sparc_gencgc_merge
Branch point for: cold-pcl, dynamic-extent, lisp-executable, release-18e-branch, sparc_gencgc_branch
Changes since 1.40: +3 -2 lines
Diff to previous 1.40
Fix a typo in apply-with-bindings.

Add string-stream and file-stream, required by the ANSI spec, as
structure classes.  Make the string streams and fd-stream,
respectively, inherit from them.  Add bootstrap magic.

Revision 1.40.2.1 - (view) (annotate) - [select for diffs]
Fri Oct 4 23:13:28 2002 UTC (11 years, 6 months ago) by pmai
Branch: UNICODE-BRANCH
Changes since 1.40: +6 -6 lines
Diff to previous 1.40 , to next main 1.46
Checked in Brian Spilsbury's experimental Unicode, locales, and dialect
support patchset.  This lives on its own branch, so that people can
play with it and tweak it, without disturbing 18e release engineering
on the main branch.  Bootstrapping has only been tried on LINKAGE_TABLE
x86/Linux builds.  A working cross-compile script is checked in under
bootfiles/19a/boot1-cross-unicode.lisp.  The script still leaves you
with some interactive errors, on the cross compile, which you should
answer with 2.  See the mailing list for more information.

Revision 1.29.2.5 - (view) (annotate) - [select for diffs]
Sat Mar 23 18:50:06 2002 UTC (12 years ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18d
Changes since 1.29.2.4: +150 -48 lines
Diff to previous 1.29.2.4 , to branch point 1.29 , to next main 1.46
Mega commit to bring RELENG_18 branch in sync with HEAD in preparation
for release tagging 18d.

Revision 1.40 - (view) (annotate) - [select for diffs]
Wed Feb 20 06:40:01 2002 UTC (12 years, 1 month ago) by moore
Branch: MAIN
CVS Tags: LINKAGE_TABLE, PRE_LINKAGE_TABLE, UNICODE-BASE
Branch point for: UNICODE-BRANCH
Changes since 1.39: +150 -48 lines
Diff to previous 1.39
Add features to multiprocessing that make it more compatible with ACL.  These
include process run reasons, arrest reasons, and property lists.

Revision 1.29.2.4 - (view) (annotate) - [select for diffs]
Sat Aug 19 17:48:48 2000 UTC (13 years, 8 months ago) by dtc
Branch: RELENG_18
CVS Tags: RELEASE_18c
Changes since 1.29.2.3: +5 -1 lines
Diff to previous 1.29.2.3 , to branch point 1.29
When restarting a process, reset the scheduled times and accrued times.

Revision 1.39 - (view) (annotate) - [select for diffs]
Sat Aug 19 17:48:19 2000 UTC (13 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.38: +5 -1 lines
Diff to previous 1.38
When restarting a process, reset the scheduled times and accrued times.

Revision 1.29.2.3 - (view) (annotate) - [select for diffs]
Sat Aug 12 15:05:46 2000 UTC (13 years, 8 months ago) by dtc
Branch: RELENG_18
Changes since 1.29.2.2: +26 -26 lines
Diff to previous 1.29.2.2 , to branch point 1.29
Ensure that process-wait-until-fd-usable returns true unless there is
a timeout; it had been incorrectly returning nil when the fd was
immediately usable which caused trouble for CLX as noted by Fred Gilham.

Revision 1.38 - (view) (annotate) - [select for diffs]
Sat Aug 12 15:05:24 2000 UTC (13 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.37: +26 -26 lines
Diff to previous 1.37
Ensure that process-wait-until-fd-usable returns true unless there is
a timeout; it had been incorrectly returning nil when the fd was
immediately usable which caused trouble for CLX as noted by Fred Gilham.

Revision 1.29.2.2 - (view) (annotate) - [select for diffs]
Tue May 23 16:36:38 2000 UTC (13 years, 10 months ago) by pw
Branch: RELENG_18
Changes since 1.29.2.1: +165 -78 lines
Diff to previous 1.29.2.1 , to branch point 1.29
This set of revisions brings the RELENG_18 branch up to HEAD in preparation
for an 18c release.

Revision 1.37 - (view) (annotate) - [select for diffs]
Sat Sep 25 15:39:08 1999 UTC (14 years, 6 months ago) by dtc
Branch: MAIN
Changes since 1.36: +2 -2 lines
Diff to previous 1.36
Correct a typo in the with-lock-held macro, which broken it when a
timeout was given. Fixes CLX event handling.

Revision 1.36 - (view) (annotate) - [select for diffs]
Fri Sep 10 06:54:11 1999 UTC (14 years, 7 months ago) by dtc
Branch: MAIN
Changes since 1.35: +13 -12 lines
Diff to previous 1.35
Fix for with-lock-held; recursively held locks were falling through
when a timeout was given and wait was true.

Revision 1.35 - (view) (annotate) - [select for diffs]
Sat Sep 4 19:43:15 1999 UTC (14 years, 7 months ago) by dtc
Branch: MAIN
Changes since 1.34: +21 -15 lines
Diff to previous 1.34
Within process-wait-until-fd-usable, handle interrupted unix-fast-select
calls - only return when usable or upon an error.

Revision 1.34 - (view) (annotate) - [select for diffs]
Sat Mar 13 15:13:02 1999 UTC (15 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.33: +41 -37 lines
Diff to previous 1.33
Initialise the *current-process* to dummy startup process so that
locks will work even if multi-processing is not initialised.

Revision 1.33 - (view) (annotate) - [select for diffs]
Sat Mar 6 03:42:40 1999 UTC (15 years, 1 month ago) by dtc
Branch: MAIN
Changes since 1.32: +52 -24 lines
Diff to previous 1.32
Add support for non-recursive error-check locks for compatibility with
the pthread implementation. Add new structures recursive-lock and
error-check-lock. Make-lock now accepts a :kind key which defaults to
:recursive for backwards compatibility. Rework with-lock-held to
handle the error-check locks, and add a new key :wait - when :wait is
Nil and the lock is not free the body is not executed.

Revision 1.32 - (view) (annotate) - [select for diffs]
Mon Jan 11 19:05:36 1999 UTC (15 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.31: +31 -2 lines
Diff to previous 1.31
Add the with-timeout macro.

Revision 1.31 - (view) (annotate) - [select for diffs]
Sat Sep 26 18:24:42 1998 UTC (15 years, 6 months ago) by pw
Branch: MAIN
Changes since 1.30: +4 -3 lines
Diff to previous 1.30
SLEEP was broken for real arguments greater than one, sleeping for
approximately twice as long as requested.

Revision 1.30 - (view) (annotate) - [select for diffs]
Fri Aug 14 07:15:09 1998 UTC (15 years, 8 months ago) by dtc
Branch: MAIN
Changes since 1.29: +21 -3 lines
Diff to previous 1.29
The top-level-catcher symbol used in top-level should have been
internal to the LISP package; fixes failures to throw to the top level.

Add a new example function Startup-Idle-and-Top-Level-Loops to enter
the idle loop and start a new process to run the top level loop.

Revision 1.29.2.1 - (view) (annotate) - [select for diffs]
Tue Jun 23 11:22:11 1998 UTC (15 years, 9 months ago) by pw
Branch: RELENG_18
CVS Tags: RELEASE_18b
Changes since 1.29: +1 -1 lines
Diff to previous 1.29
This (huge) revision brings the RELENG_18 branch up to the current HEAD.
Note code/unix-glib2.lisp not yet included -- not sure it is ready to go.

Revision 1.29 - (view) (annotate) - [select for diffs]
Tue May 19 02:08:49 1998 UTC (15 years, 11 months ago) by dtc
Branch: MAIN
Branch point for: RELENG_18
Changes since 1.28: +4 -4 lines
Diff to previous 1.28
Doc. fix.

Revision 1.28 - (view) (annotate) - [select for diffs]
Fri May 1 00:53:16 1998 UTC (15 years, 11 months ago) by dtc
Branch: MAIN
Changes since 1.27: +7 -5 lines
Diff to previous 1.27
Add a file-comment with the files header.

Revision 1.27 - (view) (annotate) - [select for diffs]
Mon Jan 26 14:59:45 1998 UTC (16 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.26: +78 -56 lines
Diff to previous 1.26
Take more care to inhibit scheduling when modifying process state and
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.

Revision 1.26 - (view) (annotate) - [select for diffs]
Sun Jan 25 19:37:13 1998 UTC (16 years, 2 months ago) by dtc
Branch: MAIN
Changes since 1.25: +40 -29 lines
Diff to previous 1.25
Bug fix for the setup of the initial binding stack in
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.

Revision 1.25 - (view) (annotate) - [select for diffs]
Tue Jan 20 19:03:35 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.24: +109 -25 lines
Diff to previous 1.24
Better document the multi-processing functions.

Revision 1.24 - (view) (annotate) - [select for diffs]
Sat Jan 17 13:43:47 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.23: +7 -6 lines
Diff to previous 1.23
Create an initial process binding of *package* to the COMMON-LISP-USER
package.

Revision 1.23 - (view) (annotate) - [select for diffs]
Thu Jan 15 14:36:25 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.22: +100 -88 lines
Diff to previous 1.22
Cleanup the various structure print functions making uses of the
print-unreadable-object macro.

Bind *read-eval* to nil and catch any errors when reading the password
object in the lisp connection listener!

Revision 1.22 - (view) (annotate) - [select for diffs]
Tue Jan 13 19:20:10 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.21: +105 -91 lines
Diff to previous 1.21
Have the lisp connection listener search forward for an available
port, and add at least some simple password protection.

Revision 1.21 - (view) (annotate) - [select for diffs]
Mon Jan 12 16:56:55 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.20: +23 -2 lines
Diff to previous 1.20
Have the idle process loop calculate the minimum time delta to the
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.

Revision 1.20 - (view) (annotate) - [select for diffs]
Sun Jan 11 20:35:45 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.19: +102 -1 lines
Diff to previous 1.19
New function Start-Lisp-Connection-Listener, to create a process to
listen for connections on a TCP port and start a new top-level
process for each connection.

Revision 1.19 - (view) (annotate) - [select for diffs]
Sun Jan 11 20:24:25 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.18: +10 -6 lines
Diff to previous 1.18
Add simple-restarts to allow a process to be easily destroyed when an
error occurs.

Revision 1.18 - (view) (annotate) - [select for diffs]
Sun Jan 4 22:41:41 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.17: +95 -1 lines
Diff to previous 1.17
Define a new function process-wait-until-fd-usable; similar to
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.

Revision 1.17 - (view) (annotate) - [select for diffs]
Sat Jan 3 03:18:57 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.16: +16 -14 lines
Diff to previous 1.16
Allow a float timeout for process-wait-with-timeout.

Revision 1.16 - (view) (annotate) - [select for diffs]
Fri Jan 2 23:31:14 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.15: +45 -35 lines
Diff to previous 1.15
Enhance the with-lock-held macro to accept a timeout. This is required
for the CLX holding-lock macro. New support function
lock-wait-with-timeout.

Revision 1.15 - (view) (annotate) - [select for diffs]
Thu Jan 1 17:20:35 1998 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.14: +46 -11 lines
Diff to previous 1.14
Fix a bug in the scrubbing of the current stack-group's eval-stack.
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.

Revision 1.14 - (view) (annotate) - [select for diffs]
Wed Dec 31 18:05:45 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.13: +49 -8 lines
Diff to previous 1.13
Add support for creating stack-groups with a fresh control stack,
rather than inheriting the current stack.

Add support for scrubbing the binding and eval stacks of all the
processes - call this before GC.

Revision 1.13 - (view) (annotate) - [select for diffs]
Wed Dec 31 04:43:15 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.12: +121 -62 lines
Diff to previous 1.12
Add the option of creating stack groups that are allocated fresh
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.

Revision 1.12 - (view) (annotate) - [select for diffs]
Tue Dec 30 16:36:27 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.11: +59 -22 lines
Diff to previous 1.11
New function shutdown-multi-processing to try and gracefully destroy
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.

Revision 1.11 - (view) (annotate) - [select for diffs]
Tue Dec 30 06:03:17 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.10: +51 -25 lines
Diff to previous 1.10
Allow the quitting of lisp from any process (this had only been
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.

Revision 1.10 - (view) (annotate) - [select for diffs]
Mon Dec 29 19:02:54 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.9: +4 -9 lines
Diff to previous 1.9
The idle loop no longer needs to call process-yield at this will be
handled by sub-serve-event.

Revision 1.9 - (view) (annotate) - [select for diffs]
Mon Dec 29 06:19:00 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.8: +27 -19 lines
Diff to previous 1.8
Fix a few cases where the process times were not being updated at a
process switch: at process exits and processes interrupts.

Revision 1.8 - (view) (annotate) - [select for diffs]
Mon Dec 29 03:11:31 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.7: +133 -10 lines
Diff to previous 1.7
Record the real and run times at which processes are scheduled and
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.

Revision 1.7 - (view) (annotate) - [select for diffs]
Sun Dec 28 04:33:01 1997 UTC (16 years, 3 months ago) by dtc
Branch: MAIN
Changes since 1.6: +83 -51 lines
Diff to previous 1.6
Add support for an idle process that isn't run when there are other
runnable processes.

Take care not to schedule inactive processes.

Revision 1.6 - (view) (annotate) - [select for diffs]
Sat Nov 22 14:46:36 1997 UTC (16 years, 4 months ago) by dtc
Branch: MAIN
Changes since 1.5: +102 -35 lines
Diff to previous 1.5
Save the lisp_interrupt_contexts in the stack group - will help the
debugger.
Add a few more assertions to check that the current process and stack
group are consistent.

Revision 1.5 - (view) (annotate) - [select for diffs]
Fri Nov 21 12:14:27 1997 UTC (16 years, 5 months ago) by dtc
Branch: MAIN
Changes since 1.4: +195 -167 lines
Diff to previous 1.4
Have the functions for unbinding and rebinding the bind stack check
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.

Revision 1.4 - (view) (annotate) - [select for diffs]
Mon Sep 29 11:01:10 1997 UTC (16 years, 6 months ago) by dtc
Branch: MAIN
Changes since 1.3: +5 -5 lines
Diff to previous 1.3
Check of the i486 data sheet shows it supports the cmpxchg instruction
and can thus use the fast locking; adjust feature accordingly.

Revision 1.3 - (view) (annotate) - [select for diffs]
Mon Sep 29 05:08:28 1997 UTC (16 years, 6 months ago) by dtc
Branch: MAIN
Changes since 1.2: +32 -21 lines
Diff to previous 1.2
Fixes for the with-lock-held macro.

Revision 1.2 - (view) (annotate) - [select for diffs]
Mon Sep 29 04:44:44 1997 UTC (16 years, 6 months ago) by dtc
Branch: MAIN
Changes since 1.1: +30 -24 lines
Diff to previous 1.1
Process structure predicate was intended to be processp not process-p,
for compat. with clim-sys.
Rework the with-lock-held macro; bug fixes; faster version for the
Pentium using new %instance-set-conditional inline function.

Revision 1.1 - (view) (annotate) - [select for diffs]
Wed Sep 24 06:08:14 1997 UTC (16 years, 6 months ago) by dtc
Branch: MAIN
Stack group and multi-processing support for CMU CL.

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, select a symbolic revision name using the selection box, or choose 'Use Text Field' and enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

  ViewVC Help
Powered by ViewVC 1.1.5