...at
http://www.mirandabanda.org/files/Cog/VM/VM.r2761/.
CogVM binaries as per VMMaker.oscog-eem.317/r2761
Fix bug in transferTo:(from:) when doing a code compaction when
ensuring there is a machine code method when switching to a
process whose context has a machine code pc.
Limit the ammount of space the Cogit will stack allocate when compiling.
This limits the maximum number of bytecodes in a method that the
Cogit will compile. Currently set at 1.5Mb of stack space from empirical
tests of alloca on Mac OS X 10.6, linux 2.6 & Windows XP.
Fix become for cog methods that are not paired with their
bytecoded methods (e.g. Newspeak accessors).
Linux:
There are two variants of the Linux VMs; those ending in "ht" have a
heartbeat thread, while those that don't, use an interval timer for the
heartbeat (the Windows and Mac VMs have a threaded heartbeat). The
threaded heartbeat is better (for example, signals from the interval timer
interfere with system calls, etc), but to use it one must have a kernel
later than 2.6.12 and configure linux to allow the VM to use multiple
thread priorities. To do so, create a file called VM.conf where VM is
the name of the vm executable ("squeak" for the Squeak vm, "nsvm" for
the Newspeak vm) in /etc/security/limits.d/ with contents:
* hard rtprio 2
* soft rtprio 2
e.g.
sudo cat >/etc/security/limits.d/squeak.conf <<END
* hard rtprio 2
* soft rtprio 2
sudo cp /etc/security/limits.d/squeak.conf /etc/security/limits.d/nsvm.conf
END
Then log out and log back in for the limits to take effect.
--
best,
Eliot