
Presnosť merania času vo Windows a Linuxe
S akou najvyššou presnosťou sa dá merať čas v týchto systémoch?
- Windows XP
- Windows Vista
- Windows 7
- Windows 8
- Linux (*buntu) - ak sa nemýlim, je jedno, o akú distribúciu Linuxu sa jedná
Ide mi o to, že vo Windows sa síce dá merať čas v milisekundách, ale s presnosťou na 1/60 (?) sekundy. Lenže problém je, že niekde som čítal, že tento interval je pri rôznych Windows rôzny a tiež je iný aj pri Linuxe.
Okrem toho by ma zaujímalo, či je vôbec možné merať vo Windows a v Linuxe čas s vyššou presnosťou než tieto intervaly.
Vo Win asi najpresnejsia vseobecne je Gettickcount (to je tych 10ms alebo 16ms presnost).
Presnejsie metody pouzivaju HW, napr. ACPI counter apod, ale na to by si potreboval driver (ptz musis ist na HW I/O space), a musis sa dostat na ACPI tabulky alebo co ja viem jak ziskas I/O adresu ACPI countera. Ak ju ziskas a ak mozes ist na I/O tak mas presnost ca. 0.3us
Ako tak čítam čo píšeš, asi najvhodnejšie pre moje potreby bude ozaj GetTickCount. Lenže aká je tá presnosť naprieč Windowami a Linuxom? Niekde som tuším čítal, že nejaké staršie Windowsy majú 18,2x za sekundu úpravu času a novšie (tuším od Win95 alebo WinXP) cca 60x za sekundu. Linux, ten má iný interval, len sa neviem dopátrať k tomu aký. V podstate mi nerobí problém si to v Linuxe zistiť, lenže ten mi nejako blbne a odmieta sa mi pripojiť na wifi, takže nemôžem nainštalovať Lazarus atď.