Pergunta

Quero aprender a programação no Assembler for PowerPC e ARM, mas não consigo comprar hardware real para esse fim. Estou pensando em usar o Qemu para isso. No entanto, não tenho certeza se emula as duas arquiteturas o suficiente, que vou compilar e executar meus programas no assembler nativo nele?

Foi útil?

Solução

Qemu funciona bem para o programa de teste correção (ou seja, se o código funcionaria corretamente em um braço ou powerpc real), mas não é bom para o programa de teste eficiência: A emulação não é precisa do ciclo e a velocidade medida com Qemu não pode ser de maneira confiável (ou mesmo de maneira irrelevante) correlacionada com a velocidade no hardware verdadeiro.

Além disso, o qemu não prenderá acessos de memória inalinados, o que não é um problema para a emulação do PowerPC (o PowerPC tolera acessos inalignados), mas pode ser para o ARM (um acesso inalignado, por exemplo, lendo uma palavra de 32 bits em RAM de um endereço que não é Um múltiplo de 4, funcionará bem com o Qemu, mas desencadearia uma exceção em um processador de ARM verdadeiro).

Além desses pontos, o qemu é bom para o desenvolvimento da montagem no ARM ou MIPS (não experimentei o PowerPC, porque encontrei um iBook antigo no eBay para isso; mas fiz as montagens de braço e mips com Qemu e depois executei o código resultante em Hardware verdadeiro, e isso funcionou). Você pode imitar um sistema inteiro e executar o Debian nele (nesse caso, o compilador, o vinculador, o editor de texto ... também será executado em emulação) ou usará a "emulação do modo de usuário", onde o executável do braço/MIPS é executado Diretamente, com um invólucro que converte o sistema chama para o PC host (isso pressupõe que o host seja um PC executando o Linux). O último é mais conveniente (você tem acesso ao seu diretório doméstico normal, as ferramentas de programação são nativas ...), mas requer a instalação de ferramentas de desenvolvimento cruzado. Ver BuildRoot para isso (e link com -static, isso evitará muitas dores de cabeça).

Outras dicas

Desde que encontrei sinais de que Debian PowerPC e para BRAÇO Pode ser executado no Qemu, suponho que isso não seja um problema.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top