2008-10-17 11 views
11

¿Linux/Unix/Posix proporciona una API a las aplicaciones de espacio de usuario para acceder a un reloj monótonamente creciente, con una precisión de centisegundo a milisegundo?¿Proporciona Linux un reloj que aumenta monótonamente a las aplicaciones?

En Linux,/proc/uptime proporciona una representación en serie de un número en coma flotante de la cantidad de segundos que el sistema ha estado activo.

gettimeofday (2) no proporciona un reloj monótonamente creciente.

que podría utilizar getitimer (2) en el dominio del tiempo ITIMER_REAL, configurar el temporizador para comenzar en el máximo (depende de la plataforma) e ignorar la señal generada, pero de acuerdo a la página del manual el más largo que el temporizador puede funcionar durante es de aproximadamente 100 días, que es más corto que mi tiempo de ejecución esperado.

Respuesta

14

Uso del clock_gettime() función POSIX con CLOCK_MONOTONIC. Vea el man page para más detalles.

6

No es clock_gettime:

struct timespec tp; 
clock_gettime(CLOCK_MONOTONIC, &tp); 
Cuestiones relacionadas