diff options
Diffstat (limited to 'kernel/utility.cpp')
-rw-r--r-- | kernel/utility.cpp | 51 |
1 files changed, 0 insertions, 51 deletions
diff --git a/kernel/utility.cpp b/kernel/utility.cpp deleted file mode 100644 index 12e88fd..0000000 --- a/kernel/utility.cpp +++ /dev/null @@ -1,51 +0,0 @@ -#include <hilbert/kernel/utility.hpp> - -void *operator new(size_t, void *ptr) { - return ptr; -} - -void operator delete(void *, void *) {} - -namespace hilbert::kernel::utility { - - void mark_bitmap_region_zero( - uint64_t *bitmap, uint64_t start_i, uint64_t end_i) { - - if (start_i % 64 != 0) { - uint64_t keep = (1 << (start_i % 64)) - 1; - bitmap[start_i / 64] &= keep; - start_i = (start_i / 64 + 1) * 64; - } - - if (end_i % 64 != 0) { - uint64_t replace = (1 << (end_i % 64)) - 1; - bitmap[end_i / 64] &= ~replace; - end_i = (end_i / 64) * 64; - } - - for (uint64_t i = start_i / 64; i < end_i / 64; ++i) - bitmap[i] = 0; - - } - - void mark_bitmap_region_one( - uint64_t *bitmap, uint64_t start_i, uint64_t end_i) { - - if (start_i % 64 != 0) { - uint64_t keep = (1 << (start_i % 64)) - 1; - bitmap[start_i / 64] |= ~keep; - start_i = (start_i / 64 + 1) * 64; - } - - if (end_i % 64 != 0) { - uint64_t replace = (1 << (end_i % 64)) - 1; - bitmap[end_i / 64] |= replace; - end_i = (end_i / 64) * 64; - } - - for (uint64_t i = start_i / 64; i < end_i / 64; ++i) - bitmap[i] = 0xffffffffffffffff; - - } - -} |