4
當從源代碼構建qemu
時,我發現對於每個CPU
架構,目標列表有兩個選項:xx-softmmu
和xx-linux-user
。例如:「xx-softmmu」和「xx-linux-user」之間的區別和關係是什麼?
x86_64-softmmu
x86_64-linux-user
我無法搜索兩個選項之間的區別。任何人都可以介紹它們之間的區別和關係嗎?
當從源代碼構建qemu
時,我發現對於每個CPU
架構,目標列表有兩個選項:xx-softmmu
和xx-linux-user
。例如:「xx-softmmu」和「xx-linux-user」之間的區別和關係是什麼?
x86_64-softmmu
x86_64-linux-user
我無法搜索兩個選項之間的區別。任何人都可以介紹它們之間的區別和關係嗎?
簡而言之,xxx-softmmu將編譯qemu-system-xxx,它是xxx架構(系統仿真)的模擬機器。重置時,起點將是該架構的重置向量。而xxx-linux-user,編譯qemu-xxx,它允許你在xxx架構(用戶模式仿真)中運行用戶應用程序。它將尋求用戶應用程序的主要功能,並從那裏開始執行。
準確地說,它會從可執行文件(通常是'_start')的*入口點*使用用戶模式仿真時開始,但是這只是一個細節。 – minmaxavg