我知道我们可以使用wrmsr
和rdmsr
指令来设置性能计数器并读取通用性能计数器寄存器。
但是,我的问题是:
我们是否需要在发布之前重置通用性能计数器寄存器wrmsr
?
换句话说,对于下面的代码,我们需要在下面的代码之前重置性能计数器吗?如果必须,我们如何重置它?
mov $0x0001010E, %eax # Write selector value to EAX
xor %edx, %edx # Zero EDX
mov $0x187, %ecx # Write logical register id to ECX (IA32_PERFEVTSEL1)
wrmsr