feat: added ability to identify process vm regions
[lunaix-os.git] / lunaix-os / includes / lunaix / mm / mm.h
index 2ea1ac27b41c74c7d1d5e22f3d7ee675e8304089..8318eaa17167ceb219eb43527e0f542c860ae644 100644 (file)
@@ -30,14 +30,17 @@ typedef struct
  */
 #define REGION_WSHARED      0x2
 
-#define REGION_TYPE_CODE    (0)
-#define REGION_TYPE_DATA    (1 << 2)
+#define REGION_PERM_MASK  0x1c
+#define REGION_READ       (1 << 2)
+#define REGION_WRITE      (1 << 3)
+#define REGION_EXEC       (1 << 4)
+#define REGION_RW         REGION_READ | REGION_WRITE
 
 struct mm_region
 {
-    struct llist_header* head;
-    void* start;
-    void* end;
+    struct llist_header head;
+    unsigned long start;
+    unsigned long end;
     unsigned int attr;
 };