Saturday, November 12, 2005


Register-based Virtual Machines

Andy Tanenbaum made an interesting comment about register-based virtual machines in this posting to comp.os.minix:
I agree that EM-1 and JVM do differ in many ways, but they are unusual in that both are register-free stack machines, an oddity these days.

I've always regarded register-free stack VM's as being the norm - you certainly don't need to look around too far to find them. Here's a short list (by no means exhaustive) off the top of my head:

Finding a list of register-based VM's required more work, but I quickly dug-up:

There are also a couple of papers (related authors) on the topic:

I'm not yet convinced that stack-based VM's are an oddity! Certainly, RISC architectures with large register sets have transformed computing hardware, but within the software world there still appears to be a bias toward stack-based machines. Is this a consequence of van der Poel's dictum that a machine should have 0, 1, or an infinite number of any feature? This last quote is from Andy Tanenbaum (and co-authors) in Description of a Machine Architecture for use with Block Structured Languages, which is the definition of the EM virtual machine - and now I find myself bottoming out of this memes recursion :-)

Links to this post:

Create a Link

<< Home

This page is powered by Blogger. Isn't yours?