aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/include
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2026-03-16 22:30:39 +0100
committerFelix Morgner <felix.morgner@ost.ch>2026-03-16 22:30:39 +0100
commit796ce76185b00feb86f6b4f738ac6f953c247116 (patch)
treeefc18c2df1f05e8c60df2a6eda227d53a78ebba3 /arch/x86_64/include
parent69a92ce3077f01ce43daef5681db298594a4badc (diff)
downloadteachos-796ce76185b00feb86f6b4f738ac6f953c247116.tar.xz
teachos-796ce76185b00feb86f6b4f738ac6f953c247116.zip
arch/x86_64: begin new allocator draft
Diffstat (limited to 'arch/x86_64/include')
-rw-r--r--arch/x86_64/include/arch/memory/higher_half_mapper.hpp19
1 files changed, 19 insertions, 0 deletions
diff --git a/arch/x86_64/include/arch/memory/higher_half_mapper.hpp b/arch/x86_64/include/arch/memory/higher_half_mapper.hpp
new file mode 100644
index 0000000..66fb58b
--- /dev/null
+++ b/arch/x86_64/include/arch/memory/higher_half_mapper.hpp
@@ -0,0 +1,19 @@
+#ifndef TEACHOS_X86_64_HIGHER_HALF_MAPPER_HPP
+#define TEACHOS_X86_64_HIGHER_HALF_MAPPER_HPP
+
+#include "kapi/memory.hpp"
+namespace arch::memory
+{
+
+ struct higher_half_mapper : kapi::memory::page_mapper
+ {
+ auto map(kapi::memory::page page, kapi::memory::frame frame, flags flags) -> std::byte * override;
+
+ auto unmap(kapi::memory::page page) -> void override;
+
+ auto try_unmap(kapi::memory::page page) noexcept -> bool override;
+ };
+
+} // namespace arch::memory
+
+#endif \ No newline at end of file