2012-11-25 10 views
8

Jaki jest standardowy sposób uzyskania aktualnego czasu w sekundach (od epoki) w module jądra?Uzyskaj aktualny czas w sekundach w module jądra

Widziałem technik obejmujących coraz xtime które są bardzo rozwlekły i obejmować while-pętle i zamki. Musi być lepszy sposób.

[To nie jest duplikat. Przejrzałem poprzednie pytania na temat SO. Odpowiedzi na wiele z nich albo nie określają użytej funkcji, albo niepoprawnie odwołują się do time.h, który nie jest dozwolony w jądrze]

+0

co z http://stackoverflow.com/questions/5077192/how-to-get-current-hour-time-of-day-in-linux-kernel-space – MOHAMED

Odpowiedz

13

Możesz użyć do tego celu .

/* getnstimeofday - Returns the time of day in a timespec */ 
void getnstimeofday(struct timespec *ts) 

gdzie struct timespec jest:

struct timespec { 
    time_t tv_sec;  /* seconds */ 
    long tv_nsec; /* nanoseconds */ 
}; 

I tak, trzeba #include <linux/time.h>.

+0

Dead link. Wyszukiwarka Google dla "man getnstimeofday" otrzymuje wiele trafień. –

+0

@KeithThompson Zmieniono łącze. Dzięki za heads-up! – cnicutar

+1

Link do strony podręcznika może być bardziej przydatny. –

Powiązane problemy