利用 QEMU USER 模式執行 mips 程式

2022-06-20 01:45:09 字數 1226 閱讀 4793

關鍵字:qemumips

qemu是乙個處理器模擬軟體,可以用來在pc中模擬arm、mips等多種架構的軟硬體執行環境。qemu主要有兩種模擬模式:

qemu功能強大,安裝起來也很簡單。在ubuntu版本,只需要一條命令就可以把qemu(本次部落格涉及的安裝檔案)安裝好.qemu 其他架構的軟體包這裡沒有涉及就沒安裝。

apt install qemu-user-static qemu-system-mips
注意這裡我們安裝的是qemu-user模式的static版本,也就是靜態鏈結的qemu。

安裝好qemu後,我們可以用mips編譯器交叉編譯乙個小得c demo應用程式並執行起來。在此之前我們需要安裝乙個能夠編譯mips應用程式的編譯器。同樣使用一條簡單的命令就可以完成

apt install gcc-mips-linux-gnu
編寫乙個小得c demo**:

root@optiplex-7050:/home/lester# cat > xx.c << eof

#include #include int main()

eof

編譯這段**的命令如下:

root@optiplex-7050:/home/lester# mips-linux-gnu-gcc -static xx.c

root@optiplex-7050:/home/lester# file a.out

a.out: elf 32-bit msb executable, mips, mips32 rel2 version 1 (sysv), statically linked, for gnu/linux 3.2.0, buildid[sha1]=58b4213f431eedcd37b362a38662113d6ff0b7dc, not stripped

從上可以看出,編出來的程式的mips的。(需要注意的是要加上-static的編譯選項否則執行時候會提示找不到鏈結庫)

然後使用 qemu 執行:

root@optiplex-7050:/home/lester# qemu-mips-static ./a.out 

0x1234, htole32 0x34120000, htobe32 0x1234

利用Fiddler或Charles進行mock資料

使用場景 伺服器資料不符合測試條件時,我們可以通過在本地建立虛擬資料來打到測試用例所描述的條件。fiddler使用方法 1 首先在本地建立txt資料 將抓到的response中的json資料拷貝到記事本,我們根據需要進行修改,然後點選儲存。文字儲存格式utf 8或asci 2 利用fiddler重定...

利用CWinThread實現跨執行緒父子MFC視窗

標籤 mfc物件 mfc視窗跨執行緒 mfc介面執行緒 跨執行緒訪問mfc物件 原始出處 作者資訊和本宣告。否則將追究法律責任。原則上,mfc物件只能由建立該物件的執行緒訪問,而不能由其它執行緒訪問.這是因為mfc視窗中有乙個windows handle maps,這個maps同執行緒相關,也就是說...

M9 利用destructors避免洩漏資源

1 在堆上獲取的動態資源,使用者忘記delete,或者由於異常導致沒有沒執行到delete,都會造成資源洩漏。2 我們知道,棧上的物件,離開作用域,必定要執行析構方法。即使丟擲異常,會堆疊回滾,保證已經構造的物件進行析構。3 因此,可以使用棧上的物件,管理資源,在析構方法中釋放資源,保證不會資源洩漏...