diff --git a/libc/include/time.h b/libc/include/time.h index 8e58b84..2fe7cb7 100644 --- a/libc/include/time.h +++ b/libc/include/time.h @@ -3,6 +3,8 @@ #include -void sleep(size_t ms); +void sleep(size_t s); +void msleep(size_t ms); +void usleep(size_t us); #endif diff --git a/libc/time/sleep.c b/libc/time/sleep.c index 7b0f8c9..89ea83a 100644 --- a/libc/time/sleep.c +++ b/libc/time/sleep.c @@ -2,7 +2,16 @@ #include #include -void sleep(uint32_t ms) { +// Seconds sleep +void sleep(size_t s) { + syscall(SYS_SLEEP, s*1000, 0, 0); +} + +// Millisecond sleep +void msleep(size_t ms) { syscall(SYS_SLEEP, ms, 0, 0); } +// Microsecond sleep +void usleep(size_t us) { /* TODO */ } +