第七章 虚拟存储器_第1页
第七章 虚拟存储器_第2页
第七章 虚拟存储器_第3页
第七章 虚拟存储器_第4页
第七章 虚拟存储器_第5页
已阅读5页,还剩45页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章第七章 虚拟存储器管理虚拟存储器管理q基本概念基本概念q请求分页的存储器系统请求分页的存储器系统q页面置换算法页面置换算法q请求分段的存储器系统请求分段的存储器系统7.1 基本概念基本概念1.虚拟存储器的引入虚拟存储器的引入(1)局部性原理)局部性原理时间的局部性时间的局部性空间的局部性空间的局部性(2)定义)定义把作业的一部分装入内存就可运行的存储器系统。把作业的一部分装入内存就可运行的存储器系统。 虚拟存储器系统虚拟存储器系统能从能从逻辑上逻辑上对内存容量进行扩充,并具有对内存容量进行扩充,并具有请求调入请求调入和和置换功能置换功能的一种存储器系统。的一种存储器系统。2. 虚拟存储器

2、的实现方法虚拟存储器的实现方法请求分页的存储器管理系统请求分页的存储器管理系统请求分段的存储器管理系统请求分段的存储器管理系统段页式虚存管理系统段页式虚存管理系统 7.1 基本概念基本概念注:虚拟性是以多次性和对换性为基础。注:虚拟性是以多次性和对换性为基础。3.3.虚拟存储器的特征虚拟存储器的特征离散性离散性多次性:作业被分成多次装入内存。多次性:作业被分成多次装入内存。对换性对换性虚拟性:能从逻辑上扩充主存容量。虚拟性:能从逻辑上扩充主存容量。4.虚拟地址与实地址虚拟地址与实地址7.1 基本概念基本概念虚拟地址虚拟地址:在虚存管理系统中,通常把:在虚存管理系统中,通常把运行进程运行进程访问

3、的访问的指令和数据的逻辑地址(目标程序中的相对地址)称为虚指令和数据的逻辑地址(目标程序中的相对地址)称为虚拟地址。虚拟地址的集合称为拟地址。虚拟地址的集合称为虚拟地址空间虚拟地址空间。实地址实地址:是指:是指CPUCPU能直接访问的存放指令和数据的主存地能直接访问的存放指令和数据的主存地址址(CPU(CPU外部地址总线上访问物理主存的地址外部地址总线上访问物理主存的地址) )。主存也称。主存也称为为实地址空间实地址空间。7.2 请求分页的存储器系统请求分页的存储器系统在基本分页系统的基础上,增加了请求调页和页面置在基本分页系统的基础上,增加了请求调页和页面置换功能的页式虚拟存储器系统。换功能

4、的页式虚拟存储器系统。1.请求分页的硬件支持请求分页的硬件支持(1)页表、快表和反向页表)页表、快表和反向页表页架号页架号访问位访问位有效位有效位P保护权限保护权限修改位修改位M外存地址外存地址页表项页表项内容:内容:其中:有效位:表示该页是否在内存其中:有效位:表示该页是否在内存 修改位:表示该页调入内存后是否被修改过修改位:表示该页调入内存后是否被修改过 保护权限:可读保护权限:可读/可读写可读写活动页表活动页表:由:由页表寄存器页表寄存器指出的进程页表称为活指出的进程页表称为活动页表。动页表。在单处理机系统中,通常有两个活动页表:当前在单处理机系统中,通常有两个活动页表:当前活动进程的活

5、动页表和内核活动页表。活动进程的活动页表和内核活动页表。7.2 请求分页的存储器系统请求分页的存储器系统n快表快表快表由硬件实现,一般有快表由硬件实现,一般有64256个表目。每个快表表个表目。每个快表表目包含若干个项,如:目包含若干个项,如: 虚页号虚页号 物理块号物理块号 保护权限保护权限 进程号进程号有些系统中有两个分离的快表(如有些系统中有两个分离的快表(如IBM RS/6000):): 数据快表(数据快表(127个表目)个表目) 指令快表(指令快表(32个表目)个表目)7.2 请求分页的存储器系统请求分页的存储器系统n反向页表反向页表反向页表中的每一个表目对应主存中的一个物理块号反向

