簡體   English   中英

運行我的引導時出現qemu錯誤

[英]qemu error while running my boot

我編寫了一個簡短的啟動代碼,並嘗試通過以下命令與Qemu一起運行:

qemu-system-arm.exe -M多用途pb -cpu cortex-a9-內核boot.bin

我希望代碼可以加載到地址0x8400000,但是qemu向我返回了錯誤

嘗試在RAM或ROM外部以0x84000000執行代碼,這通常意味着發生以下情況之一:

(1)您告訴QEMU為錯誤的機器類型執行內核,並且在啟動時崩潰(例如,嘗試在多功能pb QEMU計算機上運行樹莓派內核)(2)您沒有給QEMU提供內核或BIOS文件名QEMU完全執行了一個無操作指令的ROM,直到它掉到最后為止(3)您的來賓內核有一個錯誤,並跳到無處崩潰

這幾乎總是前兩個之一,因此請檢查命令行,並為該計算機使用正確的內核類型。 如果您認為選項(3)很有可能,則可以嘗試使用-d調試選項調試客戶機; 特別是,-d guest_errors將導致日志此時包括來賓寄存器狀態的轉儲。

執行無法繼續; 在這里停止。

所以我想我的代碼尚未開始運行,因為它沒有加載到正確的位置

我怎么了

謝謝

您說“我希望代碼被加載到地址0x8400000”,但是QEMU的錯誤消息顯示“ 0x84000000”,它不是相同的數字(它有一個額外的0)。 這表明您在鏈接描述文件中有錯字,或者正在創建boot.bin文件的內容有錯。 (我假設boot.bin是一個ELF文件,QEMU會在ELF文件指定的地址上加載該文件,因為否則,它將假定它是一個能夠自我重定位的Linux內核映像,否則將被加載到RAM中。)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM