计算机操作系统.ppt

上传人:p** 文档编号:186264 上传时间:2023-04-04 格式:PPT 页数:79 大小:483KB
下载 相关 举报
计算机操作系统.ppt_第1页
第1页 / 共79页
计算机操作系统.ppt_第2页
第2页 / 共79页
计算机操作系统.ppt_第3页
第3页 / 共79页
计算机操作系统.ppt_第4页
第4页 / 共79页
计算机操作系统.ppt_第5页
第5页 / 共79页
计算机操作系统.ppt_第6页
第6页 / 共79页
计算机操作系统.ppt_第7页
第7页 / 共79页
计算机操作系统.ppt_第8页
第8页 / 共79页
计算机操作系统.ppt_第9页
第9页 / 共79页
计算机操作系统.ppt_第10页
第10页 / 共79页
亲,该文档总共79页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《计算机操作系统.ppt》由会员分享,可在线阅读,更多相关《计算机操作系统.ppt(79页珍藏版)》请在第壹文秘上搜索。

1、主要内容:主要内容:4.5.1虚拟存储管理的概念4.5.2请求分页虚拟存储管理4.5.3请求分段虚拟存储管理4.5.4请求段页式虚拟存储管理分析:较小的一段时间内,整个作业空间中只有某一局部模块的指令和数据会被执行和访问到.作业其它部分暂时不会访问到.这就允许这部分暂时不用的作业部分不必占据内存空间,可以先留在外存上,待以后需要访问时再装入内存.内存中一些暂时不用的部分还可以临时调出到外存上,这样就可将内存空间优先分配给当前急需使用的作业进程,能够提高内存利用率. 部分装入即可运行,运行过程中作业的部分可以在内外存之间对换(部分对换),从逻辑上扩充内存容量,使得程序员的编程空间大于内存容量,这

2、就是虚拟存储管理的主要思想.虚拟存储器的定义:在具有层次结构存储器的计算机系统中,采用自动实现部分装入和部分对换功能,为用户提供一个比物理内存容量大得多的,可寻址的一种“内存储器”。虚拟存储器的容量取决于计算机的地址结构和可用的物理内存和外存的容量之和。虚拟存储器是为扩大主存而采用的一种设计技巧,它的容量与主存大小无直接关系,而受限于计算机的地址结构及可用的辅助存储器的容量。n虚拟存储器引入的基础是程序执行的局部性原理。程序执行的局部性是指在一段时间内,程序访问的存储空间仅限于某个区域(这称为空间局部性),或者最近访问过的程序代码和数据很快会再被访问(这称为时间局部性)。虚拟地址空间处理器虚地

3、址存储管理部件实地址主存辅存物理地址空间虚拟存储器原理实现虚拟存储器必须解决好以下有关问题:主存辅存统一管理问题逻辑地址到物理地址的转换问题部分装入和部分对换问题虚拟存储器的实现方法主要有:请求分页式、请求分段式和请求段页式虚拟存储管理。1.分页式虚拟存储系统的硬件支撑需要内存管理部件MMU(主存管理部件). MMU通常由一个或一组芯片组成,它接受虚拟地址(逻辑地址)作为输入,输出物理地址。它的主要功能主要有:管理硬件页表基址寄存器:负责装入将要占用处理器的进程的页表。分解逻辑地址为页号和页内地址管理快表:查找快表、装入表目和清除表目访问页表当要访问的页面不在内存时发出缺页中断,页面访问越界时

4、发出越界中断。设置和检查页表中的状态位、访问字段、修改位、保护权限等CPUMMU内存CPU把逻辑地址送至MMUMMU把物理地址送至内存 MMU的位置和功能16个4KB页面情况下MMU的内部操作CPU送入的逻辑地址(8196) 0 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0MMU送出的物理地址(24580) 0 010 1 1 001 1 2 110 1 3 000 1 4 100 1 5 011 1 6 000 0 7 000 0 8 101 1 9 000 0 页号 块号 在主存2. 请求分页系统的基本原理在进程

5、开始运行之前,不是装入全部页面,而是装入一个或几个页面,进程运行过程中,访问的页面不在内存时,再装入所需页面;若内存空间已满,而又需要装入新的页面时,则根据某种算法淘汰某个页面,以便装入新的页面。n怎样才能发现页面不在内存中呢?怎样处理这种情况呢?n采用的办法是:扩充页表的内容,增加驻留标志位和页面辅存的地址等信息。页号页号 驻留标志驻留标志 页框号页框号 辅存地址辅存地址 其它标志其它标志页表机制请求分页的地址变换过程:当进程被调度到CPU上运行时,操作系统自动把该进程PCB中的页表始址装入到硬件页表基址寄存器中,此后,进程开始执行并要访问某个虚拟地址,内存管理部件MMU开始工作:nMMU接