6、页表中的每一个表目对应主存中的一个物理块号(反向页表的索引号)。每个表目包括:(反向页表的索引号)。每个表目包括: 其映射的其映射的虚页号虚页号 指向哈希链的下一指针指向哈希链的下一指针 有效位、引用位、修改位有效位、引用位、修改位 保护和加锁信息保护和加锁信息使用反向表的系统采用使用反向表的系统采用哈希技术哈希技术完成逻辑地址到物理地完成逻辑地址到物理地址的转换。目的是为了解决址的转换。目的是为了解决页表大小随逻辑地址空间页表大小随逻辑地址空间递增递增和和避免使用多级页表避免使用多级页表的问题的问题7.2 请求分页的存储器系统请求分页的存储器系统页号页号 P页内偏移页内偏移 d 页号页号表目

7、体表目体链指针链指针P页架号页架号3反向页表反向页表哈希表哈希表哈希函数哈希函数页架号页架号d物理地址物理地址基于反向页表的地址转换过程:反向页表的索引号就是基于反向页表的地址转换过程:反向页表的索引号就是主存的页架号。主存的页架号。溢溢出出链链(2)缺页中断机构)缺页中断机构 产生和处理缺页中断的机构。产生和处理缺页中断的机构。缺页中断与一般中断的区别:缺页中断与一般中断的区别: 在指令执行期间产生和处理中断信号在指令执行期间产生和处理中断信号 一条指令执行期间可能产生多次缺页中断一条指令执行期间可能产生多次缺页中断B:A:COPYA TO B1234567.2 请求分页的存储器系统请求分页

8、的存储器系统地址变换地址变换在基本分页系统的地址变换机构的基础上增加了在基本分页系统的地址变换机构的基础上增加了产生和处理缺页中断的功能。产生和处理缺页中断的功能。过程如图所示:过程如图所示:7.2 请求分页的存储器系统请求分页的存储器系统开始开始页号页号页表长页表长?是是越界中断越界中断该页在快表该页在快表 中?中?该页在内存否?该页在内存否?修改修改A和和M修改快表修改快表形成物理地址形成物理地址保存保存CPU现场现场从外存中找到缺页从外存中找到缺页内存满否?内存满否?换页处理换页处理该页被修改否?该页被修改否?将该页写回外存将该页写回外存读缺页读缺页换缺页入内存换缺页入内存修改页表修改页

9、表是是是是是是是是否否否否否否否否否否访问页表访问页表结束结束(3)MMUMMU是内核主存管理子系统依赖的是内核主存管理子系统依赖的低层硬件低层硬件,主要完成主要完成虚地址虚地址到到物理地址物理地址的转换,包括:的转换,包括:管理硬件的页表基址寄存器管理硬件的页表基址寄存器将虚地址分为虚页号和页内位移将虚地址分为虚页号和页内位移页面失效处理(边界错误、缺页、保护错误)页面失效处理(边界错误、缺页、保护错误)设置页表中相应的访问位、修改位、检查有效设置页表中相应的访问位、修改位、检查有效位和保护权限位和保护权限7.2 请求分页的存储器系统请求分页的存储器系统2.页面分配的有关策略页面分配的有关策

10、略(1)最小物理块数的确定)最小物理块数的确定 最小物理块数是指能保证进程正常运行所需要的最最小物理块数是指能保证进程正常运行所需要的最少物理块数。少物理块数。相关因素相关因素:机器指令的格式、功能:机器指令的格式、功能 和寻址方式。和寻址方式。(2)页面分配和置换策略)页面分配和置换策略 固定分配局部置换固定分配局部置换 可变分配全局置换:系统维护一个空闲物理块队列可变分配全局置换:系统维护一个空闲物理块队列 可变分配局部置换:根据缺页率来动态增加或减少可变分配局部置换:根据缺页率来动态增加或减少每个进程分配的物理块数每个进程分配的物理块数7.2 请求分页的存储器系统请求分页的存储器系统(3

11、)页面分配方法)页面分配方法平均分配:每个进程分配相同数量的物理块平均分配:每个进程分配相同数量的物理块按比例分配:按进程所拥有页面数的多少进按比例分配:按进程所拥有页面数的多少进行分配行分配mssibisisni*1注:注:m为系统可用物理块数为系统可用物理块数si为每个进程的页面数为每个进程的页面数bi为每个进程分配的物理块数为每个进程分配的物理块数考虑优先权分配考虑优先权分配7.2 请求分页的存储器系统请求分页的存储器系统3.页面调入策略页面调入策略(1)调入页面的时机)调入页面的时机预调页策略:执行前先调入若干不久将被访问的页面预调页策略:执行前先调入若干不久将被访问的页面请求调页策略

