diff --git a/Kernel/VM/Region.h b/Kernel/VM/Region.h index 5d4a12cf89..4f07ce9620 100644 --- a/Kernel/VM/Region.h +++ b/Kernel/VM/Region.h @@ -27,12 +27,14 @@ public: ~Region(); + const Range& range() const { return m_range; } VirtualAddress vaddr() const { return m_range.base(); } size_t size() const { return m_range.size(); } bool is_readable() const { return m_access & Access::Read; } bool is_writable() const { return m_access & Access::Write; } bool is_executable() const { return m_access & Access::Execute; } const String& name() const { return m_name; } + unsigned access() const { return m_access; } void set_name(const String& name) { m_name = name; } @@ -51,6 +53,11 @@ public: return m_range.contains(vaddr); } + bool contains(const Range& range) const + { + return m_range.contains(range); + } + unsigned page_index_from_address(VirtualAddress vaddr) const { return (vaddr - m_range.base()).get() / PAGE_SIZE;