虚拟存储系统是指什么 虚拟存储( 六 )


MMU获取PTE后,可以从PTE中获取对应的PPN,然后结合VPO构造物理地址 。
如果在PTE中发现虚拟页面没有缓存在内存中,就会触发页面错误异常 。缺页异常处理程序将虚拟页面缓存到物理内存中,并更新PTE 。在异常处理程序返回后,CPU将重新加载这个虚拟地址并翻译它 。
虚拟内存系统简化了内存管理、链接、加载、代码和数据共享以及访问权限保护:
简化链接,独立地址空允许每个进程的内存映像使用相同的基本格式,而不管代码和数据实际存储在物理内存的什么位置 。
简化加载,虚拟内存使可执行文件和共享对象文件更容易加载到内存中 。
简化且独立的address 空为操作系统提供了一致的机制来管理用户进程和内核之间的共享 。
访问权限保护,每个虚拟地址都要经过查询PTE的过程,在PTE中设置访问权限的tag位,简化内存的访问权限保护 。
操作系统通过将虚拟内存与文件系统相结合来初始化虚拟内存区域 。这个过程称为内存映射 。应用程序显式分配内存的区域称为堆,堆内存由动态内存分配器直接操作 。

推荐阅读