12、:缺页时请求调入页面,每次只调入一请求调页策略:缺页时请求调入页面,每次只调入一页。页。7.2 请求分页的存储器系统请求分页的存储器系统(2)从何处调入页面)从何处调入页面系统有足够的对换区空间:所有页面从对换区调入。系统有足够的对换区空间:所有页面从对换区调入。系统的对换区空间不足:不会被修改的页面从文件区调入。系统的对换区空间不足:不会被修改的页面从文件区调入。Unix方式:未运行过的页面从文件区调入方式:未运行过的页面从文件区调入4.页面调入过程页面调入过程该页在内存?该页在内存?有空闲物理块?有空闲物理块?保留保留CPU现场现场调入所需页调入所需页选择一页换出选择一页换出该页修改否?该

13、页修改否?写回外存写回外存恢复恢复CPU现场现场继续执行继续执行变换地址并执行变换地址并执行否否否否否否是是是是是是产生产生缺页缺页中断中断1.页面访问失效的原因页面访问失效的原因边界错误边界错误:如页号超过页表的长度。:如页号超过页表的长度。有效性错误有效性错误:要访问的页面不在内存,:要访问的页面不在内存,即有效位为零。即有效位为零。保护错误保护错误:不允许的访问权限。:不允许的访问权限。 7.3 页面置换算法页面置换算法页淘汰可以发生在申请页帧时,而现代页淘汰可以发生在申请页帧时,而现代OSOS一般都定时进一般都定时进行页淘汰。行页淘汰。如何选取被淘汰的页是由页面替换策略决定的,若已决如

14、何选取被淘汰的页是由页面替换策略决定的,若已决定淘汰页定淘汰页P P,则淘汰一页的主要工作有:,则淘汰一页的主要工作有: 2. 页面置换(页面淘汰)算法页面置换(页面淘汰)算法查查P P页表项的修改位,若未修改,则有效位清页表项的修改位,若未修改,则有效位清0 0,将页帧,将页帧送回空闲页帧队列。送回空闲页帧队列。若已修改,则看是否要写回交换区,若回写若已修改,则看是否要写回交换区,若回写swapswap区页,区页,则申请一块则申请一块swapswap区空间,将区空间,将P P的外存块号置上。的外存块号置上。调用调用I/0I/0子系统将页帧上的数据写到外存块号所指的外子系统将页帧上的数据写到外

