Kernel address space isolation and make the kernel heap global to all processes.
[lunaix-os.git] / lunaix-os / includes / lunaix / mm / vmm.h
index 682f8d0611bd7d74a8a495ede00aa67a6825c5d5..2e9f72f67eb903be228ef7f05dd360980fa66b68 100644 (file)
@@ -119,6 +119,22 @@ vmm_lookup(void* va);
  * @return void* 包含虚拟页副本的物理页地址。
  * 
  */
  * @return void* 包含虚拟页副本的物理页地址。
  * 
  */
-void* vmm_dup_page(void* va);
+void* vmm_dup_page(pid_t pid, void* pa);
+
+/**
+ * @brief 挂载另一个虚拟地址空间至当前虚拟地址空间
+ * 
+ * @param pde 页目录的物理地址
+ * @return void* 
+ */
+void*
+vmm_mount_pd(void* pde);
+
+/**
+ * @brief 卸载已挂载的虚拟地址空间
+ * 
+ */
+void*
+vmm_unmount_pd();
 
 #endif /* __LUNAIX_VMM_H */
 
 #endif /* __LUNAIX_VMM_H */