【发布时间】:2011-10-12 19:36:20
【问题描述】:
我正在研究 RDTSC 并了解如何将它虚拟化以用于 VirtualBox 和 VMWare 等虚拟机。为什么 Intel/AMD 不厌其烦地虚拟化这条指令?
我觉得它可以很容易地用一个陷阱来模拟,而且它并不是一个超级通用的指令(我测试过,在禁用硬件 RDTSC 虚拟化的虚拟机中一般使用没有明显的减速)。
但是,我知道 Intel/AMD 不会费尽心思将此指令添加到虚拟化硬件中,除非能够非常快速地执行很重要。
有人知道为什么吗?
【问题讨论】:
-
请注意,根据我的测试,在标准 EC2 实例上,RDTSC 是 not 虚拟化的(我在 this question about haveged 使用了测试 - 这似乎也得到了评论的证实在this thread
标签: hardware virtualization rdtsc