15、存块号所指的外存空间。有效位清存空间。有效位清0 0,并将页帧送回空闲页帧队列。,并将页帧送回空闲页帧队列。最佳置换算法(最佳置换算法(OPT)最近未使用置换算法(最近未使用置换算法(NRU)先进先出置换算法(先进先出置换算法(FIFO)二次机会置换算法二次机会置换算法时钟页面置换算法(时钟页面置换算法(CLOCK)最近最久未使用置换算法(最近最久未使用置换算法(LRU)改进型改进型Clock(近似(近似LRU)算法)算法 2. 页面置换算法页面置换算法 2. 页面置换算法页面置换算法(1)最佳置换算法()最佳置换算法(OPT)该算法是该算法是Belady在在1966年提出的一种理论上的算年提

16、出的一种理论上的算法。为保证缺页率最低,选择永久不使用,或将法。为保证缺页率最低,选择永久不使用,或将在最长时间内不再被访问的页面淘汰。在最长时间内不再被访问的页面淘汰。9/21=43%例例:假设分配给某进程的页架数为:假设分配给某进程的页架数为3,采用,采用请求调页请求调页方式,方式,采用采用最佳置换最佳置换算法,求下列页面执行序列(访问串)的缺算法,求下列页面执行序列(访问串)的缺页率。页率。 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,1,7,0,1由于需要预先得知整个访问串的序,故不能用于实践。仅由于需要预先得知整个访问串的序,故不能用于实践。仅作为一种标准,用

17、以测量其他可行策略的性能。作为一种标准,用以测量其他可行策略的性能。(2)最近未使用置换算法()最近未使用置换算法(NRU)淘汰最近未使用的页面,而且最好是未被修改的淘汰最近未使用的页面,而且最好是未被修改的页面。即淘汰的页面最好是访问位和修改位同页面。即淘汰的页面最好是访问位和修改位同时时为零为零的页面。的页面。 2. 页面置换算法页面置换算法为了避免系统中所有的页面的访问位和修改位可能都为为了避免系统中所有的页面的访问位和修改位可能都为“1”的情况,系统周期性地将主存中页面的访问位清的情况,系统周期性地将主存中页面的访问位清“0”。(3)先进先出置换算法()先进先出置换算法(FIFO)淘汰

18、页面时,选择最先进入的页面。淘汰页面时,选择最先进入的页面。实现方便。不需要实现方便。不需要额外硬件。额外硬件。 2. 页面置换算法页面置换算法14/21=66.7%例例:假设分配给某进程的页架数为:假设分配给某进程的页架数为3,采用请求调页方,采用请求调页方式,页面置换算法用式,页面置换算法用FIFO,求下列页面执行序列的缺,求下列页面执行序列的缺页率。页率。 7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,1,7,0,1缺点:该算法只是在按线性顺序访问地址空间时才具有较高的效缺点:该算法只是在按线性顺序访问地址空间时才具有较高的效率,否则可能出现抖动现象。率,否则可能出

19、现抖动现象。BeladyBelady奇异奇异:指替换策略不满足随着驻留集的增大,页故障数一指替换策略不满足随着驻留集的增大,页故障数一定减少的规律。(定减少的规律。(驻留集驻留集( (工作集工作集) ):进程的合法页集合。进程的合法页集合。)(4)二次机会置换算法)二次机会置换算法该算法是该算法是 FIFO算法的一种改进算法。淘算法的一种改进算法。淘汰时,首先检查汰时,首先检查FIFO链首页面的访问位,链首页面的访问位,如果为如果为“0”,则立即淘汰,如果为,则立即淘汰,如果为“1”,则将其移到当前则将其移到当前FIFO链的链尾,并将其链的链尾,并将其访问位置访问位置“0”,再检查新的链首页面

20、,再检查新的链首页面,直到找到一个访问为直到找到一个访问为“0”的链首页面。的链首页面。 2. 页面置换算法页面置换算法(5)时钟()时钟(Clock)页面置换算法)页面置换算法将二次机会置换算法中的将二次机会置换算法中的FIFO链组织成一个环链组织成一个环状队列,设一指针指向当前最状队列,设一指针指向当前最老老的页面。当产的页面。当产生缺页中断时,如果指针所指向的页面的访问生缺页中断时,如果指针所指向的页面的访问位为位为“0”,则淘汰,将新调入的页面插入到指,则淘汰,将新调入的页面插入到指针指向的位置,指针前移;针指向的位置,指针前移;如果访问位为如果访问位为“1”,则将其清,则将其清“0”

21、,指针前移,直到找到一个访问位指针前移,直到找到一个访问位为为“0”的页面。的页面。 2. 页面置换算法页面置换算法(6)最近最久未使用()最近最久未使用(LRU)算法)算法原理原理 根据页面在内存中的使用情况,选择根据页面在内存中的使用情况,选择最近最久最近最久未使用未使用的页面予以淘汰。即以的页面予以淘汰。即以“最近的过去最近的过去”预测预测“最近的将最近的将来来”,即,即淘汰上次使用距当前最远的页淘汰上次使用距当前最远的页。 2. 页面置换算法页面置换算法硬件硬件LRU法法寄存器:寄存器:需为内存中的每一页配置一移位寄存器,用来需为内存中的每一页配置一移位寄存器,用来记录各页在内存中的使

22、用情况。假设记录各页在内存中的使用情况。假设N位寄存器的表示形位寄存器的表示形式为:式为: R= Rn-1Rn-2Rn-3R2R1R0实现原理实现原理:当进程访问某物理块时,将相应寄存器:当进程访问某物理块时,将相应寄存器的的Rn-1位置位置1,各寄存器根据,各寄存器根据系统时钟系统时钟,每隔一,每隔一定时间右移一位,各寄存器所中表示值定时间右移一位,各寄存器所中表示值最小最小的那的那个页面将是下一个被淘汰的页面。个页面将是下一个被淘汰的页面。 2. 页面置换算法页面置换算法Rn-1Rn-21000100000011000000001000000110000访问页访问页1后右移一位:后右移一位

23、:页页1页页2页页1页页2淘汰页淘汰页2访问页访问页111 栈实现的栈实现的LRU法法 存放当前使用的各页面的页号。存放当前使用的各页面的页号。 实现原理实现原理:当进程访问某页时,就将该页的页号从栈底:当进程访问某页时,就将该页的页号从栈底移出压入栈顶,或将新访问的页号压入栈顶。处于栈底移出压入栈顶,或将新访问的页号压入栈顶。处于栈底的就是最近最久未使用的页面号。的就是最近最久未使用的页面号。 2. 页面置换算法页面置换算法例例:设某进程的页面引用顺序为:设某进程的页面引用顺序为:7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1,统分配给,统分配给该进程的物理块

24、为该进程的物理块为3,并采用请求调页策略,则栈的变化情,并采用请求调页策略,则栈的变化情况如下图所示:况如下图所示:02107304230231207 0 7071072100213020324032403240323022301232130217020721701缺页率缺页率=13/20=65% 2. 页面置换算法页面置换算法缺页率:缺页次数与进程页面总数的比值。缺页率:缺页次数与进程页面总数的比值。3)矩阵实现的)矩阵实现的LRU算法(参考教材算法(参考教材P175176)LRU算法虽然能够实现,但需要增加成本和开销,算法虽然能够实现,但需要增加成本和开销, 无无BeladyBelady奇

25、异奇异。7,0,1,2,0,3,0,4,2,3,0,3,2,1,2,0,1,7,0,1(7)改进型)改进型Clock(近似(近似LRU)算法)算法原理:原理:为内存中所有的页面设置一访问位和一修改位,为内存中所有的页面设置一访问位和一修改位,置初值为置初值为0,并将这些页通过指针链接成循环队列。在,并将这些页通过指针链接成循环队列。在选择淘汰页时,尽量选择那些访问位和修改位都选择淘汰页时,尽量选择那些访问位和修改位都0的页的页面,如果没有这样的页面,再考虑访问位为面,如果没有这样的页面,再考虑访问位为0,而修改,而修改为为1的页面做为淘汰页。的页面做为淘汰页。由访问位由访问位A和修改位和修改位

26、M组成的页面类型有:组成的页面类型有: 2. 页面置换算法页面置换算法第一类页面:第一类页面:A=0,M=0;第二类页面:第二类页面:A=0,M=1;第三类页面:第三类页面:A=1,M=0;第四类页面:第四类页面:A=1,M=1。页面淘汰过程页面淘汰过程开始开始第一次扫描循环队列第一次扫描循环队列有有A=0,M=0的页面?的页面?第二轮扫描循环队列第二轮扫描循环队列置置A=0有有A=0,M=1的页面?的页面?扫描完否?扫描完否?扫描完否?扫描完否?淘汰该页淘汰该页调入新页结束调入新页结束有有有有无无否否完完无无否否完完扫描下一个页扫描下一个页扫描下一个页扫描下一个页页面置换算法实现目标:不发生

27、抖动现象,缺页页面置换算法实现目标:不发生抖动现象,缺页率正常。率正常。(1)概念)概念 一个运行进程在一个运行进程在t- 到到t时间间隔内所访问时间间隔内所访问的的页面集合页面集合称为该进程在时间称为该进程在时间t上的工作集,上的工作集,记为记为w(t, )。 其中,其中, 为为“工作集的窗工作集的窗口尺寸口尺寸”,工作集中所包含的页面数称为,工作集中所包含的页面数称为“工作集尺寸工作集尺寸”, 记为记为 。工作集是工作集是 t和的函数:和的函数:不同不同t的工作集所包含的页面数不同的工作集所包含的页面数不同不同不同t的工作集中所包含的页面可能也不同的工作集中所包含的页面可能也不同 3. 工

