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.

Předmět Autor Datum
Nevím co vlastně máte na mysli, ale: - Linux (*buntu) - ak sa nemýlim, je jedno, o akú distribúciu…
ms 28.03.2014 15:49
ms
No super, tak teraz sa tu budeme doťahovať, čo je operačný systém a čo je distribúcia, pravda? Každý…
msx. 28.03.2014 16:05
msx.
Mimochodom, bolo to myslené z hľadiska mojej otázky a nie z hľadiska toho, či je Linux Ubuntu alebo…
msx. 28.03.2014 16:08
msx.
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é?
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áží…
Console 28.03.2014 16:30
Console
lazarus.freepascal.org
msx. 28.03.2014 16:38
msx.
Vo Win asi najpresnejsia vseobecne je Gettickcount (to je tych 10ms alebo 16ms presnost). Presnejsie…
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…
MM.. 28.03.2014 16:52
MM..
.. tym hladanim HPET WinAPI asi najdes multimedia timer fcie, ako uz sa pisalo vyssie http://msdn.mi…
MM.. 28.03.2014 16:59
MM..

No super, tak teraz sa tu budeme doťahovať, čo je operačný systém a čo je distribúcia, pravda? Každý, kto vie na čo sa pýtam nebude vyťahovať takéto veci a odpovie mi na otázku rovno.

Mimochodom, bolo to myslené z hľadiska mojej otázky a nie z hľadiska toho, či je Linux Ubuntu alebo Kubuntu. Takže pre tých, čo potrebujú kopnúť formulujem inak:
- Linux (*buntu) - ak sa nemýlim, je jedno, o akú distribúciu Linuxu sa jedná z hľadiska merania času

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