Перед экспериментами по установке Linux на устройства на базе архитектуры ARM (например, Sharp Zaurus, Openmoko FreeRunner, планшетные ПК NOKIA, NAS на базе SoC Marvell) вначале стоит потренироваться в эмуляторе. Кроме того, окружение созданное в эмуляторе удобно использовать для создания и сборки пакетов программ или модулей ядра. Ставим на рабочую машину qemu. Для debian/ubuntu: sudo apt-get install qemu Создаем дисковый образ размером 10Гб для виртуальной машины: qemu-img create -f qcow hda.img 10G Загружаем ядро, initrd и инсталлятор Debian для архитектуры ARM: wget http://people.debian.org/~aurel32/arm-versatile/vmlinuz-2.6.18-6-versatile wget http://people.debian.org/~aurel32/arm-versatile/initrd.img-2.6.18-6-versatile wget http://ftp.de.debian.org/debian/dists/etch/main/installer-arm/current/images/rpc/netboot/initrd.gz Загружаем инсталлятор и устанавливаем Debian по сети, следуя инструкциям программы установки: qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.18-6-versatile -initrd initrd.gz -hda hda.img -append "root=/dev/ram" Запускаем установленную систему: qemu-system-arm -M versatilepb -kernel vmlinuz-2.6.18-6-versatile -initrd initrd.img-2.6.18-6-versatile \ -hda hda.img -append "root=/dev/sda1" Устанавливаем дополнительные программы, например, gcc: apt-get install gcc Проверяем: gcc -dumpmachine "arm-linux-gnu"
ага -- особенно учитывая то, что оно тут вовсе не к месту, какой kqemu поможет разогнать эмуляцию? -- думать не отменяли!
гораздо интересней было бы описать способ запуска с помощью binfmt-misc, или как его там...
mount -t binfmt_misc none /proc/sys/fs/binfmt_misc echo ":arm:M::\x7fELF\x01\x01\x01\x00\x00\x00\x00\x00\x00\x00\x00\x00\x02\x00\x28\x00:\xff\xff\xff\xff\xff\xff\xff\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff:/qemu-arm:" > /proc/sys/fs/binfmt_misc/register
подготавливает каталог для чрута и в его корень кидаем qemu-arm (из пакета qemu-user) далее тупо делаем чрут....