I am building a new virtual machine. Lets not argue about the merits of doing so.

My questions are:

1. What instruction set should it be based on ?
Surely some people here have used more than just x86.

If you suggest an instruction set, can you please say why.

2. Should the virtual machine be stack based or register based.

If you suggest either, please say why.

3. If you would like to help with the project, then please let me know and I'll add you to the list.

I have started the design of the VM, and I have started some code (in Assembler of course). I currently dont care about the portability of the VM and I am targetting the x486 and above platform right now.

I look forward to your comments.

Regs, James.
Posted on 2002-06-25 22:18:28 by James_Ladd
I think your Virtual Machine should be a copy i80286, because that processor truly r0x0rz and i think its the best of all!
Posted on 2002-06-25 22:37:42 by comrade
Is there a target area for the VM? On the instruction set, you should state weather you'd like to go high-level or low-level. Is the instruction set going to be programmed directly, or are you going to create a HLL on top of it?

Maybe you could create a 'fixed' x86 instruction set? Eliminating all the register specific instructions - making the instruction set more orthagonal. Or, create a 680x0 emulator - always like that instruction set. :) I say these because of symetry, but if your going to put a HLL on top of it, then it doesn't matter if the instruction set is so pretty. :)

Have you read about the Itanium? I really like the large register file that can be accessed like a stack or memory buffer. I think a hybrid approach like this has real power for many algorithms or intrinsic operations/data types.

Sorry, I'm too busy ATM. Have my own language project, too. I think it's a great learning experience to create your own. :alright:
Posted on 2002-06-25 22:37:57 by bitRAKE
The VM will be done to support several HLL's ontop of it. There would also be an assembler of sorts to directly write for/to the VM.

Does anyone know of a LINK to a preformance comp'son of CPU performance between instructions sets ?

ie: how the MIPS x stacks up against the x86 etc etc


ps- bitRake, id love to know more about your project.
Posted on 2002-06-26 17:42:43 by James_Ladd