Emulating the XO
modify |
Emulators and Virtual Servers allow you to run a "virtual" computer on any machine.
Strictly speaking, with emulators it is not usually a specific system that is emulated but a generic x86 processor with Sugar, so this emulation has some limits. The customized devices on an XO cannot be emulated, and some peripherals in your PC may not be supported through the emulated XO.
Emulators convert the code written/compiled for a particular system to the host computer's architecture. Virtualisation Servers differ from Emulation by that the code doesn't have to be converted; they run the operating system on the host CPU. Virtualisation is much faster than an emulator because of this.
- For configuration and Usage, see our quick start and emulation on Linux guide.
- For a detailed tutorial on emulation, see the IBM Tutorial.
- Operating-specific details are available : Win Mac Linux
- For tweaks to your system, see Improving emulation.
- For a comparison of environments and operating systems on which each have been tested, see Comparison of Alternatives
See the Developer's Manual for a discussion of the merits of various packages and the ways you might want to use emulation in the development process. Keep in mind that emulation is NOT perfect.
Emulators
At present, QEMU is used most frequently. It is both an Emulator and a Virtual Server, and runs on many operating systems.
- If you are running Linux, there is an experimental olpc-xo-qemu to simplify using QEMU for emulation. Feedback encouraged. MitchellNCharity 15:03, 6 January 2008 (EST)
- If you are running Windows, there is an experimental package to simplify using QEMU for emulation. Feedback encouraged. Mwarren 00:20, 15 November 2008 (UTC)
- If you are running Mac OS X, there is a VMWare Fusion image of build 767 available. Instructions are here.
8.2 and joyride 2.6.25 kernel based images require experimental QEMU (0.9.1)
The 2.6.25 kernel used in the current (Sep 2008) builds checks for the availability of the 3DNow extension and if it does not find it refuses to boot. This makes it impossible to use the current devel-ext3 images under stock QEMU (same for VMWare and probably also for VirtualBox). You need a newer version of QEMU compiled from a recent SVN snapshot which allows to specify a cpu type of athlon with 3DNow support.
qemu from the debian experimental repository already (Nov 2008) supports -cpu athlon with 3dnow.
- A Windows binary of QEMU compiled from a recent SVN snapshot (svn-4887, 2008-09-24) is available from the OLPC forum at Nabble. More installation details, including libusb0.dll and KQEMU installation, are available on the Emulating the XO/Quick Start/Windows page.
Build recommendations
For running XO disk images on an emulator, you must use an ext3 image, not the JFFS2 image which is for on-board NAND flash memory. =) Please note that the build you want to run may only be available in JFFS2; if so, check older builds. Some builds are better than others and the most recent one will not always work.
OUTDATED status
Please add your own findings to User Feedback on Images.
joyride builds generally work (as of build 1400). Presence service (mesh view and collaboration) won't work by default, because they are configured with a presence service providing jabber server of ship2.jabber.laptop.org, which doesn't yet exist. There is an overloaded and fragile jabber.laptop.org which may be used in the meantime. -- MitchellNCharity 22:42, 14 December 2007 (EST)
- Another jabber server alternative is: jabber.xochat.org (typically 60 to 80 people online) --ixo 03:29, 5 January 2008 (EST)
- Please be aware that the xochat.org server is also overloaded, and the load is proportional to the product of the number of registrees times the current number of users, for the reasons documented at XMPP_Extensions. So don't connect (and thus automatically register) unless you will really be contributing, and/or set up your own ejabberd server. NealMcBurnett 15:39, 7 January 2008 (EST)
I've had good luck with all of the ship2 builds under VMware Workstation 6. -- Ed Borasky (Znmeb), 15 December 2007.
External links
- Sugar, the XO laptop, and One Laptop per Child, M. Tim Jones. developerWorks. IBM, 2007-04-24.