PDA

View Full Version : running non x86 programs


sdd231163
September 25th, 2007, 02:41 PM
Hi, I'm trying to write a new programming language which would run efficiently on lots of processors (not just the stock x86). Naturally this means I must learn the assembly languages of these other architectures, however I cannot go and buy new hardware. What is the best emulation solution for running programs for IA-64, MIPS, SPARC and other processors on my amd64?

LaRoza
September 25th, 2007, 02:43 PM
Do you have the knowledge to do this?

If it is an exercise, I would start by doing it for one processor OR making an interpreted language in C, so the interpreter can be compiled on different platforms.

init1
September 25th, 2007, 09:02 PM
Hi, I'm trying to write a new programming language which would run efficiently on lots of processors (not just the stock x86). Naturally this means I must learn the assembly languages of these other architectures, however I cannot go and buy new hardware. What is the best emulation solution for running programs for IA-64, MIPS, SPARC and other processors on my amd64?
Probably Qemu. It can emulate all of the processors you mentioned.

sudo apt-get install qemu
qemu-sparc
qemu-mips
qemu-etc

sdd231163
September 26th, 2007, 10:35 AM
Do you have the knowledge to do this?

If it is an exercise, I would start by doing it for one processor OR making an interpreted language in C, so the interpreter can be compiled on different platforms.

It's a hobby so it probably won't come to much but this is the sort of programming I am interested in. Progress will probably be slow but I can get most of the information I need from the internet. I already know x86 assembly but I want to write the language so that It is designed with running on different processors. That means learning other assemblies.

Probably Qemu. It can emulate all of the processors you mentioned.

sudo apt-get install qemu
qemu-sparc
qemu-mips
qemu-etc



admittedly I haven't tried qemu-sparc yet but qemu-mips is missing a bios, as is qemu-ppc on ubuntu. The only working ppc solution so far has been qemu-ppc on fedora7 as host using debian 3.1 as the guest (debian etch doesn't run) but this just crawls (It would probably take days to get right through the text based installer. Finally qemu-IA64 just does not exist.

sdd231163
September 26th, 2007, 11:51 AM
qemu-sparc works fine for a while and then crashes during debian installation, failing to dereference a null pointer

mips
September 26th, 2007, 11:53 AM
http://www.linux-mips.org/wiki/Emulators

sdd231163
September 27th, 2007, 11:28 AM
http://www.linux-mips.org/wiki/Emulators
Thanks I'm now using SPIM for the MIPS

mips
September 27th, 2007, 01:35 PM
For SPARC you could also look at tkisem (http://www.cs.unm.edu/~maccabe/OLD/tkisem/begin.html)

For IA-64 you could look at,
IATO (http://www.irisa.fr/caps/projects/ArchiCompil/iato/)
NUE & SKI (http://www.hpl.hp.com/research/linux/ski/nue-info.php)
Simics
IA-64 Emulator (http://www.diotima.cz/ia64emu/)

For ARM,
http://embedded.hk/modules/mylinks/viewcat.php?op=&cid=17&PHPSESSID=b7f04638c420d015ef994ec4aa686e2d
http://www.cs.umu.se/~ens03mbs/index.html
http://www.penguin-soft.com/penguin/man/1/jimulator.html
http://sourceforge.net/projects/armphetamine/
http://arcem.sourceforge.net/

For PowerPC,
http://pearpc.sourceforge.net/
http://sources.redhat.com/psim/


Various,
http://gavare.se/gxemul/
http://simh.trailing-edge.com/
http://www.hercules-390.org/
http://en.wikipedia.org/wiki/List_of_computer_system_emulators
http://en.wikipedia.org/wiki/List_of_emulators

sdd231163
September 28th, 2007, 12:35 PM
thanks that's a lot of emulators to check out.
p.s. Pear pc doesnt work with debianppc (I'd already tried that)