28、作集工作集w(t, ) 3. 工作集工作集(2)例子)例子在某虚拟页式管理系统中,采用工作集模型来决定分给在某虚拟页式管理系统中,采用工作集模型来决定分给进程的物理块数,有如下的页面访问序列:进程的物理块数,有如下的页面访问序列:1633779162 3434344434 43窗口尺寸为窗口尺寸为 =9,试求,试求t1,t2时刻的工作集时刻的工作集。t1t21 633779162 3 434344434 43一个进程在一个进程在t时刻的工作集:时刻的工作集:w(t, )=t- 时刻到时刻到t时刻之间的页面集合时刻之间的页面集合t1时刻的工作集时刻的工作集w(t1, ) =1,2,3,6,7,7

29、,9t2时刻的工作集时刻的工作集w(t2, ) =3,4 3. 工作集工作集4.空闲页面链表空闲页面链表原理:原理:在系统中维持一个空闲页面链表,当运行进程需在系统中维持一个空闲页面链表,当运行进程需要空闲页架时直接从该链表中分配页架给当前要空闲页架时直接从该链表中分配页架给当前请求的进程,并不断地按照某种页面置换算法请求的进程,并不断地按照某种页面置换算法向空闲页面链表中加入可用页面。向空闲页面链表中加入可用页面。空闲页面链表中空闲页面的一般空闲页面链表中空闲页面的一般排序排序是:终止进是:终止进程的数据和堆栈页面排在链的最前面,其后是程的数据和堆栈页面排在链的最前面,其后是置换出来的可用页

