擅长:python、mysql、java
<p>仅供参考,如果它是一个准虚拟虚拟机,那么应该有一个/proc/xen/capabilities文件。如果它的内容是“control\d”,那么您运行的是dom0-else,您运行的是domU。<br/>
不要依赖内核版本。如果VM是用一个定制的内核或者不同的内核版本或者甚至是一个现代的PV-ops内核(不像REDHAT的内核,它没有“xen”字符串),那么您的代码就不能工作了。在</p>
<p>另一方面,还有其他妙招。cpuid指令就是这样一个例子。我不知道如何在python中实现,但是如果您将eax设置为1并调用cpuid,ECX的第31位将得到答案。如果已设置,则表示您正在运行hypervisor。否则,你就不是了。但这只适用于64位平台。在</p>