RDTSC 命令が使用可能かどうかを確認したい。Intel Pentium 以降のプロセッサが必要で、レジスタ CR4 の TSD フラグがクリアされているか、セットされていて CPL が 0 に等しい必要があります。
したがって、現在の特権レベル (CS セグメント レジスタのビット 0 と 1) を取得するのに問題はありません。また、命令自体がサポートされているか (CPUID.1:EDX[4] = 1) を確認しても問題ありません。
しかし (それが問題です)、これはユーザーモード (PL3) でも実行する必要があります。しかし、ユーザーモードで制御レジスタ CR4 を読み取ることができません。
オペレーティング システムがタイムスタンプ カウンターへのアクセスを制限しているかどうかを確認する他の方法はありますか?