6、受CPU传送过来的虚地址并分解为两部分:页号和页内地址;n以页号为索引搜索快表;n如果命中快表,则立即送出物理块号(页框号),并与页内地址拼接形成物理地址,然后访问相应内存单元;如果不命中快表,则以页号为索引搜索内存页表,页表的基址由硬件页表寄存器指出;在页表中查找相应表项,如果其状态位指示该页已在内存,则送出物理块号与页内地址拼接形成物理地址访问相应内存单元,同时要将该表项装入快表;如果在页表中找到的相应表项,其状态位指示该页不在内存,则发出缺页中断,请求操作系统处理;存储管理软件将所缺页面调入内存,修改页表。缺页中断处理过程如下:查看内存是否有空闲物理块,如有则可以装入页面到空闲物理块,同

7、时修改页表相应项以及内存分配表;如果内存中没有空闲物理块,则按替换算法选择一个页面淘汰,若该页面被写过或修改过,则写回外存,否则只简单淘汰该页面。淘汰页面之后要修改页表相应项,然后调入页面到淘汰页面释放的物理块中。逻辑地址空间主存(用户区)CPU逻辑地址快表主存(系统区)运行进程页表辅存缺页中断处理分解地址访问MMU查快表命中不命中页表命中发缺页中断调页装入、改表查页表运行进程页表基址装入快表运行进程映象进程切换时装入物理地址页框 页内地址页号 页内地址查快表查快表有登记有登记无登记无登记查页表查页表登记入快表登记入快表发缺页中断发缺页中断在主存在主存在辅存在辅存形成绝对地址形成绝对地址继续执

8、行指令继续执行指令重新执行重新执行被中断指令被中断指令恢复现场恢复现场调整页表和调整页表和主存分配表主存分配表装入所需页面装入所需页面主存有空闲块主存有空闲块保护现场保护现场有有选择调出页面选择调出页面该页是否修改该页是否修改未修改未修改已修改已修改把该页写回把该页写回辅存相应位置辅存相应位置操作系统操作系统硬件硬件逻辑地址逻辑地址无无3.页面装入策略和清除策略页装入策略决定何时把一个页面装入内存,有两种策略:请页式调入和预调式调入.请页式调入在需要访问程序和数据时,才把所在页面装入主存。缺点是处理缺页中断和调页的系统开销较大,每次仅调一页,增加了磁盘I/O次数。预调式调入由系统预测进程将要使

9、用的页面,使用前预先调入主存,每次调入若干页面,而不是仅调一页。一次调入多页能减少磁盘I/O启动次数,节省寻道和搜索时间。清除策略考虑何时把一个修改过的页面写回外存,常用的方法是:请页式清除和预约式清除.请页式清除是仅当一页选中被替换,且之前它又被修改过,才把这个页面写回辅存。预约式清除对所有更改过的页面,在需要之前就把它们都写回外存.页缓冲技术是更好的方法:在页缓冲中,淘汰了的页面进入两个队列:修改页面和非修改页面队列。修改页面队列中的页不时地成批写出并加入到非修改页面队列; 非修改页面队列中的页面,当它被再次引用时回收,或者淘汰掉以作替换。4.页面分配策略系统为进程分配主存,需考虑因素:分

10、给进程的空间越小,同一时间处于内存的进程就越多,至少有一个进程处于就绪态的可能性就越大如果进程只有小部分在主存里,即使局部性很好,缺页中断率还会增加.分给进程的内存超过一定限度后,再增加内存空间,不会明显降低进程的缺页中断率。页面分配策略主要有两种:固定分配和可变分配固定分配使进程在生命周期中保持固定数目的物理块.固定分配时,每个进程物理块的分配方式主要有:平均分配、按比例分配、考虑优先权的分配n页面替换策略也有两种:局部替换和全局替换.局部替换在进程发生缺页时仅从该进程的物理块中淘汰页面,以调入所缺页面;全局替换则在进程发生缺页时可从系统中任一进程的物理块中淘汰页面.n页面分配和替换常用的组

