X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?p=pintos-anon;a=blobdiff_plain;f=src%2Fdevices%2Ftimer.h;h=cd3d6bbfeb8d94046224d2676326705247f4a710;hp=db76f6d3456345f9380dfdf880f314210cbe4b81;hb=cc5c971c3cc498d528a2f74f4dc2f8e27a690311;hpb=275c68384d654e4c1f9ac4a3eadd2c3d4e46cf86 diff --git a/src/devices/timer.h b/src/devices/timer.h index db76f6d..cd3d6bb 100644 --- a/src/devices/timer.h +++ b/src/devices/timer.h @@ -8,13 +8,22 @@ #define TIMER_FREQ 100 void timer_init (void); +void timer_calibrate (void); + int64_t timer_ticks (void); int64_t timer_elapsed (int64_t); +/* Sleep and yield the CPU to other threads. */ void timer_sleep (int64_t ticks); +void timer_msleep (int64_t milliseconds); +void timer_usleep (int64_t microseconds); +void timer_nsleep (int64_t nanoseconds); + +/* Busy waits. */ +void timer_mdelay (int64_t milliseconds); +void timer_udelay (int64_t microseconds); +void timer_ndelay (int64_t nanoseconds); -int64_t timer_ms2ticks (int64_t ms); -int64_t timer_us2ticks (int64_t us); -int64_t timer_ns2ticks (int64_t ns); +void timer_print_stats (void); #endif /* devices/timer.h */