diff options
Diffstat (limited to 'kernel/lib')
-rw-r--r-- | kernel/lib/kspin.c | 15 | ||||
-rw-r--r-- | kernel/lib/ktime.c | 15 |
2 files changed, 15 insertions, 15 deletions
diff --git a/kernel/lib/kspin.c b/kernel/lib/kspin.c new file mode 100644 index 0000000..ad0b512 --- /dev/null +++ b/kernel/lib/kspin.c @@ -0,0 +1,15 @@ +#include <lib.h> +#include <comus/drivers/pit.h> +#include <comus/asm.h> + +void kspin_seconds(size_t seconds) +{ + kspin_milliseconds(seconds * 1000); +} + +void kspin_milliseconds(size_t milliseconds) +{ + uint64_t start = ticks; + while ((ticks - start) < milliseconds) + int_wait(); +} diff --git a/kernel/lib/ktime.c b/kernel/lib/ktime.c deleted file mode 100644 index 9bfcaa9..0000000 --- a/kernel/lib/ktime.c +++ /dev/null @@ -1,15 +0,0 @@ -#include <lib/klib.h> -#include <comus/time.h> - -void kspin_sleep_seconds(size_t seconds) -{ - const uint64_t start = unixtime(); - - while (1) { - const uint64_t now = unixtime(); - - if (now - start > seconds) { - return; - } - } -} |