[Vm-dev] New Cog VMs available

Eliot Miranda eliot.miranda at gmail.com
Fri Aug 2 04:05:13 UTC 2013

...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).


	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

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
	Then log out and log back in for the limits to take effect.

More information about the Vm-dev mailing list