Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem 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.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Ano dá. Používají se na to specializované multimediální timery. (ve W)
Console 28.03.2014 16:15
Console
Ale čo potom v Linuxe? Jedná sa mi o použitie v Lazarovi. Je v ňom niečo také priamo obsiahnuté? nový
msx. 28.03.2014 16:22
msx.
Pod linuxem jsem ještě neprogramoval, takže poradit můžu jen omezeně. Multimediální timery se dokáží… nový
Console 28.03.2014 16:30
Console
lazarus.freepascal.org nový
msx. 28.03.2014 16:38
msx.
Vo Win asi najpresnejsia vseobecne je Gettickcount (to je tych 10ms alebo 16ms presnost). Presnejsie… nový
MM.. 28.03.2014 16:51
MM..
Ako tak čítam čo píšeš, asi najvhodnejšie pre moje potreby bude ozaj GetTickCount. Lenže aká je tá p… poslední
msx. 28.03.2014 21:35
msx.
A ak ma tvoj PC HPET, tak existuju aj presnejsie metody, ale zhlavy neviem jake su na to WinAPI fcie… nový
MM.. 28.03.2014 16:52
MM..
.. tym hladanim HPET WinAPI asi najdes multimedia timer fcie, ako uz sa pisalo vyssie http://msdn.mi… nový
MM.. 28.03.2014 16:59
MM..

Pod linuxem jsem ještě neprogramoval, takže poradit můžu jen omezeně.
Multimediální timery se dokáží dostat na mnohem větší přesnost, než "klasické".
Používají se u her a v linuxu hry taky existují, takže nějaká možnost tam bude.

Lazar neznám :-)

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ď.

Zpět do poradny Odpovědět na původní otázku Nahoru