diff options
Diffstat (limited to 'Source/Kernel/MemoryManager/Mem.ns.cpp')
-rw-r--r-- | Source/Kernel/MemoryManager/Mem.ns.cpp | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/Source/Kernel/MemoryManager/Mem.ns.cpp b/Source/Kernel/MemoryManager/Mem.ns.cpp new file mode 100644 index 0000000..d8bfc4f --- /dev/null +++ b/Source/Kernel/MemoryManager/Mem.ns.cpp @@ -0,0 +1,23 @@ +#include <Core/common.wtf.h> + +namespace Mem { + +bool kheapUsable = false; +u32int placementAddress, kheapFree; + +void *kallocInternal(u32int sz, bool align) { + if (align && (placementAddress & 0xFFFFF000)) { + placementAddress &= 0xFFFFF000; + placementAddress += 0x1000; + } + u32int temp = placementAddress; + placementAddress += sz; + return (void*)temp; +} + +void *kalloc(u32int sz, bool align) { + if (!kheapUsable) return kallocInternal(sz, align); + return 0; +} + +} |