aboutsummaryrefslogtreecommitdiff
path: root/arch/x86_64/include
diff options
context:
space:
mode:
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