summaryrefslogtreecommitdiff
path: root/Source/Kernel/MemoryManager/PageDirectory.class.h
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Kernel/MemoryManager/PageDirectory.class.h')
-rw-r--r--Source/Kernel/MemoryManager/PageDirectory.class.h17
1 files changed, 4 insertions, 13 deletions
diff --git a/Source/Kernel/MemoryManager/PageDirectory.class.h b/Source/Kernel/MemoryManager/PageDirectory.class.h
index c3403aa..e93524b 100644
--- a/Source/Kernel/MemoryManager/PageDirectory.class.h
+++ b/Source/Kernel/MemoryManager/PageDirectory.class.h
@@ -2,8 +2,6 @@
#define DEF_PAGEDIRECTORY_CLASS_H
#include <common.h>
-#include <Vector.class.h>
-#include <MemoryManager/Segment.proto.h>
struct page_t {
u32int present : 1;
@@ -24,21 +22,14 @@ struct PageDirectory {
u32int *tablesPhysical;
u32int physicalAddr;
- Vector<seg_map_t> mappedSegs;
-
- //For mapping a page to a frame
- static void map(page_t *p, u32int frame, bool is_user, bool is_writable);
- static void unmap(page_t *p, bool physFree = false);
-
PageDirectory();
PageDirectory(PageDirectory* other); //Clones the other pagedir
~PageDirectory();
- void switchTo();
page_t *getPage(u32int address, bool make);
-
- //For mapping memory segments to the page directory
- void map(Segment* seg);
- void unmap(Segment* seg);
+ void map(page_t *p, u32int frame, bool is_user, bool is_writable);
+ void allocFrame(u32int address, bool is_user, bool is_writable);
+ void freeFrame(u32int address);
+ void switchTo();
private:
PageDirectory(const PageDirectory& other);