admin管理员组文章数量:1567263
2024年3月31日发(作者:)
第五章 存储管理
1 存储管理的主要功能是什么?
【解答】
①主存的分配和回收存储管理的一个主要功能就是实现主存的分配和回收。多个进程同时进入主存,
怎样合理分配主存空间,哪些区域是已分配的,哪些区域未分配,按什么策略和算法进行分配使得主
存空间得到充分利用。当一个作业撤离或执行完后,系统必须收回它所占用的主存空间
②地址变换用户在程序中使用的是逻辑地址,而处理器执行程序时是按物理地址访问主存,要把逻辑
地址变换为物理地址,存储管理软件必须配合硬件进行地址转换工作,把逻辑地址转换成物理地址,
以保证处理器的正确访问。
③存储共享内存共享的原因有两个:一是为了更有效地使用内存空间;二是为了实现两个协同工作的
进程所共享的内存缓冲区。使多个进程能动态地共享内存,以及多个进程可以共同使用同一软件,如
编译程序,存放编译软件的内存即为共享内存区。
④“扩充”主存容量它借助于提供虚拟存贮器或其他自动覆盖技术,来达到“扩充”主存容量的目
的。即为用户提供比主存的存储空间还大的地址空间。
⑤存储保护保证各道作业都在自己所属的存储区内操作,必须保证它们之间不能相互干扰、相互冲突
和相互破坏,特别要防止破坏系统程序。为此,一般由硬件提供保护功能,软件配合实现。
2 什么是地址重定位?动态重定位如何实现?
【解答】
为了保证作业的正确执行,必须根据分配给作业的主存区域对作业中指令和数据的存放地址进行重定
位,即要把逻辑地址转换成绝对地址。把逻辑地址转换成绝对地址的工作称“重定位”或“地址转
换”。重定位的方式可以有“静态重定位”和“动态重定位”两种。
动态重定位由软件和硬件相互配合来实现。硬件要有一个地址转换机构,该机构可由一个基址寄存器
和一个地址转换线路组成。存储管理为作业分配主存区域后,装入程序把作业直接装到所分配的区域
中并把该主存区域的起始地址存入相应作业进程的进程控制块中。当作业进程被调度去占用处理器
时,随同现场信息的恢复,作业所占的主存区域的起始地址也被存放到“基址寄存器”中。作业执行
时,处理器每执行一条指令都会把指令中的逻辑地址与基址寄存器中的值相加得到绝对地址,然后按
绝对地址访问主存储器。
3 在可变分区管理方式下,采用移动技术有什么优点?移动一道作业时操作系统要做哪些工作?
【解答】
在可变分区管理中,一个重要问题就是“碎片”问题。系统运行一段时间后,可能会出现这样的情况:
分布在主存各处的小的空闲区占据了相当数量的空间,当一个作业申请一定数量的主存时,虽然空闲
区的总和大于作业请求的主存容量,但却没有一个空闲区大到足够容纳这个作业。为了利用这些空间,
可以采用移动技术。即将内存中的作业进行移动,使所有分散的小的空闲区拼接成一个大的空闲区,
从而可以将作业装入到这个大的空闲区。需要注意的是,由于移动后用户程序在内存中的位置发生了
变化,如不对用户程序和数据的地址进行修改,则程序无法正常运行。为使之能运行,必须进行重定
位。即在系统中增加一个重定位寄存器,用它来装入程序在内存中的起始地址。程序执行时,真正访
问内存的地址是相对地址与重定位寄存器中的地址相加而形成的。
4 什么叫虚拟存储器?怎样确定虚拟存储器的容量?
【解答】
从用户角度看,系统具有的内存空间比实际的主存容量大得多,称这样只需装入程序的部分页(或段)
就可执行的存储系统为虚拟存储器。
实际上,虚拟存储空间并不是无限的,它的最大容量不仅受到系统的物理主存和辅存容量的限制,它
不能超过主存容量和辅存容量的和;同时,系统的所能提供的虚拟存储空间还受到系统CPU的地址结
版权声明:本文标题:存储管理 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/dianzi/1711862421a331149.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论