30、面。置换出来的可用页面。4.空闲页面链表空闲页面链表特点:特点:空闲页面链表的规模应适当保持(最大、最小页架数)空闲页面链表的规模应适当保持(最大、最小页架数)空闲链表中的页面并非真正空闲链表中的页面并非真正“空闲空闲”,空闲是指可分,空闲是指可分配的含义配的含义在进行页面置换时不需移动主存中页面的内容,只是在进行页面置换时不需移动主存中页面的内容,只是把页表目从页表移入页面链表,或相反。把页表目从页表移入页面链表,或相反。通常由一个专用的进程来负责页面的替换工作通常由一个专用的进程来负责页面的替换工作空闲页面链表也称为页缓冲技术。空闲页面链表也称为页缓冲技术。空闲页面链表的作用:空闲页面链表

31、的作用:提高缺页时的系统处理效率,提高进程的执行速度。提高缺页时的系统处理效率,提高进程的执行速度。 5.交换区交换区 在请求分页的存储器管理系统中,从内存淘汰出来的页面在请求分页的存储器管理系统中,从内存淘汰出来的页面存放在外存的交换区。存放在外存的交换区。 当交换区中的页面再次被访问时,内核页面失效处理函数当交换区中的页面再次被访问时,内核页面失效处理函数将其从交换区中读出。将其从交换区中读出。 为了记录所有被换出页面在交换区中的位置,需要设置一为了记录所有被换出页面在交换区中的位置,需要设置一交换区映射表。(交换区映射表驻留内核主存区)交换区映射表。(交换区映射表驻留内核主存区) 交换区

