Qemu挂在主系统调用中

时间:2012-07-27 05:19:00

标签: operating-system qemu osdev pintos

我正在研究Pintos项目。当我为正确的优先级调度实现优先级捐赠机制时,QEMU模拟器只是挂起(我附加了一个图像,并且pintos的转储如下)。我尝试调试并插入printf语句,但是在通过远程主机调试qemu时,它一进入main就会挂起。任何人都可以告诉我如何解决所有这些问题。否则我将不得不重新安装整个代码和qemu以及介于两者之间的所有内容。

来自pintos的转储:

sankalps@ubuntu:~/projects/os_projects/pintos/src$ pintos --gdb -- run alarm-zero
qemu -hda /tmp/IbpgyXzQhW.dsk -m 4 -net none -serial stdio -s -S
open /dev/kvm: No such file or directory
Could not initialize KVM, will disable KVM support
PiLo hda1
Loading.........
Kernel command line: run alarm-zero
made it till here 

Pintos emulated on QEMU Pintos在QEMU上模拟

1 个答案:

答案 0 :(得分:4)

我认为你没有合适的内核版本,或者你的硬件不支持虚拟化,可能都是

lsmod | grep kvm
查看模块kvm和kvm_intel是否已加载
如果没有,则使用modprobe kvm kvm_intel加载模块。  如果这些模块无法加载,那么你的机器可能无法支持KVM,你可以通过grep --color vmx /proc/cpuinfo找到这个,如果输出包含vmx或svx,则支持硬件虚拟化,你需要正确的内核版本.Linux开始提供KVM支持从版本2.6.36.4。编译新内核我猜你不会遇到这个问题。如果问题是你的机器能够虚拟化但内核不支持。关于如何设置机器的link 。查看实验室和工具链接。查看提供的课程列表并搜索实验室和工具,你会发现很多关于如何设置QEMU,BOCHS,启动VM等的东西。 您也可以尝试使用bochs,我假设您正在将pintos作为操作系统课程的一部分。因此,可以通过设置--EMULATOR=bochs(类似的东西)来更改要在命令行中使用的仿真器。 虽然你的VM会慢一点,但你不会遇到KVM支持不可用的问题。

干杯:)