Pregunta

Quiero aprender a programar en ensamblador para PowerPC y ARM, pero soy incapaz de comprar hardware real para este propósito. Estoy pensando en usar QEMU para eso. Sin embargo no estoy seguro de si emula ambas arquitecturas suficientemente bien, que voy a compilar y ejecutar mis programas en ensamblador nativo en él?

¿Fue útil?

Solución

QEMU funciona bien para probar los programas corrección (es decir, si el código sería adecuadamente ejecuta en un ARM real o PowerPC), pero no es bueno para el programa eficiencia pruebas: la la emulación no es precisa ciclo, y la velocidad medida con QEMU no puede ser fiable (o incluso poco fiable) correlacionada con la velocidad en el hardware real.

Además, QEMU no accede trampa de la memoria no alineados, que no es un problema para la emulación de PowerPC (PowerPC tolera accesos sin alinear), pero puede ser para ARM (un acceso no alineado, por ejemplo, la lectura de una palabra de 32 bits en la RAM de una dirección que no es un múltiplo de 4, trabajará bien con QEMU pero daría lugar a una excepción en un cierto procesador ARM).

Además de estos puntos, QEMU está muy bien para el desarrollo de montaje en ARM o MIPS (no hemos probado PowerPC, porque me encontré con un viejo iBook en eBay por eso, pero lo he hecho ARM y MIPS montaje con QEMU y luego corrió la código resultante en el hardware real, y esto trabajado). Puede emular ya sea todo un sistema y ejecutar Debian en ella (en cuyo caso el compilador, enlazador, editor de texto ... También se ejecutará en la emulación), o utilice la "emulación de modo de usuario" en el brazo / MIPS ejecutable es ejecutado directamente, con un envoltorio que convierte las llamadas al sistema en los que corresponden el PC anfitrión (esto supone que el anfitrión es un PC con Linux). Este último es más conveniente (que tiene acceso a su directorio normal, herramientas de programación son nativos ...), pero requiere la instalación de herramientas de desarrollo de cruz. Ver buildroot para eso (y enlace con -static, esto evitará muchos dolores de cabeza).

Otros consejos

Desde que he encontrado indicios de que Debian para PowerPC y Brazo se puede ejecutar en QEMU, supongo que esto no será un problema.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top