欢迎来到天天文库
浏览记录
ID:48804475
大小:123.50 KB
页数:15页
时间:2020-01-26
《存储器管理1.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、存储器管理虚拟存储器部分赵志斌主讲虚拟存储器的基本概念一.局部性原理程序在执行时将呈现出局部性规律,指的是在较短时间内,程序的执行仅限在某个部分;相应地,系统访问的存储空间也是仅局限于某个区域。*局限性又表现为:1。时间局限性。如果程序中的某条指令一旦执行,那在不久以后该指令可能再次被执行;如果系统在访问某个数据结构,则不久以后该数据结构还会再次被访问。产生时间局限性的原因是在程序中存在大量的循环结构。eg:dowhileI<=100I=I+1…2。空间局限性。指的是系统一旦访问了某个存储单元,在不久的将来,其附近的存储单元也可能被访问。既程
2、序在一段时间内所访问的地址,可能集中在一定的范围内。产生空间局限性的原因是程序的顺序执行。二.虚拟存储器的定义基于局部性原理,一个程序在运行之前,没有必要全部被装入到内存,而是在程序运行之前只将那些马上要运行的部分先装入到内存运行,其余部分暂时留在外存上,待需要时再装入。这样便可以使一个较大的应用程序在较小的内存空间中运行,使内存资源的利用率提高。从用户角度看,系统当前使用的内存空间比实际的内存空间大得多,我们称这样的存储器为虚拟存储器。1.虚拟存储器应具有的功能(1)请求调入功能(2)置换功能2.虚拟存储器的特征(1)离散性离散性是指在内存
3、分配时采用的与“连续分配”方式相对立的一种分配内存方式————离散分配,即是说将一个程序的各个装入模块装在不相邻的的内存区域中。离散性是实现虚拟存储器的基础,没有离散性就不可能实现虚拟存储器。这是因为一个程序在装入时采用“连续分配”,这需将程序装入一个连续的内存区域中,为此,需事先为它一次性申请足够大的内存空间,以便将整个程序先后分多次装入内存。这会使相当一部分内存空间处于暂时或永久空闲状态,从而造成内存资源的浪费。(2)多次性多次性是指一个程序被分成若干部分,经多次调入内存运行。(3)对换性对换性是指在程序运行过程中某些模块针对内存换进,换
4、出,即是说在process执行期间允许将那些暂使用的程序和数据,从内存调出到外存的对换区,待以后需要时再将其调入内存。换进,换出能有效的提高内存资源的利用率。(4)虚拟性内存的扩充不是从物理上进行的,而是从逻辑上进行对内存进行扩充,使用户感觉内存的容量比实际大的多。——虚拟性是虚拟存储器的重要目标。三.虚拟存储器的实现方式(一)页式管理页式管理方式是目前常用的一种实现虚拟存储器的方式。虚拟存储器在实现上有一定的难度,既要一定的硬件的支持又要较多的软件支持,但页式管理实现虚拟存储器方式较容易,因为每次系统换进和换出的基本单位是容量固定的页面。1
5、.页式管理的硬件支持(1)页表机制在页式管理系统中的主要的数据结构是页表。其基本作用是将程序地址空间中的逻辑地址转变成存储空间中的物理地址。但是在程序运行时,系统只装入先要运行的那一部分,还余下一部分在磁盘(外存)上,所以在页表上存在若干表项用来供程序在内存和外存之间换进,换出时起参考作用。分页系统中的页表项:页表中各字段的作用:状态位P:用来表示该页是否已调入内存,供程序被访问时参考。访问字段A:用来记录该页在一段时间内被访问的次数,或最近已有多长时间未被访问,在页面置换时起参考作用。修改位M:表示该页在调入内存后是否被修改过。由于在外存上
6、每一页都保留一份副本,因此,若该页没有被修改,在置换该页时就不需将该页写回到外存上,已减少系统的开销和启动磁盘的次数;若该页已经被修改,则必须将该页重新写回到外存上,以保证外存上所保留的始终是最新副本。外存地址:用来指出该页在外存上的地址,供调入该页时使用。(二)缺页中断机构在分页管理系统中,每当系统所要访问的页面不在内存中时,便要产生一个缺页中断,请求OS将所缺的页面调入内存。缺页中断作为中断,它同样要经历如下过程:CPU现场保护——分析中断原因——缺页中断处理——恢复CPU现场。缺页中断是一种特殊的中断它与一般的中断相比,有着明显的区别,
7、主要表现如下:1。通常,CPU都是在一条指令执行完后去检查是否有中断请求信号到达。有中断,系统便去响应;否则,系统继续执行下一条指令。但是,缺页中断却是在指令执行期间进行的。2。缺页中断处理可能在一条指令执行期间要发生多次。(三)地址变换机构1。基本概念:(1)逻辑空间:是一个程序的地址空间。地址空间=逻辑空间=程序空间=作业空间(2)物理空间:是一个程序在装入内存后所拥有的真正的内存空间。物理空间=存储空间=内存空间(3)页:在页式管理中我们将一个程序的地址空间划分成若干个大小相等的片,称为页。页=页面=逻辑页面(4)页框:在内存中也相应的
8、为程序划分与该程序所拥有的页面大小相当的存储块,称之为页框。页框=物理页面=存储块注意:程序在装入时,可以将若干邻接的逻辑页面装入到内存不相邻接的页框中去。(5)页
此文档下载收益归作者所有