aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFelix Morgner <felix.morgner@ost.ch>2025-12-01 15:55:52 +0100
committerFelix Morgner <felix.morgner@ost.ch>2025-12-01 15:55:52 +0100
commitcf833d0e8676f6a5ee6b536b4cb5202e9446ab87 (patch)
tree70d11aae0b3d306faaf57021c34ebb1315eafc8a
parent57d140f41b462483b8f32a883cbb0b599b9feaed (diff)
downloadteachos-cf833d0e8676f6a5ee6b536b4cb5202e9446ab87.tar.xz
teachos-cf833d0e8676f6a5ee6b536b4cb5202e9446ab87.zip
x86_64/memory: prevent copying of page root
-rw-r--r--arch/x86_64/include/x86_64/memory/paging_root.hpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86_64/include/x86_64/memory/paging_root.hpp b/arch/x86_64/include/x86_64/memory/paging_root.hpp
index 365e180..e9b8eef 100644
--- a/arch/x86_64/include/x86_64/memory/paging_root.hpp
+++ b/arch/x86_64/include/x86_64/memory/paging_root.hpp
@@ -15,6 +15,11 @@ namespace teachos::memory::x86_64
{
auto static get() -> paging_root &;
+ paging_root(paging_root const &) = delete;
+ paging_root(paging_root &&) = delete;
+ auto operator=(paging_root const &) -> paging_root & = delete;
+ auto operator=(paging_root &&) -> paging_root & = delete;
+
[[nodiscard]] auto translate(linear_address address) const -> std::optional<physical_address>;
[[nodiscard]] auto translate(page page) const -> std::optional<frame>;