2
我要檢查,如果RDTSC指令是可用的。必須有一個Intel Pentium或更新的處理器,並且寄存器CR4中的TSD標誌清除或設置且CPL等於0.時間戳計數器限制
因此,獲得當前特權級別(位0和位1 CS段寄存器)。此外,檢查指令本身是否受支持也沒有問題(CPUID.1:EDX [4] = 1)。
但(這就是問題),這也必須在用戶模式(PL3)運行。但是,我無法在用戶模式下讀取控制寄存器CR4。
是否有任何其他的方法來檢查,如果操作系統不限制訪問時間戳計數器?
(+1),這似乎是唯一的解決辦法,我可以得到,太糟糕了。 – 0xbadf00d 2011-04-01 15:43:30