江西南昌网站建设服务,用旧电脑做服务器建网站用,机械设计网站推荐,网站最新域名ip查询接口一、虚拟内存是什么#xff1f;
虚拟内存类似一个桥梁#xff0c;原来程序直接访问物理内存读取数据#xff0c;现在程序直接访问虚拟内存#xff0c;由虚拟内存再访问物理内存。
使用虚拟内存的好处#xff1a;
隔离进程、提高内存使用安全性#xff1a;每个进程直接…一、虚拟内存是什么
虚拟内存类似一个桥梁原来程序直接访问物理内存读取数据现在程序直接访问虚拟内存由虚拟内存再访问物理内存。
使用虚拟内存的好处
隔离进程、提高内存使用安全性每个进程直接访问虚拟内存就像拥有了整个内存空间实现了不同进程之间的相互隔离无需担心因编程错误导致地址越界影响其他进程。简化内存管理程序员可以使用连续的虚拟地址进行编程而无需关注虚拟地址与物理地址的映射关系简化了内存管理。提升了物理内存的利用率有了虚拟地址操作系统只需要将进程正在使用的部分数据加载到物理内存。多个进程共享物理内存进程运行过程中会加载一些动态库这些动态库对于每个进程而言都是公用的。提供更大的可使用内存空间物理内存不够用时可以将磁盘充当内存。
二、虚拟地址—物理地址
虚拟地址到物理地址的映射通过MMU即内存管理单元实现。 映射机制主要分为分段机制、分页机制和段页机制。
2.1 分段机制
段一段连续的物理内存不同段的内存大小可以不同。 虚拟地址由段号段内偏移量组成通过段表进行映射。
缺点会存在内存外部碎片。 因为一个进程对应一个段而段内部地址连续就会出现多个段空间被回收后由于内存小且相互不连续而无法分配给需要大内存空间的进程。
2.2 分页机制
分页机制把物理内存划分成连续等长的物理页虚拟内存也划分成连续等长的虚拟页。通过页表进行映射。 虚拟地址由页号页内偏移量组成。
2.3 页缺失
硬性页缺失物理内存中没有对应的物理页需要从磁盘中加载到内存而后由MMU建立虚拟页和物理页的映射关系。软性页缺失物理内存中有对应的物理页但是虚拟页还未和物理页建立映射。
2.4 页面置换算法
当发生硬性页缺失时如果物理内存中没有空闲的物理页面可用的话。操作系统就必须将物理内存中的一个物理页淘汰出去这样就可以腾出空间来加载新的页面了。
最佳页面置换算法先进先出页面置换算法最近最久未使用页面置换算法最少使用页面置换算法时钟页面置换算法