Poky images with QEMU ===================== Poky can generate qemu bootable kernels and images with can be used on a desktop system. Both arm and x86 images can currently be booted. There are two scripts, runqemu and poky-qemu, one for use within poky, the other externally. QEMU outside Poky (poky-qemu) ============================= The poky-qemu script is run as: MACHINE= poky-qemu where: is the path to a kernel (e.g. zimage-qemuarm.bin) is the path to an ext2 image (e.g. filesystem-qemuarm.ext2) is "qemuarm" or "qemux86" The MACHINE= prefix is optional and without it the script will try to detect the machine name from the name of the file. If isn't specified, nfs booting will be assumed. QEMU within Poky (runqemu) ========================== The runqemu script is run as: runqemu where: is "qemuarm" or "qemux86" is "ext2" or "nfs" is the path to a kernel (zimage-qemuarm.bin) is the path to an ext2 image (filesystem-qemuarm.ext2) It will default to the qemuarm, ext2 and the last kernel and poky-image-sdk image built by poky. Notes ===== - The scripts run qemu using sudo. Change perms on /dev/net/tun to run as non root - You can access the host computer at 192.168.7.1 within the image. - Your qemu system will be accessible as 192.16.7.2. - The default NFS mount points are /srv/nfs/qemux86 or /srv/nfs/qemuarm depending on the target type. - Images built for qemux86/qemuarm contain NFS server which export whole rootfs (/) in read/write mode. - You can set QEMU_MEMORY to control amount of available memory (default 64M). - You can set SERIAL_LOGFILE to have the serial output from the image logged to a file. NFS Image Notes =============== As root; % apt-get install nfs-kernel-server % mkdir /srv/nfs/qemuarm Edit via /etc/exports : # /etc/exports: the access control list for filesystems which may be exported # to NFS clients. See exports(5). /srv/nfs/qemuarm 192.168.7.2(rw,no_root_squash) % /etc/init.d/nfs-kernel-server restart % modprobe tun untar build/tmp/deploy/images/.rootfs.tar.bz2 into /srv/nfs/qemuarm Finally, launch: % runqemu nfs (Substitute qemux86 for qemuarm when using qemux86) Known Issues ============ - There is a bug in the ARM qemu in that means occasionally it will use 100% cpu. You will need to restart it in this situation. Copyright (C) 2006-2007 OpenedHand Ltd.