习题7答案
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、存储管理的主要功能是什么?
解内存分配、存储保护、地址变换、存储共享、存储扩充
2、什么是地址空间、存储空间、逻辑地址、物理地址?
解:1)地址空间:一个程序可以访问的地址是有限的,这个程序可以访问的地址范围我们称为地址空间,或者说是指程序用来访问信息所用的地址单元的集合。
2)存储空间:所谓存储空间是指能够访问的主存的范围。一个数据在主存中的位置称为物理地址或绝对地址。
3)逻辑地址:地址空间单元的编号。
4)物理地址:存储空间单元的编号。
3、采用可变式分区存储管理时,能否实现虚拟存储,为什么?
解:不能。可变式分区方式虽然分成程序的大小可以变化,但是要求整个程序都装入内存才能运行,这样无法进行逻辑上扩充内存。
4、可变分区管理有哪几种存储分配算法?
解:1)首次适应算法(First-Fit)。这种策略总是从链表的开头开始查找。一旦找到了足够大的、能满足给定的请求的第一个空闲分区,就停止查找。
2)下次适应算法(Next-Fit)。又称为循环首次适应算法。对首次适应算法的一个简单改动就是每次要从上次查找停止的位置开始查找,也就是前次分配后的空闲分区。
3)最佳适应算法(Best-Fit)。这种策略的直观想法是,总是给内存请求者分配最适合它大小的空闲分区,提高内存的利用率。
5、什么是地址重定位?有哪几种常用的地址重定位方法?
解:由于将作业装入到与其地址空间不一致的存储空间所引起的对有关地址部分的调整过程称为地址重定位。
常用的重定位方法有两种,静态重定位和动态重定位。静态重定位是指在程序运行之前
由链接装入程序进行的重定位。动态重定位是在程序运行过程中,通过重定位寄存器来进行地址转换。
6、在某系统中,采用固定分区分配方式,内存分区(单位:字节)情况如下图左所示。现有大小为4KB 、18KB 、50KB 、85KB 的多个作业要求进入内存,试画出它们进入内存后的空间分配情况,并说明主存浪费有多大。
解:从图中可以看出该系统共有4个分区,第一个分区的大小为10KB ,第二个分区的大小为30KB ,第三个分区的大小为80KB ,第四个分区的大小为100KB 。作业进入系统后的情况如下图右所示。
150KB
0KB 150KB
0KB
从上图右可以看出,作业进入系统后,第一分区剩余空间为6KB ,第二分区剩余空间 为12KB ,第三分区的剩余空间为30KB ,第四分区剩余的空间为21KB 。主存共浪费69KB 。
7、简述页式存储管理的基本原理及地址转换过程。
解:分页存储管理的原理是:把作业分成大小相的的部分,称为页;把内存分成大小与页的大小相同的分区,称为块。在进行内存分配时,以块为单位,使得作业的多个页可以离散地存放在内存中。
地址转换过程参见教材中图7.8。
8、设有一页式存储管理系统,向用户提供的逻辑地址空间最大为32页,每页1024字节,内存共有8个存储块,试问逻辑地址至少应为多少位?内存空间有多大?
解:每页1024字节,即210,所以页内偏移量占10位,逻辑地址空间最大为32页,所以页号部分占用5位,因此,逻辑地址应为15位。
内存中有8个存储块,由于分页系统中物理块的大小和逻辑页的大小相同,所以内存
空间为8K 。
9、试述分页系统和分段系统的主要区别。
解:分页存储管理和分段存储管理的有很多相似之处,也有很多不同,它们的主要区别如下:
256KB
(1)页是信息的物理单位,分页的主要目的是减少内存的外碎片,提高内存的利用率。
分页是由于系统管理员的需求,而不是用户的需求。段是信息的逻辑单位,分段的目的是为了程序的完整性,使为了满足用户的需求。
(2)页的大小是固定的,取决于系统,有系统自动把地址分成页号和块号。段的长度是不固定的,并且可以不断变化。
(3)分页的地址空间是一维的,即单一的线性地址空间,程序员只需利用一个记忆符就可以标识一个地址;分段的地址空间是二维的,程序员在标识一个地址时,即要给出段名,又要给出段内地址。
10、简述虚拟存储器的工作原理。
解:将作业放在磁盘上,当作业装入的时候,只装入部分作业,在作业的执行过程中,当需要访问的信息不在内存,在通过请求调页功能或请求调段功能把需要的信息调入内存。
11、一个32位地址的计算机使用两级页表。虚拟地址被分成9位的顶级页表域,11位的二级页表域和一个偏移量。页面大小是多少?在地址空间中一共有多少个页面?
解:页面大小为212=4KB,地址空间中一共可以使用的页面是220个。
12、页系统中页表的结构?
解:页号、物理块号、外存地址、状态位、访问位、修改位
13、某请求分页存储管理系统中,允许用户编程空间为32个页面(每页1KB),主存为16KB。
如有一个用户的页表如下图所示,则虚地址0AC5H、1AC5H对应的物理地址是多少?
解:每页大小为1KB,则页内地址部分占10个字节,逻辑地址0AC5H转换成二进制是000010 1011000101,即第二页,存放在第四个物理块中,所以得到的物理地址是000100 1011000101,即12C5H。
逻辑地址1AC5H转换成二进制为000110 1011000101,即页号为6,从页表中可以看出:第六页还没有调入内存,这时产生一个缺页。
14、有一请求分页存储管理系统,页面大小为每页200字节,有一个50×50的整型数组按行连续存放,每个整数占2个字节,将数组初始化为0的程序描述如下:int a[50][50]
int i,j;
for(i=0;i<50;i++)
for(j=0;j<50;j++)
a[i][j]=0;
若在程序执行时,内存中只有一个存储块用来存放数组信息,试问该程序执行时产生多少次缺页中断。