在下列存储管理方案中,(1)是解决内存碎片问题的有效方法。虚拟存储器主要由(2)组成。
0 \5 k: {/ _5 @, j6 X# C6 c* d(1)A.单一连续分配
& ~: W- |5 y/ N+ q3 B D, z B.固定分区
2 A! ~6 A; G$ ^- k# p C.可变分区 5 N% x! |2 s5 J. G4 z
D.可重定位分区
# `4 C) u' W, R( z( l(2)A.寄存器和软盘
& y& Y) @ R+ P: i B.软盘和硬盘5 }/ y% ^; n- e# Y
C.磁盘区域与主存 - o E/ d5 o# t: e' j" I: c" d
D.CDROM和主存
4 i0 ^; ]* M4 y1 S. E! X试题(1)分析 引入可变分区后虽然主存分配更灵活,也提高了主存利用率,但是由于系统在不断地分配和回收中,必定会出现一些不连续的小的空闲区,尽管这些小的空闲区的总和超过某一个作业要求的空间,但是由于不连续而无法分配,产生了碎片。解决碎片的方法是拼接(或称紧凑),即向一个方向(例如向低地址端)移动已分配的作业,使那些零散的小空闲区在另一方向连成一片。分区的拼接技术,一方面是要求能够对作业进行重定位,另一方面系统在拼接时要耗费较多的时间。可重定位分区是解决碎片问题的简单而又行之有效的方法。基本思想:移动所有已分配好的分区,使之成为连续区域。分区“靠拢”的时机:当用户请求空间得不到满足时或某个作业执行完毕时。由于靠拢是要代价的,所以通常是在用户请求空间得不到满足时进行。
' u3 i/ R$ q) P4 c$ r试题(2)分析 本题考查的是操作系统存储管理方面的基础知识。
! p, f4 a9 O- C/ v一个作业在运行之前,没有必要把作业全部装入主存,而仅将那些当前要运行的那部分页面或段,先装入主存便可启动运行,其余部分暂时留在磁盘上。- n+ b1 K0 u' {; w
程序在运行时如果它所要访问的页(段)已调入主存,便可继续执行下去;但如果程序所要访问的页(段)尚未调入主存(称为缺页或缺段),此时程序应利用OS所提供的请求调页(段)功能,将它们调入主存,以使进程能继续执行下去。
/ E* b E. x" ~! @( c如果此时主存已满,无法再装入新的页(段),则还须再利用页(段)的置换功能,将主存中暂时不用的页(段)调出至磁盘上,腾出足够的主存空间后,再将所要访问的页(段)调入主存,使程序继续执行下去。这样,便可使一个大的用户程序在较小的主存空间中运行;也可使主存中同时装入更多的进程并发执行。从用户角度看,该系统所具有的主存容量,将比实际主存容量大得多,人们把这样的存储器称为虚拟存储器。
+ U: `5 q" w8 {, D, _6 D4 d虚拟存储器具有请求调入功能和置换功能,仅把作业的一部分装入主存便可运行作业,是能从逻辑上对主存容量进行扩充的一种虚拟存储器系统。其逻辑容量由主存和外存容量之和,以及CPU可寻址的范围来决定,其运行速度接近于主存速度,成本却比较低。可见,虚拟存储技术是一种性能非常优越的存储器管理技术,故被广泛地应用于大、中、小型机器和微型机中。( ~ A* F' N) }2 |/ A( z$ L; d
参考答案 (1)D (2)C |