2016-03-27 117 views
0


我即將開始學習PowerPC架構,並且我已經從恩智浦網站下載了一些參考手冊以及他們的SDK,因此我甚至可以構建裸板應用程序。準確地說,我使用的是虛擬主機環境。我沒有任何帶有PowerPC處理器的主板,因此我想使用模擬器進行調試。
在這一步我有點困惑。所以,我建立了裸機應用程序('Hello World')。現在我想用模擬器運行它。我試圖使用這樣的命令:qemu-system-ppc -machine ppce500 -cpu e500v2 -nographic -kernel ./a.out,什麼也沒看見。 qemu只是加載主機CPU。 ./a.out是用命令$CC -static ./tst.c構建的二進制文件。所以,現在我甚至不知道如何處理qemu
對於那些想要幫助的人:我將虛擬主機環境用於帶有e500v2內核的飛思卡爾P1010處理器,二進制文件使用它們的fsl-*實用程序構建。任何PowerPC模擬器建議?

編譯來源是:

$ cat ./tst.c 
#include <unistd.h> 
#define STRING "This is a test.\n" 
int main(void) { 
    write(1, STRING, sizeof(STRING) - 1); 
    return 0; 
} 

編譯發生,如:

$ echo $CC 
powerpc-fsl-linux-gnuspe-gcc -m32 -mcpu=8548 -mabi=spe -mspe -mfloat-gprs=double --sysroot=/opt/fsl-qoriq/1.9/sysroots/ppce500v2-fsl-linux-gnuspe 
$ $CC -static -o tst.bin ./tst.c 
$ file ./tst.bin 
./tst.bin: ELF 32-bit MSB executable, PowerPC or cisco 4500, version 1 (SYSV), statically linked, for GNU/Linux 2.6.32, BuildID[sha1]=63b307e7afe9de0b2781f2f92b5f1b3a803f850d, not stripped 

回答

1

除了使用模擬器,你爲什麼不問一個真正的免費虛擬機做開發/學習?從你說的話來看,它應該會更好。

你可以問一個VM在以下網站:

[巴西] http://openpower.ic.unicamp.br/minicloud/

[中國] https://dashboard.ptopenlab.com

+1

虛擬機也不錯。我用'模擬器'來概括需求。感謝您的鏈接。無論如何,minicloud網站提供使用一些操作系統。我需要的是裸機處理器的虛擬化或模擬,以便能夠通過實踐來探索架構,而不僅僅是理論。 –

1

你沒有看到任何東西因爲你問QEMU -system-powerpc運行用戶空間二進制文件而不是內核。

如果您只是想嘲諷用戶空間編程,請嘗試使用qemu-ppc二進制代碼,因爲它可以通過執行翻譯系統調用等操作來運行32位PowerPC用戶空間。

另一個選擇,如果你想編程裸機,就是開始寫你自己的微操作系統到一個特定的機器類型(即你將不得不實現你調用的write()調用)。