cat /proc/cpuinfo
可以查看CPU flags ,常用的flag
如下:
lm
- 表示64位
处理器vmx
(Intel) /svm
(AMD) - 硬件虚拟话aes
-AES
(AES instruction set): Advanced Encryption Stand Instruction Set,也就是Intel的Advanced Encryption Standard New Instructions,AES-NI是支持AES加密和解密的硬件支持smx
-Safer Mode Extensions
也称为Intel TXT
(Intel Trusted Execution Technolgy,或者 LaGrande Technology)hypervisor
- 表示主机运行在hypervisor
之上,也就是本机是虚拟机
详细的cpu flag可以参考内核源代码 arch/x86/include/asm/cpufeature.h
util-linux-ng
软件包中有一个工具lscpu可以查询cpu的信息,对于XEN
和KVM
的虚拟机,分别可以显示如下,可以用来判断虚拟机的类型
...
Hypervisor vendor: Xen
Virtualization type: full
...
...
Hypervisor vendor: KVM
Virtualization type: full
...
如果服务器是硬件(非虚拟化),则显示如下表示是
host
主机
Virtualization: VT-x