Emulating the XO: Difference between revisions

From OLPC
Jump to navigation Jump to search
(format tweak - stopped using sections for each step, as it cluttered the TOC. also permits number the steps.)
(in linux quick start, put common case (or used by more novice users case) first)
Line 13: Line 13:


'''1 - Obtain qemu'''
'''1 - Obtain qemu'''

On Fedora, as root:

yum install qemu


On Debian/Ubuntu, as root:
On Debian/Ubuntu, as root:


apt-get install qemu
apt-get install qemu

On Fedora, as root:

yum install qemu


'''2 - Obtain an image'''
'''2 - Obtain an image'''
Line 38: Line 38:
If you have an x86 or x86_64 cpu, you can use [http://fabrice.bellard.free.fr/qemu/kqemu-doc.html kqemu] to speed up the emulation several 100%.
If you have an x86 or x86_64 cpu, you can use [http://fabrice.bellard.free.fr/qemu/kqemu-doc.html kqemu] to speed up the emulation several 100%.


'''4a - Obtain kqemu'''
'''4 a - Obtain kqemu'''


On Debian/Ubuntu, as root:
On fedora, x86,
XXX please fill this in if you know
XXX please fill this in if you know


On Fedora x86,
On fedora, x86_64, as of 2007-05-13, there are no official rpms for kqemu, or the kqemu kernel module, and they are not included in the qemu rpm. [http://atrpms.net/name/kqemu/ atrpms.net] has kqemu rpms. Or install from source.
:There are several kernel rpms to choose from. Some guidance should be given here. [[User:MitchellNCharity|MitchellNCharity]] 22:01, 23 May 2007 (EDT)

On Debian/Ubuntu, as root:
XXX please fill this in if you know
XXX please fill this in if you know


On Fedora x86_64, as of 2007-05-13, there are no official rpms for kqemu, or the kqemu kernel module, and they are not included in the qemu rpm. [http://atrpms.net/name/kqemu/ atrpms.net] has kqemu rpms. Or install from source.
'''4b - Run modprobe'''
:There are several kernel rpms to choose from. Some guidance should be given here. [[User:MitchellNCharity|MitchellNCharity]] 22:01, 23 May 2007 (EDT)

'''4 b - Run modprobe'''
modprobe kqemu major=0
modprobe kqemu major=0


This will need to be run again if the host computer is rebooted. If you forget, qemu will be slow again (and a one-line error message scroll by when you run qemu).
This will need to be run again if the host computer is rebooted. If you forget, qemu will be slow again (and a one-line error message scroll by when you run qemu).


'''4c - Run a qemu variant with the <tt>-kernel-kqemu</tt> option'''
'''4 c - Run a qemu variant with the <tt>-kernel-kqemu</tt> option'''


On x86,
On x86,

Revision as of 02:23, 24 May 2007

This page is an inprogress overhaul of OS images for emulation.

Quick Start

Mac Quick Start

Linux Quick Start

1 - Obtain qemu

On Debian/Ubuntu, as root:

apt-get install qemu

On Fedora, as root:

yum install qemu

2 - Obtain an image

Download olpc-redhat-stream-development-ext3.img.bz2 (md5). Then,

bzcat olpc-redhat-stream-development-ext3.img.bz2 > laptop.img

3 - Run qemu on the image

qemu -soundhw es1370 -serial `tty` -hda laptop.img

Then see Quick Start: Running for the first time.

4 - (optional) Make qemu run faster

If you have an x86 or x86_64 cpu, you can use kqemu to speed up the emulation several 100%.

4 a - Obtain kqemu

On Debian/Ubuntu, as root:

XXX please fill this in if you know

On Fedora x86,

XXX please fill this in if you know

On Fedora x86_64, as of 2007-05-13, there are no official rpms for kqemu, or the kqemu kernel module, and they are not included in the qemu rpm. atrpms.net has kqemu rpms. Or install from source.

There are several kernel rpms to choose from. Some guidance should be given here. MitchellNCharity 22:01, 23 May 2007 (EDT)

4 b - Run modprobe

modprobe kqemu major=0

This will need to be run again if the host computer is rebooted. If you forget, qemu will be slow again (and a one-line error message scroll by when you run qemu).

4 c - Run a qemu variant with the -kernel-kqemu option

On x86,

qemu -kernel-kqemu ...

On x86_64,

qemu-system-x86_64 -kernel-kqemu ...

If you forget and use just qemu instead, things will be slow again.

FreeBSD Quick Start

Install qemu from ports:

cd /usr/ports/emulators/qemu && make install clean

or as a package

pkg_add -r qemu

Then load kqemu and aio kernel modules:

kldload kqemu
kldload aio

and launch the image you want:

qemu -hda olpc-stream-development-7-20060609_1600-ext3.img
Should this take the same arguments as the linux qemu invocation? Are those arguments even needed for linux? MitchellNCharity 21:18, 23 May 2007 (EDT)


Quick Start: Getting an image

Quick Start: Running for the first time

Quick Start: Does my qemu have kqemu?

Does the version of the QEMU support KQEMU? Type ctrl+alt+2 and type info kqemu. Use ctrl+alt+1 to return to OLPC screen.

Developing software using emulation