Hallo,
versuche grade unter XP mit qemu eine Emulation vom Mini2440 mit arm
Prozessor hin zu bekommen.
Gibst da irgentwo ne detalierte anleitung wie man das hin bekommt ? Habe
eine für X86 gefunden
(http://qemu-forum.ipi.fi/viewtopic.phpf=22&t=5308&p=15600#p15600) und
versucht die für einen arm anzuwenden klappt aber nicht.
Gruß Dizzy
Habe grade das hier gefunden http://repo.or.cz/w/linux-2.6/mini2440.git.
Habe mich vileicht grader falsch ausgedrückt auf jeden fall will ich ein
Betriebssystem in diese umgebung emulieren.
QEMU ist beides, sowohl Prozessorsimulator als auch Virtualisierer,
siehe http://wiki.qemu.org/Main_Page
Genau dort steht auch gleich im zweiten Satz, dass ein ARM Prozessor auf
einem PC mit QEMU simuliert werden kann. Es sollte also rein prinzipiell
funktionieren.
komme nicht weiter und dass schon viel zu Lange.
wenn ich vorgehe wie hier beschrieben:
http://trac.mixam.info/mini2440/wiki/Qemu
und diese mini2440_start.sh ausführe kommt:
$ ./mini2440_start.sh
Starting in .
./mini2440_start.sh : creating NAND empty image : ./mini2440_nand.bin
C:\create\1.0\mingw\bin\dd.exe: /dev/zero: No such file or directory
./../arm-softmmu/qemu-system-arm -M mini2440 -drive
file=./mini2440_snapshots.im
g,snapshot=on -serial stdio -kernel /tftpboot/uImage -mtdblock
./mini2440_nand.b
in -show-cursor -usb -usbdevice keyboard -usbdevice mouse -net
nic,vlan=0 -net t
ap,vlan=0,ifname=tap0 -monitor telnet::5555,server,nowait
tap: Could not open 'tap0'
Could not initialize device 'tap'
was bedeutet dass? was kann ich tuen ?
Ist es denn soo kompliziert dieses qemu zum laufen zu bringen? Hat das
schon mal jemand gemacht mit nem arm oder besser noch mit mini2440?
Was ist mit dieser GUI für windows krigt man das Damit auch hin? _Hab
die Runtergeladen und ausprobiert weis da aber nicht was ich als "Kernal
image" und was als "Ram Disk" wählen soll.
Da du anscheinend nichtmal in der Lage bist absolut aussagekräftige
(Fehler-)Meldungen zu verstehen, ist es für dich anscheinend in der Tat
zu kompliziert.
Da du das aber wohl nicht wahrhaben willst, empfehle ich dir mal deine
System Devices zu checken (/dev/zero) und das TAP-Device einzurichten.
>versuche grade unter XP mit qemu
Vergiss das mal lieber, die ARM Emulation mit Qemu auf Windows ist nie
aktuell und murks, nix läuft wies soll, dauernd abstürze.
Mach ich nur ungern.
Hast du es denn überhaut zu laufen bekommen ?
Naja dann istallier ich jetz ma linux.
hmm kann man eigenlich ne Virtuelleumgebung in einer virtuellen umgebung
erzeugen (-:?
>Hast du es denn überhaut zu laufen bekommen ?
Nach Tagen rumgebastel und Code flicken, eine etwas ältere ARM Version.
Das Qemu-Mini2440 hab ich gar nie versucht.
>hmm kann man eigenlich ne Virtuelleumgebung in einer virtuellen umgebung>erzeugen (-:?
Wieso nich?
Ich habe mir jetzt unbutu installiert und hir noch mal versucht.
Habe zur übung das das ganze mit reactOS durchgezogen war Problemlos.
Jetz henge ich beim aufruf von qemu.ich finde nicht raus wie das für den
arm geht.
Wie benutzt man zImage.integrator oder uImage.integrator die sind soweit
ich das verstanden habe für den veränderten bootablauf beim arm.
wenn ich dass wie beschrieben versuche:
qemu-system-arm -kernel zImage.integrator -initrd arm_root.img
kommt:zImage.integrator: No such file or directory
qemu: could not load kernel 'zImage.integrator'
habe ich da irgentein Package nicht istalliert ?
vergesst mal den letzten Eintrag. Da war ich etwas Übermüdet.
Aber ich habe immer noch das selbe Problem dass ich die Virtuelle
Netzwerkkarte nicht ans laufen bekomme.
wenn ich die Minni2440_start.sh:
#!/bin/bash
base=$(dirname $0)
echo Starting in $base
name_nand="$base/mini2440_nand.bin"
name_snapshots="$base/mini2440_snapshots.img"
if [ ! -f "$name_nand" ]; then
echo $0 : creating NAND empty image : "$name_nand"
dd if=/dev/zero of="$name_nand" bs=528 count=131072
fi
if [ ! -f "$name_snapshots" ]; then
echo $0 : creating empty snapshot image : "$name_snapshots"
qemu-img create "$name_snapshots" 100MB
fi
führt das zu folgender Ausgabe
cmd="$base/../arm-softmmu/qemu-system-arm \
-M mini2440 $* \
-drive file=$name_snapshots,snapshot=on \
-serial stdio \
-kernel /tftpboot/uImage \
-mtdblock "$name_nand" \
-show-cursor \
-usb -usbdevice keyboard -usbdevice mouse \
-net nic,vlan=0 \
-net tap,vlan=0,ifname=tap0 \
-monitor telnet::5555,server,nowait"
# cmd="gdbserver :3333 $cmd"
# -monitor unix:.mini2440_monitor,server,nowait"
echo $cmd
$cmd
ausführe Passiert dass :
./../arm-softmmu/qemu-system-arm -M mini2440 -drive
file=./mini2440_snapshots.img,snapshot=on -serial stdio -kernel
/tftpboot/uImage -mtdblock ./mini2440_nand.bin -show-cursor -usb
-usbdevice keyboard -usbdevice mouse -net nic,vlan=0 -net
tap,vlan=0,ifname=tap0 -monitor telnet::5555,server,nowait
can't add tap0 to bridge eth1: Operation not supported
/etc/qemu-ifup: could not launch network script
Could not initialize device 'tap'
ich habe gelesen das dass an der quem-ifup liegen kann/soll, weis aber
leider nicht was ich da ändern soll damit es klappt.
Servus,
so wie es aussieht, kann er den tap Treiber nicht auf das eth1
"drüberlegen". Du bist root? Hast du denn auch ein eth1? Was zeigt
# ifconfig eth1
Gruss,
Robert
"Operation not supported" sieht mir nach fehlendet Unterstützung im
Kernel aus. Schau mal, was modprobe -l | grep -i tap bringt. Bei Bedarf
die module mit modprobe <modul> laden. Natürlich als root.
Ansonsten schmeiss die Netzwerkkarte testweise mal aus dem Script raus.
Oooooh wie oft ich den Fehler beim OS-Coding hatte :D Da werden
Erinnerungen an hunderte Fehler, hauptsächlich im Zusammenhang mit
Pointer(Arrays) wach und lebendig :D
Das dürfte eigentlich nicht passieren. Das ist höchstwahrscheinlcih ein
kaputtes Image.
Ist das Kernel Image eines für Uboot, ein uImage, bzImage, zImage, ...
... ?
ist das richtig ?
> QEMU mini2440_reset: loaded override u-boot (size 0)> QEMU mini2440_reset: loaded /tftpboot/uImage (size 0)
size 0 klingt wie nix geladen, kein wunder das dann
> qemu: fatal: Trying to execute code outside RAM or ROM at 0x34000000
kommt.
Steht doch hier http://trac.mixam.info/mini2440/wiki/Qemu
If you have something like :
qemu: fatal: Trying to execute code outside RAM or ROM at 0x00001000
verify that u-boot.bin if well loaded
Dizzy schrieb:> ja aber warum wird die uboot.bin denn nicht ordentlich geladen> vorahanden ist ja ?>> Sorry bin ein bisschen Planlos
In order to load the u-boot.bin correctly it must be placed in the
script directory
:lesen muss du schon selber, steht doch alles beschrieben. Wenn die
pfade und file name nicht stimmen und die u-boot.bin nicht vorhanden ist
im script dir dann wird qemu nix laden können .. steht aber alles da
http://trac.mixam.info/mini2440/wiki/Qemu