[Vm-dev] Fwd: Nix package for Pharo flavor of opensmalltalk-vm
K K Subbu
kksubbu.ml at gmail.com
Mon Apr 24 07:46:46 UTC 2017
On Sunday 23 April 2017 10:52 PM, Eliot Miranda wrote:
> Maintaining backward compatibility here would have hobbled the VM and
> severely limited the potential performance increase from
> context-to-stack mapping that gave us the Cog VM which is around 7x
> faster than the Squeak 3.9 interpreter. So the break with backward
> compatibility was done consciously and with good reason.
I am very excited about the changes in stack/cog/sista and spur. My
point was not about backward compatibility but about introducing one
more level of indirection between vm and image to help package managers
deal with the emergence of multiple VMs. What we do today with launcher
scripts in terms of extracting paths and probing image files to pick the
right VM to run can be done by a primordial VM with a small built-in
image (say stkernel) to bootstrap a larger and modern VM. This stkernel
VM (like GRUB loader), will have the specific purpose of locating
configurations of larger VMs and then launching them. stkernel should be
easy to port, package and maintain on platforms since it has a specific
purpose. Applications can run on any of the second level VMs. The
two-level startup should be transparent to uses of squeak/cog/sista
users on 32-bit/64-bit hosts.
> I hope you can see that the differences between systems are more than
> between file system formats; it's not just a case of having the right
> driver. Because the system is self defining there is much more of a
> circular dependency between vm and image.
I understand the model. VM creates Image and Image generates VM. If
proceed backwards, then we will arrive at single primordial VM+image
from which the split emerged. Today, we don't have to go that far. Just
have three - a stkernel with built-in image, then a collection of VMs
and Images on disk.
> I'm sorry that the complexity is inconvenient. I do hope that things
> will settle down over the next few years after Sista/scorch is
> released.
No need to apologize. You have taken up arduous task of building next
generation VMs. I realize that complexity is part of this process. My
reference to Linux was only for concepts. Linux is a much larger project
with thousands of people working on it. We are a tiny team, so our
progress will be much drawn out. My suggestions were only within the
context of helping package managers.
Regards .. Subbu
More information about the Vm-dev
mailing list