2
3 ipsw是ios的韌體其中的檔案多以img3/img4格式加密的
需要對應的fw key做解密
目前只能處理img3格式
新版硬體只能通過ota包中提取檔案
git clone .git
cd xnu-qemu-arm64
./configure --target-list=aarch64-softmmu --disable-capstone
make -j16
如果編譯qemu時出現缺少pkg-config**
➜ xnu-qemu-arm64 git:(master) ✗ ./configure --target-list=aarch64-softmmu --disable-capstone
直接 brew install pkg-config即可
cd 到 iemu_prep_test3這個目錄使用編譯好的qemu(在~/desktop/macos/xnu-qemu-arm64/aarch64-softmmu/qemu-system-aarch64目錄) 開始啟動xun核心的iphone
/users/test/desktop/macos/xnu-qemu-arm64/aarch64-softmmu/qemu-system-aarch64 -m iphone6splus-n66-s8000,kernel-filename=kernel.fout,dtb-filename=device_tree.fout,secmon-filename=secure_monitor.fout,ramdisk-filename=boot_image.fout,tc-filename=static_tc.fout,kern-cmd-args=
"debug=0x8 kextlog=0xfff cpus=1 rd=md0 serial=2" -cpu max -m 6g -serial mon:stdio
最後成功起來了乙個bash:
/iosbinpack64/usr/bin/uname -a
問題一:新版mac上的clang編譯缺少標頭檔案fatal error: 『stdio.h』 file not found
#import
^在編譯的過程中會提示 not found。我是macos 10.14.5 (18f132)
於是就去網上搜,得知 mac 下 stdio.h 標頭檔案應該位於 /usr/include。搞笑的是,include 資料夾消失了!去網上搜,發現很多人都遇到這個問題,估計是 xcode 公升級帶來的 bug
同時也給了修補方案
安裝完成後我們發現/usr/include裡的標頭檔案已經出現了:
疑惑:這個xcode目錄下也有會標頭檔案,沒有關閉rootless 我們無法拷貝檔案和鏈結系統目錄
而剛才那個pkg檔案做到了移動檔案到/usr目錄,好奇是怎麼做到的?
第二個問題:編譯配置qemu時出現缺少pkg-config
➜ xnu-qemu-arm64 git:(master) ✗ ./configure --target-list=aarch64-softmmu --disable-capstone
直接 brew install pkg-config即可
第三個問題,在xun啟動的最後一步出現了這個:
參考:
以Qemu模擬Linux,學習Linux核心
維護日誌 2013 02 21 建立文件 注 文章參考自 是對該篇文章的一些補充和說明。文章內所使用的環境是ubuntu 12.04,如果其中遇到編譯問題,請自行參考錯誤說明,配置依賴環境 0.準備 我們所有的工作都在指定目錄下工作,使用以下變數來代替相關目錄。kernel 核心工作目錄 linux...
在qemu環境中用gdb除錯Linux核心
對使用者態程序,利用gdb除錯 是很方便的手段。而對於核心態的問題,可以利用crash等工具基於coredump檔案進行除錯。其實我們也可以利用一些手段對linux核心 進行gdb除錯,qemu就是一種。qemu是一款完全軟體模擬 binary translation 的虛擬化軟體,在虛擬化的實現中...
qemu簡單使用
qemu img create abytec.img 16m qemu system i386 使用 i386 命令啟動 qemu。qemu 可以 幾種不同的系統,但是要引導到 dos,我們需要有乙個 intel 相容的 cpu。m 16 定義乙個 16mb 記憶體的虛擬機器。它看起來很小,但是 d...