Hallo,
ich versuche gerade, etwas Delphi nach C unter Linux zu transportieren.
Zur Zeitmessung^WZeitschätzung wird unter Delphi auf den Zyklusticker des Pentium zugegriffen: <code> var: Start,Now,SystemFrequency: Int64;
queryPerformanceFrequency( SystemFrequency ); queryPerformanceCounter(Start);
queryPerformanceCounter(Now); Time := (Now-Start)/ SystemFrequency)*1000; // in ms </code>
queryPerformanceCounter() hat sein Pendant (im Falle eines Pentium) sicher in <code src="asm/msr.h"> #define rdtscll(val) \ __asm__ __volatile__("rdtsc" : "=A" (val)) </code> Aber queryPerformanceFrequency()? <code>grep "cpu MHz" /proc/cpuinfo</code> kann es ja wohl nicht sein. Kann da jemand einen Tip geben?
Aber noch was anderes: Habe ich richtig gerechnet, daß Now-Start wohl bei normaler Nutzung auf einem Arbeitsplatzrechner niemals einen Fehler erzeugen kann? 2^63-1 / 2*10^9 (GHz) / 60 (sec) / 60 (min) / 24 (h) = 53375.99558365032 (Tage)?
Gruß Friedrich