11、合策略有三种:固定分配局部置换、可变分配全局置换和可变分配局部置换. 经验表明:对每个程序,要使其有效工作,它在主存中的页面数不应低于它的总页面数的一半假定作业p共计n页,系统分配给它的主存块只有m块(mn)。如果作业p在运行中成功的访问次数为S, 不成功的访问次数(缺页次数)为F,则总的访问次数为:A = S + F又定义:f = F / A称f为缺页中断率。影响缺页中断率f的因素有:(1)主存页框数。(2)页面大小。(3)页面替换算法。(4)程序特性。几种页面替换算法:最佳页面算法(OPT、Belady算法)、先进先出页面淘汰算法(FIFO)、最近最久未使用页面淘汰算法(LRU)、Cloc

12、k置换算法。这些算法都是基于系统对物理块的分配策略采用固定分配局部置换。1、最佳页面算法(OPT):调入一页而必须淘汰一个旧页时,所淘汰的页应该是以后不再访问的页或距现在最长时间后再访问的页。例:某程序在内存中分配三个页面,初始为空,页面走向为4,3,2,1,4,3,5,4,3,2,1,5。用最佳页面算法分析页面置换过程。443432432143543215431435235215共缺页中断共缺页中断7次次2、先进先出页面淘汰算法(FIFO) :算法总是淘汰最先调入主存的那一页,或者说在主存中驻留时间最长的那一页(常驻的除外)。 例:某程序在内存中分配三个页面,初始为空,页面走向为4,3,2,

13、1,4,3,5,4,3,2,1,5。用先进先出页面算法分析页面置换过程。443432432143543215132142143543523521共缺页中断共缺页中断9 9次次3、最近最久未使用页面淘汰算法(LRU) :算法淘汰的页面是在最近一段时间里较久未被访问的那页。例:某程序在内存中分配三个页面,初始为空,页面走向为4,3,2,1,4,3,5,4,3,2,1,5。用最近最久未使用页面算法分析页面置换过程。443432432143543215共缺页中断共缺页中断1010次次132142143543243213215 页面页面 时刻时刻 T1 T2 T3 P0 1000 0100 1010 P

14、1 1000 1100 0110 P2 0000 1000 0100 上述几种方法均只是对最近最久未使用页面淘汰算法(LRU)的近似实现,这些方法在某一页访问频率较高时,很难精确地记住其它页面最近访问的情况.5、时钟页面替换算法:一个页面首次装入主存,其“引用位”置0 。主存中的任何页面被访问时, ”引用位”置1。淘汰页面时,从指针当前指向的页面开始扫描循环队列,把遇到的”引用位”是1的页面的”引用位”清0,跳过这个页面; 把所遇到的”引用位”是0的页面淘汰掉,指针推进一步。扫描循环队列时,如果遇到的所有页面的”引用位”为1,指针就会绕整个循环队列一圈,把碰到的所有页面的”引用位”清0;指针停

15、在起始位置,并淘汰掉这一页,然后,指针推进一步。P 9 U1P19U1P1U0P45U1P191U1P556U0P13U0P67U1P33U1P222U0 :下帧指针n012345678一个页替换前的缓冲区状态P 9 U1P19U1P1U0P45U0P191U0P727U1P13U0P67U1P33U1P222U0n012345678替换一页后的缓冲区状态页框号 :时钟页面替换算法的改进算法:把”引用位”和”修改位”结合起来使用,共组合成四种情况:(1)最近没有被引用,没有被修改(r=0,m=0)(2)最近被引用,没有被修改(r=1,m=0)(3)最近没有被引用,但被修改(r=0,m=1)(4

16、)最近被引用过,也被修改过(r=1,m=1)步1:选择最佳淘汰页面,从指针当前位置开始,扫描循环队列。扫描过程中不改变”引用位”,把找到的第一个r=0,m=0的页面作为淘汰页面。步2:如果步1失败,再次从原位置开始,查找r=0且m=1的页面,把找到的第一个这样的页面作为淘汰页面,而在扫描过程中把指针所扫过的页面的”引用位”r置0。步3:如果步2失败,指针再次回到了起始位置,由于此时所有页面的”引用位”r均己为0,再转向步1操作,必要时再做步2操作,这次一定可以挑出一个可淘汰的页面。22323231235235435435435235235235F1F2F4OPT:F3F1F4LRU:1F2522323223123512251425542354235523253322545222323231315152524524243243435352F2F1F2FIFO:F2F1CLOCK:1F552232*2*3*2*3*2*3*1*5*315*2*15*2*4*5*2*4*3*243*2*43*25*3*2*5*3225452F3F5F4F3F40510152025354030068101214

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > IT计算机 > 计算机原理

copyright@ 2008-2023 1wenmi网站版权所有

经营许可证编号:宁ICP备2022001189号-1

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。第壹文秘仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第壹文秘网,我们立即给予删除!