根據前面描述 CPU 的基本知識, 可以知道 CPU 有物理 CPU, 多核 CPU, 超線程 CPU 之分。
事實上, QEMU 支持所有這些配置, 下面一一舉例來說明如何模擬這些 CPU.
基本的 CPU 模擬
下面的指令模擬了一個具有 1 個物理 CPU, 兩個邏輯 CPU 的系統
$ qemu -enable-kvm -m 1024 ArchLinux.img -smp 2,sockets=1
在 guest 上看看 cpuinfo 的信息:
可以看到兩個邏輯 CPU 是雙核的, 沒有使用超線程技術。
指定核心數
模擬一個具有 1 個物理 CPU(雙核), 四個邏輯 CPU 的系統。 此時為了滿足雙核 四線程的概念, 得啟用超線程技術, 如下
指定 thread 數
模擬一個具有 2 個物理 CPU, 四個邏輯 CPU 的系統, 啟用超線程技術, 每個核心兩個 線程。 不難算出, 此時每個 CPU 都是單核的(4 = 2*2*1)。
其它
事實上, QEMU 還有更強大的 CPU 的配置, 比如配置 CPU 指令級, 配置 NUMA, 等等, 這里不一一列舉.
-
Linux
+關注
關注
87文章
11475瀏覽量
213011 -
qemu
+關注
關注
0文章
57瀏覽量
5636
發布評論請先 登錄
Linux利器:QEMU!用它模擬開發板能替代真開發板? 精選資料分享
Linux利器:QEMU!用它模擬開發板能替代真開發板?精選資料分享
手把手教你在Ubuntu系統中通過QEMU來運行基于Arm CPU的Linux系統
請問如何確認qemu-vexpress-a9 second cpu跳轉地址?
分享一種基于qemu的arm-linux虛擬機搭建方法
嵌入式編程中為什么使用qemu?qemu的實際應用
如何在MIPS64 Release 6 CPU上運行QEMU的Linux SMP

基于QEMU系統模擬器Xilinx/QEMU的運行與調試
第5章 在QEMU中進行軟件測試
Linux:QEMU的網絡配置

如何搭建一個用于學習linux的QEMU環境?
使用qemu搭建arm嵌入式linux開發環境

評論