それは本当にPCの歴史の特徴です。オリジナルの IBM-PC は、バッテリーでバックアップされたリアルタイム クロックと呼ばれるチップを使用していました (これらのバッテリーを交換する必要があったことを覚えていますか?)。これらの周波数は 32.768 kHz (2^15 サイクル/秒) で、16 ビット システムでの時間を簡単に計算できます。このリアルタイム クロックは、古いオペレーティング システムの割り込みシステムを介して利用できる CMOS に書き込まれました。
10MHz のクロック速度を指定する High Precision Event Timerと呼ばれる新しい標準が Microsoft と Intel から出ています
http://www.intel.com/hardwaredesign/hpetspec_1.pdf HPET は 100MHz 以上で同調できます。10Mhz では 100 ナノ秒の分解能を得ることができ、100MHZ では 10 ナノ秒の分解能を得ることができるはずです。
次のオペレーティング システムは、HPET を使用できないことが知られています: Windows XP、Windows Server 2003、およびそれ以前の Windows バージョン、以前の Linux バージョン
次のオペレーティング システムは、HPET を使用できることが知られています: Windows Vista、Windows 2008、Windows 7、Mac OS X の x86 ベース バージョン、2.6 カーネルを使用する Linux オペレーティング システム、および FreeBSD。
Linux カーネルでは、元の「rtc」ドライバーではなく、新しい「rtc-cmos」ハードウェア クロック デバイス ドライバーが必要です。
この余分な解像度にアクセスするにはどうすればよいでしょうか? 以前のスタックオーバーフローの記事からカット アンド ペーストすることはできましたが、そうではありませんでした。