赞
踩
局部性原理是虚拟内存技术的基础,正是因为程序运行具有局部性原理,才可以只装入部分程序到内存就开始运行。局部性原理表现在以下两个方面:
时间局部性是通过将近来使用的指令和数据保存到高速缓存存储器中,并使用高速缓存的层次结构实现。空间局部性通常是使用较大的高速缓存,并将预取机制集成到高速缓存控制逻辑中实现。虚拟内存技术实际上就是建立了 “内存一外存”的两级存储器结构,利用局部性原理实现髙速缓存。
虚拟存储器又叫做虚拟内存,都是 Virtual Memory 的翻译,属于同一个概念
基于局部性原理,在程序装入时,可以将程序的一部分装入内存,而将其他部分留在外存,就可以启动程序执行。由于外存往往比内存大很多,所以我们运行的软件的内存大小实际上是可以比计算机系统实际的内存大小大的。在程序执行过程中,当所访问的信息不在内存时,由操作系统将所需要的部分调入内存,然后继续执行程序。另一方面,操作系统将内存中暂时不使用的内容换到外存上,从而腾出空间存放将要调入内存的信息。这样,计算机好像为用户提供了一个比实际内存大的多的存储器——虚拟存储器。
实际上,我觉得虚拟内存同样是一种时间换空间的策略,你用 CPU 的计算时间,页的调入调出花费的时间,换来了一个虚拟的、更大的空间来支持程序的运行。
虚拟内存的实现需要建立在离散分配的内存管理方式的基础上。
请求分页是目前最常用的一种实现虚拟存储器的方法
。略
不要求
将作业全部地址空间同时装入主存,基于这一点,请求分页存储管理可以提供虚存要求
将作业全部地址空间同时装入主存,却不能提供虚存。地址映射过程中,若在内存中发现所要访问的页面不在内存中,则发生缺页中断 。
缺页中断 就是要访问的页不在主存,需要操作系统将其调入主存后再进行访问。
如果当前内存中并没有空闲的空间,当发生缺页中断时,操作系统就必须在内存中选择一个页面将其移出内存,以便为即将调入的页面让出空间。用来选择淘汰哪一页的规则叫做页面置换算法
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。