操作系统教程.docx

第五章 存储管理 1.产生存储分配问题的背景是什么?何谓静态分配?何谓动态分配?动态分配的原因是 什么? 答:一个有效的存储分配机制,应对用户提出的需求做出快速响应,为之分配相应的存储 空间,在用户作业不需要它时,及时收回,供其他用户使用。 内存分配有两种方式 1)静态分配:程序要求的内存空间是在目标模块连接装入内存时确定并分配的,并且在 程序运行过程中不允许再申请或在内存中“搬家”,也就是分配工作是在程序运行前一次 性完成 2)动态分配:程序要求的基本内存空间是在目标模块连接装入内存时确定并且分配的, 但是在运行过程中,允许申请附加的内存空间或在内存中“搬家”,也就是分配工作可以 在程序运行前及运行过程中逐步完成 动态分配的原因:动态分配具有较大的灵活性,对提高内存的利用率,比静态分配更合理 些。 2.阐述操作系统中选择存储管理方案的原则。 答: 原则: 1. 存储管理必须合理地分配内存空间 2.为了避免内存中的各个程序相互干扰,还必须实现存储保护 3.有效利用内存空间,允许多个作业共享程序和数据 4.为了在内存中运行长度为任意大小的程序,必须采用一定的方法“扩充”内存 3.可变分区管理方式下,采用移动技术有什么优点?移动一道作业时操作系统要做哪些工 作? 答:对碎片进行整理,把所有空闲碎片合并成一个连续的大空闲区,供作业使用。 被移动了得程序,需要进行重新定位,可以用动态地址映射实现。 4.用可变分区方式管理主存时,假定主存中按地址顺序依次有 5 个空闲区,空闲区的大小 依次为 32k,10k,5k,228k,100k。现有 J1,J2,J3,J4,J5。它们各需主存 1k,10k,108k,28k,1 15k。若采用最先适应分配法能把这 5 个作业按 J1, J5 次序全部装入主存吗?你认为按怎样 的次序装入这 5 个作业可使主存空间利用率最高。 答:1) 若采用最先适应分配法,无法将 5 个作业全部装入主存! 2)通过对最佳适应分配法和最差适应分配法的分析,其中最差适应分配法的内存空 间 利用率最高. 5.什么是碎片?试述各种多道程序系统存储管理方案中碎片是如何出现的? 答:经过一段时间的分配回收后,内存中存在很多很小的空闲块。它们每一个都很小,不 足以满足分配要求;但其总和满足分配要求。这些空闲块被称为碎片 6.段式存储管理系统中是如何实现存储保护的? 答:段式管理的存储保护主要有两种。一种是地址越界保护法,另一种是存取方式控制保 护法。具体的措施有: 1)利用段表及段长来实现段的保护,防止程序执行的时地址越界 2)存取权限保护法,在段表中设有“存取权”一项,可对程序的访问权限进行各种必要 的限制 3)存取保护键保护:由于 I/O 通道对存储器的访问是不通过段表的,因此有的机器还采用 存储保护健来保护 7,在段式存储管理系统中,如何实现多个作业对一个信息段的共享?并说明可共享过程 段的动态链接过程。 答:1)如果多个用户进程或作业需要共享某段程序或者数据,可以使用不同的段名,在各 自的段表中填入已在内存中的共享段的地址,并设置适当的读写控制权,就可以做到共享 一 个内存段的信息。 8.段式存储管理系统中,为什么说存取方式控制对共享段特别重要? 答: 存取方式对于非共享段来说,主要是用来指示程序设计的错误,而对共享段来说,则显得 特别重要,例如某个纯代码段被共享,则必须禁止任何作业修改它,因此,规定这样的段 只能“执行”。对于某个共享的数据段,只允许大家“读”,而不能“写”,或只允许某 一个用户“写”。 此外,通常还禁止任何作业“读”一个过程段,因为: 1)读一个过程段显然是程序设计的错误 2)有些过程是专用的,只准使用,不准“拿走”。如果一个分段仅具有“执行”状态, 那么只能作为一个过程来调用,而“读”“写”是禁止的;如果有作业给他们企图“读” 和“写”,则系统发出保护中断信号。 -- 9.保护方式除 R,W,EX(执行)组合外,你还能想出其他的保护方式吗? 答:保护方式除了 R,W,EX 组合成的存取权限位外,还应该增加以下内容: 1)特征位(该段在/不在内存,是否可共享) 2)标志位(该段是否被修改过,能否移动) 3)扩充位(改段长度固定长/可扩充) 10.什么是动态链接?为什么虚拟段式存储管理系统有利于动态链接? 答:动态链接是:是在程序开始运行时,只将主程序段装配好,并调入内存,其他各段 的装配是在主程序段的运行过程中逐步完成。每当需要调用一个新段时,再将这个新段装 配好,并于主程序段链接。 2)? 11.有一个操作系统采用段式存储管理方案,用户区内存为 512K,分配

文档评论(0)

1亿VIP精品文档

相关文档