32、中一般存放淘汰的数据页面和堆栈页面,进程的正交换区中一般存放淘汰的数据页面和堆栈页面,进程的正文页面可以通过文件系统,从执行文件中得到。文页面可以通过文件系统,从执行文件中得到。5.4 请求分段式存储器管理请求分段式存储器管理1.基本思想基本思想 只将作业的若干个段装入内存便可启动运行,并以分只将作业的若干个段装入内存便可启动运行,并以分段为单位进行换进和换出。段为单位进行换进和换出。2.请求分段中的硬件支持请求分段中的硬件支持(1)段表)段表(2)缺段中断机构)缺段中断机构段段名名段段长长段的段的基址基址存取存取方式方式访问访问字段字段修改修改字段字段有效有效位位增补增补位位外存外存始址始址

33、缺段中断的处理过程如下图:缺段中断的处理过程如下图:请求调入新段请求调入新段X内存中有内存中有X段长段长的空闲区吗?的空闲区吗?内存中所有空闲内存中所有空闲区之和区之和X段长吗?段长吗?紧凑空闲区,形成一紧凑空闲区,形成一个满足要求的空闲区个满足要求的空闲区分配空闲区并分配空闲区并从外存调入新段从外存调入新段X修改段表和有修改段表和有关数据结构关数据结构结束返回结束返回淘汰相关的段形成淘汰相关的段形成一个合适的空闲分区一个合适的空闲分区有有是是否否没有没有3.地址变换地址变换在分段管理存储管理系统的地址变换的基础上在分段管理存储管理系统的地址变换的基础上增加了缺段中断的请求和处理机制。地址变换

34、增加了缺段中断的请求和处理机制。地址变换的示意图如下:的示意图如下: 5.4 请求分段式存储器管理请求分段式存储器管理访问访问SWS段表长段表长W段长?段长?存取合法吗?存取合法吗?段在内存?段在内存?修改相应的访问字段修改相应的访问字段形成物理地址形成物理地址结束返回结束返回越界中断越界中断处理处理分段保护分段保护中断处理中断处理缺段中断缺段中断处理处理段号段号段内位移段内位移否否否否否否是是是是是是 5.4 请求分段式存储器管理请求分段式存储器管理4.分段的共享与保护分段的共享与保护(1)分段共享)分段共享共享段表:共享段表:系统中配置一张共享段表,每个共享段在共享系统中配置一张共享段表,

35、每个共享段在共享段表中占一表项,每个表项的内容如下:段表中占一表项,每个表项的内容如下:共享段的分配与回收共享段的分配与回收段名段名段长段长内存地址内存地址状态状态外存始址外存始址共享进程计数共享进程计数count进程名进程名进程号进程号状态状态段号段号存取控制存取控制4.分段的共享与保护分段的共享与保护(2)分段保护)分段保护越界检查:越界检查:每个进程只能运行在自己的地址空间。每个进程只能运行在自己的地址空间。存取控制检查:存取控制检查:只读、只执行、读只读、只执行、读/写写环保护机构:环保护机构:不同的环具有不同的访问权限。原则是:不同的环具有不同的访问权限。原则是:一个程序可以访问驻留

36、在相同环或较低环中的数据一个程序可以访问驻留在相同环或较低环中的数据一个程序可以调用驻留在相同环或较高环中的服务一个程序可以调用驻留在相同环或较高环中的服务 5.4 请求分段式存储器管理请求分段式存储器管理2009考研考研46.(8)请求答案答案2010考研46.(8分)设某计算机的逻辑地址空间和物理地址空间分)设某计算机的逻辑地址空间和物理地址空间均为均为64KB.按字节编址。若某进程最多需要按字节编址。若某进程最多需要6页(页(Page)数据存储空间,页的大小为数据存储空间,页的大小为1KB.操作系统采用固定分配操作系统采用固定分配局部置换策略为此进程分配局部置换策略为此进程分配4个页框(个页框(Page Fame).页号页号页根号页根号装入时刻装入时刻 访问位访问位0 07 71301301 11 14 42302301 12 22 22002001 13 39 91601601 1当该进程执行到时刻当该进程执行到时刻260260时,要访问逻辑地址为时,要访问逻辑地址为17CAH17CAH的数据,请问答下列问的数据,请问答下列问题:题:(1 1)该逻辑地址对应的页号是多少?)该逻辑地址对应的页号是多少?(2 2)若采用先进先出()若采用先进先出(FIFOFIFO)置换算法,该逻辑地址对应的物理地

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论