收藏 分销(赏)

新第18讲 存储器管理之请求分段存储管理方式.doc

上传人:xrp****65 文档编号:6983778 上传时间:2024-12-24 格式:DOC 页数:8 大小:312.50KB 下载积分:10 金币
下载 相关 举报
新第18讲 存储器管理之请求分段存储管理方式.doc_第1页
第1页 / 共8页
新第18讲 存储器管理之请求分段存储管理方式.doc_第2页
第2页 / 共8页


点击查看更多>>
资源描述
第十八讲 存储器管理之请求分段存储管理方式 1 引言 概述:请求分段存储管理系统也与请求分页存储管理系统一样,为用户提供了一个比内存空间大得多的虚拟存储器。虚拟存储器的实际容量由计算机的地址结构确定。 思想:在请求分段存储管理系统中,作业运行之前,只要求将当前需要的若干个分段装入内存,便可启动作业运行。在作业运行过程中,如果要访问的分段不在内存中,则通过调段功能将其调入,同时还可以通过置换功能将暂时不用的分段换出到外存,以便腾出内存空间。 2 请求分段中的硬件支持 请求分段需要的硬件支持有:段表机制、缺页中断机构、地址变换机构。 2.1 段表机制 段名 段长 段的基址 存取方式 访问字段A 修改位M 存在位P 增补位 外存始址 说明: 存取方式:存取属性(执行、只读、允许读/写) 访问字段A:记录该段被访问的频繁程度 修改位M:表示该段在进入内存后,是否被修改过。 存在位P:表示该段是否在内存中。 增补位:表示在运行过程中,该段是否做过动态增长。 外存地址:表示该段在外存中的起始地址。 2.2 缺段中断机构 当被访问的段不在内存中时,将产生一缺段中断信号。其缺段中断的处理过程如图: 2.3 地址变换机构 3 分段的共享和保护 为了实现分段共享,设置一个数据结构——共享段表,以及对共享段进行操作的过程。 3.1 共享段表 说明:所有的共享段都在共享段表中对应一个表项。其中: 共享进程计数器count:记录有多少个进程需要共享该分段,设置一个整型变量count。 存取控制字段:设定存取权限。 段号:对于一个共享段,不同的进程可以各用不同的段号去共享该段。 3.2 共享段的分配和回收 3.2.1 共享段的分配 基本过程:在为共享段分配内存时,对第一个请求使用该共享段的进程,由系统为该共享段分配一物理区,再把共享段调入该区,同时将该区的始址填入请求进程的段表的相应项中,还须在共享段表中增加一表项,填写有关数据,把count置为1;之后,当又有其它进程需要调用该共享段时,由于该共享段已被调入内存,故此时无须再为该段分配内存,而只需在调用进程的段表中,增加一表项,填写该共享段的物理地址;在共享段的段表中,填上调用进程的进程名、存取控制等,再执行count∶=count+1操作,以表明有两个进程共享该段。 就是: ▪ 第一次访问:分配内存 (1)增加共享段表;(2)修改进程段表。 ▪ 第二次访问:不用在分配内存了,因为已经把共享段调入内存 (1)修改共享段表;(2)修改进程段表。 3.2.2 回收 基本过程:当共享此段的某进程不再需要该段时,应将该段释放,包括撤消该进程段表中共享段所对应的表项,以及执行count∶=count—1操作。若结果为0,则须由系统回收该共享段的物理内存,以及取消在共享段表中该段所对应的表项, 表明此时已没有进程使用该段;否则(减1结果不为0), 则只是取消调用者进程在共享段表中的有关记录 回收: count∶=count—1 (1)count=0 系统回收该共享段的物理内存,以及取消在共享段表中该段所对应的表项, 表明此时已没有进程使用该段 (2)count< >0 取消调用者进程在共享段表中的有关记录,还有进程在使用该共享段。 4 分段保护 在分段系统中,由于每个段在逻辑上是独立,因而比较容易实现信息保护。目前分段管理的保护主要有三种: v 地址越界保护 先利用段表寄存器中的段表长度与逻辑地址中的段号比较,若段号超界则产生越界中断;再利用段表项中的段长与逻辑地址中的段内位移进行比较,若段内位移大于段长,也会产生越界中断。注:在允许段动态增长的系统中,允许段内位移大于段长。 v 访问控制保护(存取控制保护) 在段表中设置了一个存取控制字段,用于规定对该段的访问方式。 v 环保护机构 环的构成:OS核心在内环;重要的实用程序和操作系统服务在中间环;一般应用程序在外环。 在环系统中,程序的访问和调用应遵循一定的规则: (1)一个程序可以访问同环或较低特权环中的数据; (2)一个程序可以调用同环或较高特权环中的服务; 练习: 1重定位是指 ;重定位的方式有两种: 从作业的逻辑地址到物理地址的转换过程。 静态重定位和动态重定位。 2 如果一个程序为多个进程所共享,那么该程序的代码在执行的过程中不能被修改即程序应该是: 可重入码 3 若计算机CPU给出的有效地址长度为32位,内存为32M,则该机的存储空间为 M,作业的地址空间为 : 32M,232B。 4 把作业装入内存时随即进行地址变换的方式称为 ;而在作业执行期间,当访问到指令或数据时才进行地址变换的方式称为 。 静态重定位;动态重定位。 5动态重定位的特点是: 由硬件实现,在运行过程中进行地址变换。 6 用户程序中的地址称为逻辑地址,逻辑地址的集合称为 ;内存中的地址称为物理地址,物理地址的集合称为 。 地址空间;存储(物理)空间。 7 在动态分区分配算法中,首次适应算法倾向于优先利用内存中的 地址部分的空闲分区,从而保留了 地址部分的大空闲区。 低;高。 8 在分区管理中的移动(紧缩)技术可以集中 ,消除 。 空闲分区,外碎片。 9 最佳适应算法是将作业放置到: 能满足要求的最小空闲。 10 最佳适应算法的空闲区是按 顺序排列的。首次适应算法的空闲区是按 顺序排列的。 大小递增。 地址递增。 11 采用交换技术获得的好处是以牺牲 为代价的。 CPU时间。 12 设有8页的逻辑空间,每页有1024B,它们被影射到32块的物理内存中,那么逻辑地址的有效位是 ;物理地址至少 。 13;15。 13 在分页存储管理系统中,程序员编制的程序,其地址空间是连续的,分页是由 完成的。 系统。 14 采用段式存储管理的系统中,若地址用24位表示,其中8位表示段号,则允许每段的最大长度是: 2^16B。 15 在段页式存储管理中,是将作业分段,段内分页。分配以页为单位,在不考虑使用联想寄存器的情况下,每条访问内存的指令需要 次访问内存?其中第 次是查作业的页表。 3;2。 16 在某个采用页式存储管理的系统中,现有J1,J2,J3共三个作业同驻内存。其中J2有四个页面,被分别装入到主存的第3,4,6,8号块中。假定页面和存储块的大小均为1024字节,主存容量为10k字节。(1)写出J2的页表;(2)当J2在CPU上运行时,执行到其地址空间第500号处遇到一条指令:MOV  [2100],[3100] (地址2100及3100均为10进制表示)请计算出MOV 指令中的两个操作数的物理地址。 17 已知主存有256KB容量,其中操作系统占用低地址端的20KB。有下述作业序列: 作业1 要求 80KB 作业2 要求 16KB 作业3 要求 140KB 作业1 完成 作业3 完成 作业4 要求 80KB 作业5 要求 120KB 试用最佳适应算法来处理上述作业序列(在存储分配时,将空白区高端分给作业),并回答下列问题: 1) 画出作业1、2、3进入主存后,主存的分配情况; 2) 画出作业1、3完成后,主存的分配情况; 3) 画出作业4、5进入主存后,主存的分配情况; 18 实现虚拟存储器的目的是: 从逻辑上扩充主存容量。 19 虚拟的基础是局部性原理,其基本含义是指令的局部性(时间局部性与空间局部性)。 20 在虚存管理中,虚拟地址空间是指逻辑地址空间,实地址空间是指物理地址空间;前者的大小受 的限制,而后者的大小受 的限制。 机器的地址长度;物理内存大小。 21 在请求页式系统中,OPT是 ;LRU是 ;NRU是 ;LFU是 。 最佳置换算法;最近最久未使用置换算法;最近未使用置换算法;最不经常使用置换算法。 22 页式虚拟存储管理的主要特点是: 不要求将作业同时全部装入到主存的连续区域。 23 在请求分页存储管理中,若采用FIFO页面淘汰算法,则当分配的页面数增加时,缺页中断的次数 : 可能增加也可能减少。 24 在请求分页系统中,地址变换过程可能会因为 、 、 错误等原因而产生中断。 缺页、地址越界、访问权限错误。 25 若页面置换算法选择不当,可能会引起系统 抖动。 26 在请求分段存储管理中,系统必须至少具有三种支持机构,分别为 : 段表、缺段中断机构、地址变换机构。 27 有一个矩阵为100行×200列,即:a[100][200] 在一个虚存系统中,采用LRU算法,系统分给该进程5个页面来存储数据(不包含程序),设每页可存放200个整数,该程序要对整个数组初始化,数组存放时是按行存放的。试计算下列两个程序各自的缺页次数(假定所有页都是以请求方式调入): 程序一: for (i=0;i<=99;i++) for (j=0;j<=199;j++) a[i][j]=i*j; 程序二: for (j=0;j<=199;j++) for (i=0;i<=99;i++) a[i][j]=i*j; 试计算两段程序的缺页次数分别是多少? 对于程序以,外层是改变行,内层是改变列,这样,对于在外层循环一次后,内层循环都是在一行内运转的,也就是一页内运转的. 接下来我们就可以判断,程序一一共需要95次缺页中断. 程序二: for(j=0;j  <=199;j++) for(i=0;i  <=99;i++)  同程序一,程序二的内层循环是在行之间运行的,即内层循环一次,程序的运行页面需要换一个.由于初始话的时候程序数组的头5行是能放在5个页面内,因此,j=0,i=0-4之间运行的这5次,是不会产生缺页中断的.因此程序二产生的缺页 中断次数为:100*200-5=19995次 28假定某页式管理系统,主存为64KB,分成16块,块号为时0,1,2,3,4,…,15。设某作业有4页,其页号为0,1,2,3,被分别装入主存的2,4,1,6块。 1) 该作业的总长度是多少?(按十进制) 2) 写出该作业每一页在主存中的起始地址。 3) 若给出逻辑地址[0,100]、[1,50]、[2,0]、[3、60],计算出相应的内存地址。(方括号内第一个元素为页号,第二个元素为页内位移) (1)每块的大小为64KB/16=4KB 因为块的大小与页的大小相等,所以每页为4KB,因此作业的总长度4KB×4=16KB。 (2)页表为: 页 号 块 号 0 2 1 4 2 1 3 6 所以,该作业各页在内存的起始地址为: 第0页起始地址为:4K×2=8K 第1页起始地址为:4K×4=16K 第2页起始地址为:4K×1=4K 第3页起始地址为:4K×6=24K (3) 逻辑地址[0,100]的内存地址为 4K×2+100=8192+100=8292 逻辑地址[1,50]的内存地址为 4K×4+50=16384+50=16434 逻辑地址[2,0]的内存地址为 4K×1+0=4096 逻辑地址[3,60]的内存地址为 4K×6+60=24K+60=24636 29 某段式存储管理系统中,有一作业的段表如下:求逻辑地址[0,65],[1,55],[2,90],[3,20]对应的主存地址(按十进制)(方括号的第一个元素为段号,第二个元素为段内地址) 段 号 段 长 主存起始地址 状态(0—在主存, 1—在外存) 0 1 2 3 200 50 100 150 600 850 1000 —— 0 0 0 1 逻辑地址[0,65]:对应的主存地址为600+65=665。 逻辑地址[1,55]:因段内地址超过段长,所以产生段地址越界中断。 逻辑地址[2,90]:对应的主存地址为1000+90=1090。 逻辑地址[3,20]:因为状态位为1,即该段在外存中,所以产生缺页中断。 30在某请求分页管理系统中,一个作业共5页,作业执行时依次访问如下页面:1,4,3,1,2,5,1,4,2,1,4,5,若分给该作业的主存块数为3,分别采用FIFO,LRU页面置换算法,求缺页次数和缺页率 FIFO算法,缺页次数=9,缺页率9/12=75% LRU算法,缺页次数=8,缺页率8/12=67% 32 假定某页式管理系统,主存为128KB,分成32块,块号为0,1,2,…,31;某作业有5块,其页号为0,1,2,3,4,被分别装入主存的3、8、4、6、9块中,有一逻辑地址为[3,70],求出相应的物理地址,并画图说明地址变换过程。 每页大小=每块大小=128KB/32=4KB 逻辑地址[3,70]对应的物理地址 4KB×6+70=24KB+70=24646 地址变换过程图(略) 33 某段式存储管理系统中,有一作业共4段,段号为0,1,2,3,段表如下: 段 号 段 长 主存始址 状态 0 500 1500 0 1 400 2600 0 2 120 —— 0 3 85 380 1 试计算逻辑地址[0,45],[1,50],[2,60], [3,90]相应的主存地址。当无法进行地址转换时,应说明产生何种中断。 逻辑地址[0,45]相应的主存地址为:1545 逻辑地址[1,50]相应的主存地址为:2650 逻辑地址[2,60]产生缺页中断, 逻辑地址[3,90]产生地址越界中断。
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服