分页存储管理,是将一个进程的逻辑地址空间分成若干个大小相等的片,称为页面或页,并为各页加以编号,从0开始,如第0页、第1页等。相应地,也把内存空间分成与页面相同大小的若干个存储块,称为(物理)块或页框(frame),
缺页中断处理是操作系统中的一种异常情况处理方式,用于处理程序访问不存在或者未分配的内存页的情况。产生缺页中断请求调页
由于进程的最后一页经常装不满一块而形成了不可利用的碎片,称之为“页内碎片”。
常规存储器管理方式的特征
- 一次性。
- 驻留性。
虚拟存储器的特征
- 多次性
- 对换性
- 虚拟性
1.(单选题, 0.5分)在虚拟分页存储管理系统中,若进程访间的页面不在主存,且主存中没有可用的空闲帧时,系统正确的处理顺序为( )。
在虚拟分页存储管理系统中,如果进程访问的页面不在主存中,并且主存中没有可用的空闲帧,会发生缺页中断。系统接着会决定淘汰哪一页来腾出空闲帧。然后,系统会将要调入的页面从外存中调入到主存中,然后将要调出的页面从主存中调出到外存中。因此,正确的处理顺序是缺页中断→决定淘汰页→页面调出→页面调入
2. (单选题)解决“碎片”问题最好的存储管理方法是___________。
页式管理是最有效的解决碎片方式,它将内存划分为固定大小的页,每个页的大小通常与计算机系统的页面大小相同。这样,内部碎片最多也只会有一个页有内部碎片,而外部碎片可能大到无法分配一块大数据(但是把所有间隙都拼接在一起可以分配这个大数据),所以分页解决碎片最好。
- 页式管理是一种内存管理方式,它将内存划分为固定大小的页,每个页的大小通常与计算机系统的页面大小相同。页式管理的优点是易于实现和理解,但缺点是内存利用率较低,因为只有当程序运行到一个完整的页时,才能将其全部装入内存。
- 可变分区管理是一种内存管理方式,它允许操作系统根据需要动态地改变进程的存储空间大小。这种管理方式的优点是可以提高内存的利用率,但缺点是实现起来较为复杂,需要额外的硬件支持。
- 段式管理是一种更复杂的内存管理方式,它将内存划分为多个逻辑段,每个段可以包含不同的类型和大小的数据。段式管理的优点是可以更好地满足程序的存储需求,但缺点是实现起来更为复杂。
- 固定分区管理是一种最简单的内存管理方式,它将内存划分为固定大小的分区,每个分区只能分配给一个进程使用。这种管理方式的优点是简单易懂,但缺点是内存利用率较低。
补充
(单选题)采用紧凑法消除碎片的存储方法是( )。
采用紧凑法消除碎片的存储方法是动态分区。这种方法可以在程序执行过程中不立即回收用户释放的存储块,而是等到可利用空间不足或堆指针指向了可利用存储区的最高地址时才进行存储紧缩。具体来说,解决碎片问题的方法是拼接,即当无法分配内存时,向一个方向(例如向低地址端)移动已分配的作业,使那些零碎的小空闲区在另一个方向连成一片,形成连续区域。
补充
可重定位内存分区分配目的为____。
解析:可重定位内存分区分配的主要目的是将内存中执行的程序集中,从而避免浪费内存。这种分配方式可以更好地利用内存空间,但需要注意的是,由于一个进程可能被分配到多个不连续的区域,所以需要进行地址重定位,这会增加系统的开销。
空白区是指没有被分配给进程使用的内存区域。这些区域可能由于内存碎片等原因而无法被利用。可重定位内存分区分配的主要目的是将内存中执行的程序集中,从而避免浪费内存。
3. (单选题)在页式分配中,CPU从内存中取一次数据需要( )次访问内存。
在页式分配中,CPU从内存中取一次数据需要两次访问内存。第一次是从内存中找到页表,然后找到页面的物理块号,加上页内偏移得到实际物理地址;第二次根据第一次得到的物理地址访问内存取出数据。
补充
(单选题)在段页式管理中,每取一次数据,要访问( )次内存。
在段页式存储管理中,每取一次数据需要访问内存三次。首次访问内存中的段表,以查找到页表的起始地址;第二次访问内存中的页表,找到页帧号,形成物理地址;第三次得到物理地址后,再次访问内存,进行指令或数据的存取。
4. (单选题)在动态分区分配方案中,某一作业完成后,系统收回其主存空间,并与相邻空闲区合并,为此需修改空闲区表,造成空闲区数减1的情况是( )。
在动态分区分配方案中,当某一作业完成后,系统会收回其主存空间,并与相邻空闲区合并。如果有上邻空闲区和下邻空闲区,那么合并后,空闲区数会减2(因为原来的两个空闲区变成了一个)。
5.(单选题)在可变式分区存储管理中,某作业完成后要收回其主存空间,该空间可能与相邻空闲区合并,修改空闲区表,使空闲区数加1的情况是( )。
6.在可变分区分配中,首次适应分配算法要求对空闲区表项按_______排列。
在可变分区分配中,首次适应分配算法总是顺序查找未分配表,直到找到第一个满足长度要求的空闲区。因此,空闲区表项需要按地址从小到大排列。
补充分区管理中采用“最佳适应”分配算法时,宜把空闲区按( )次序登记在空闲区
在分区管理中,当采用“最佳适应”分配算法时,宜把空闲区按大小递增次序登记在空闲区表中。这是因为最佳适应算法会从最小的空闲区开始查找,以满足内存需求。
补充
(单选题)动态分区存储管理方法采用最坏适应分配算法时,将空闲区按______顺序登记到空闲区表中。
在进行动态分区存储管理时,最坏适应分配算法会选择最大的空闲区进行分配。因此,在将空闲区登记到空闲区表时,需要按照容量递减的顺序进行排序。这样,最坏适应算法可以找到满足作业要求的足够大的空闲区,避免因为选择较小的空闲区而导致的不连续碎片问题,
7.以下页面置换算法中,( )可能会产生Belady现象。
Belady现象指的是在页面置换算法中,增加物理页面数并不一定能够减少页面缺失次数的现象。
在页面置换算法中,当物理页面数不足时,会发生页面置换,将物理页面中的某一页替换出去,然后将新的页面调入物理页面中。
Belady现象的发生是指,当物理页面数增加时,页面置换算法的性能反而变差,即页面缺失次数反而增加。
这个现象在FIFO(先进先出)页面置换算法中特别明显。
8.(单选题, 0.5分)在存储管理中,把目标程序中的逻辑地址转换成主存空间的物理地址的过程称为 ( )。
在存储管理中,把目标程序中的逻辑地址转换成主存空间的物理地址的过程称为地址重定位。这个过程是通过使用页表来实现的,页表的作用就是实现从页号到物理块号的地址映射。
补充
(单选题)若操作系统使用( )技术,目标程序可不经任何改动而装入物理内存。
9.(单选题)支持程序浮动的地址转换机制是( )。
支持程序浮动的地址转换机制是动态重定位。这是因为在程序执行期间,随着每条指令或数据的访问,它需要自动进行地址转换。与此不同的是,静态重定位是一种不支持程序浮动的地址转换机制,它在程序执行前由连接装入程序实现逻辑地址到物理地址的转换。而页式地址转换、段式地址转换和段页式地址转换等都是进程在运行过程中完成的地址重定位,它们都属于“动态重定位”的范畴。
10.(单选题)在段页式存储管理中,地址映像表是( )。
在段页式存储管理中,地址映像表是由每个作业或进程的一张段表和每张段对应的一张页表组成的。
补充
页式存储管理的基本思想是( )。
A、 用分段的方法来分配和管理物理存储空间,用分页的方法来管理用户地址空间;
B、 用分段的方法来分配和管理用户地址空间,用分页的方法来管理物理存储空间;
C、 用分段的方法来分配和管理主存空间,用分页的方法来管理辅存空间;
D、 用分段的方法来分配和管理辅存空间,用分页的方法来管理主存空间;
正确答案: B
11.分页式存储管理系统中的分页是由( )完成的。
分页式存储管理系统中的分页是由操作系统完成的。具体来说,操作系统会将内存空间分为一个个大小相等的分区,称为“页框”,并将用户进程的地址空间也分为与页框大小相等的一个个区域,称为“页”或“页面”。每个页面有一个编号,即“页号”,页号也是从0开始。操作系统以页框为单位为各个进程分配内存空间。这种管理对于上层用户和应用程序都是完全透明的,应用程序的开发者看到的只是一段连续的地址空间罢了,是看不到具体的内存页的
12.(单选题)在下列有关请求分页存储管理的叙述中,正确的是____。
解析:
A.在请求分页存储管理中,程序和数据并不是在程序开始执行前一次性装入内存的,而是在运行过程中根据需要动态地装入或替换。
B.产生缺页中断并不一定要淘汰内存中的一个页面,有时也可以将新页面暂时调入到内存的某个区域。
C.一个淘汰的页面也不一定需要写回辅存,如果该页面被频繁访问,那么就没有必要写回辅存。
D.而在页表中确实需要有“中断位”、“访问位”等信息,这些信息用于记录页面的使用情况和状态,以便于操作系统进行页面调度和管理。
辅存,也被称为外部存储器,是计算机中的一种重要组件,用于存储大量的数据和程序,以便长期保存和备份。常见的辅助存储设备包括硬盘、光盘、U盘等。它们的共同特点是存储容量大,价格相对较低,可以永久地保存信息,尽管读取速度相对较慢。当内存空间不足时,操作系统需要根据设定的置换算法选择一页进行换出。如果被换出的页面在最近一段时间内没有被修改过,那么这个页面就没有必要写回辅存。但是,一旦这个页面被修改过,为了保持数据的一致性,它必须被写回到辅存中。然后再把所缺的页调入内存,并修改对应的页表。
13.(单选题)在虚拟内存管理中,地址变换机构将逻辑地址变换为物理地址,形成该物理地址的阶段是( )。
14.(单选题)关于存储器管理,以下说法错误的是( )。
内存分配算法主要有以下几种:首次适应算法、循环首次适应算法、最佳适应算法和最坏适应算法。首次适应算法是将进程放入内存的首个可用分区中,因此搜索速度较快;循环首次适应算法则是在满足条件的分区形成循环时,将进程放入下一个可用分区中;最佳适应算法是将进程放入能满足其要求的最小分区中,从而保留了大的空闲区;而最坏适应算法是将进程放入最大的可用分区中,它可能会导致大内存碎片的产生。
是错误的。因为首次适应算法搜索速度并不是最快,而是最坏适应法的搜索速度最快。
15. (单选题)在请求分页系统中, 页面分配策略与页面置换策略不能组合使用的是( )。
在请求分页系统中,静态分配和全局置换是不能组合使用的。静态分配是指在程序运行前就确定了页面的分配,而全局置换是在程序运行过程中根据需要动态地进行页面的分配和置换。这两种策略在实际应用中可能会导致系统性能下降,因此它们不能同时使用。
16.采用段式存储管理时,一个程序如何分段是在( )决定的。
采用段式存储管理时,一个程序如何分段是由用户编程时决定的。因为在编程时,程序员需要根据程序的结构和逻辑来划分各个部分,以便在运行时能够正确地访问和处理这些数据。
17. (单选题)下面关于虚存的说法正确的是( )。
18. (单选题)当系统发生抖动(thrashing)时,可以采取的有效措施是( )。 I. 撤销部分进程 II. 增加磁盘交换区的容量 III.提高用户进程的优先级
抖动现象是指在内存紧张的情况下,频繁地换出和换入进程,导致系统效率降低。因此,撤销部分进程可以有效地减少内存的使用,从而避免抖动现象的发生。增加磁盘交换区的容量和提高用户进程的优先级并不能直接解决抖动问题。
19.(单选题)通常所说的"存储保护"的基本含义是________。
存储保护的基本含义是防止程序间相互越界访问。这是因为在计算机系统中,每个程序都有自己的运行空间,如果两个程序同时访问同一个内存地址,可能会导致数据混乱或者程序崩溃。因此,需要通过存储保护机制来防止这种情况的发生。
20.(单选题)______存储管理方式提供一维地址结构
A. 段页式存储管理方式结合了分段和分页两种方法,它充分利用分段管理和分页管理的优点。程序的地址空间按逻辑单位分成基本独立的段,而每一段有自己的段名,再把每段分成固定大小的若干页。因此,段页式存储管理方式提供了二维的地址结构。
B. 分段和段页式存储管理方式都提供二维的地址结构。在分段存储管理中,程序的地址空间按逻辑单位分成基本独立的段,每一段有自己的段名。而在段页式存储管理中,程序的地址空间先按逻辑单位分成基本独立的段,再把每一段分成固定大小的若干页。
C. 分段存储管理方式提供二维的地址结构,程序的地址空间按逻辑单位分成基本独立的段,每一段有自己的段名。
D. 只有分页存储管理方式提供一维地址结构,它是一种基于内存块的内存管理方法,每个进程以块为单位进行划分,进程在执行时,以块为单位逐个申请主存中地块空间。
21.(单选题)在段式分配中,若段内逻辑地址大于段表中该段的段长,则发生________。
在段式存储管理中,逻辑地址由段号和段内地址两部分组成。若段内逻辑地址大于段表中该段的段长,意味着访问越界了,因此会发生地址越界中断。这是为了保护系统的安全,防止程序访问不应该访问的内存空间。
22. (判断题)采用分段式存储管理不会产生内部碎片。 ( )
采用分段式存储管理不会生成内部碎片。因为在分段式存储管理方法中,一个作业的地址空间被划分为多个逻辑信息段,每个段都从0开始编址并且使用一段连续的地址空间。因此,各个段之间的空闲内存无法被利用,从而可能导致外部碎片的产生。但是相对于其他存储管理方式,如分页式存储管理和固定分区式存储管理,分段式存储管理的优点在于其不会产生内部碎片。
23.(判断题)可变式分区解决了碎片问题。( )
可变式分区是一种内存管理方式,用户在申请内存空间时,系统会根据用户的需求分配相应大小的内存空间。这种方式克服了固定分区方式中可能出现的内存浪费问题,并且解决了内部碎片的问题。然而,它并未解决外部碎片的问题。因为在动态分区过程中,由于分区数量的不确定性,有可能会产生一些较小的空闲分区,这些小的空闲分区无法被利用,从而形成了外部碎
23.(判断题)固定分区存储管理的各分区的大小可变化,这种管理方式不适合多道程序设计系统。
固定分区存储管理的各分区的大小是固定的,这种管理方式适合多道程序设计系统。因为在多道程序设计系统中,各个程序需要共享内存资源,如果分区大小可变,可能导致不同程序之间的内存访问冲突。而固定分区存储管理可以确保每个程序都有足够的内存空间,从而避免内存访问冲突。
24.段的逻辑地址形式是段号10位,段内地址20位,内存1MB,辅存10GB。那么虚拟存储器最大实际容量可能是( )。
A、 1024KB
B、 1024MB
C、 10GB
D、 10GB+1MB
正确答案: B
虚拟存储器的最大实际容量取决于具体的硬件配置和操作系统。在某些情况下,虚拟存储器的容量可能接近于实际物理存储器的容量。然而,在其他情况下,虚拟存储器的容量可能小于实际物理存储器的容量。
根据您提供的信息,段的逻辑地址形式是段号10位,段内地址20位,内存1MB,辅存10GB。这意味着该虚拟存储器有1MB的内存空间和10GB的辅存空间。因此,该虚拟存储器的实际容量至少为1MB+10GB=1024KB(1MB=1024KB)。
然而,这个答案并不准确,因为我们没有考虑到操作系统和应用程序对虚拟存储器的使用情况。例如,如果应用程序占用了大部分的内存空间,那么虚拟存储器的实际容量可能会小于1024MB。因此,正确的答案应该是B、1024MB。
25.可能出现抖动的存储管理方式是( )
A、 固定式分区分配
B、 动态分区分配
C、 动态重定位分区分配
D、 请求分页存储管理
正确答案: D
抖动是指在内存中频繁地进行页面交换,导致系统性能下降的现象。请求分页存储管理是一种常见的存储管理方式,它允许进程只在需要时才将部分页面装入内存,从而减少了内存中的浪费和抖动现象的发生。因此,选项D是正确答案。
固定式分区分配、动态分区分配和动态重定位分区分配都是传统的存储管理方式,它们无法有效地控制页面交换行为,容易导致抖动现象的发生。
若工作集的窗口大小为6,则在t时刻的工作集为
A、 {0,4,3,2,9}
B、 {2,3,0,4}
C、 {6,0,3,2}
D、 {4,5,6,0,3,2}
正确答案: C
所谓工作集,是指在某段时间间隔Δ里,进程实际所要访问页面的集合
27.下列关于虚拟存储器的叙述中,正确的是( )。
A、 虚拟存储只能基于连续分配技术
B、 虚拟存储只能基于非连续分配技术
C、 虚拟存储容量只受外存容量的限制
D、 虚拟存储容量只受内存容量的限制
正确答案: B
解析:虚拟存储器是一种存储技术,它使得应用程序认为它拥有连续的可用内存(一个连续完整的地址空间),而实际上,它通常是被分隔成多个物理内存碎片,还有部分暂时存储在外部磁盘存储器上,在需要时进行数据交换。因此,虚拟存储器的实现只能建立在离散分配的内存管理的基础上,所以选项A是错误的。虚拟存储器的容量既不受外存容量限制,又不受内存容量限制,而是由CPU的寻址范围决定的。
答案: B
28.虚存的理论基础是( )。
A、 程序的局部性理论
B、 代码的顺序执行
C、 变量的连续访问
D、 指令局部性
正确答案: A
虚存的理论基础是程序的局部性理论,即程序在执行过程中,对于一段时间内访问的代码和数据的概率会很高。因此,虚存将这些可能需要访问的数据和代码保存在硬盘上的一个连续的、可快速访问的区域,称为虚拟存储器。当程序需要访问这些数据或代码时,操作系统会将它们从硬盘加载到内存中。这样,程序可以在有限的物理内存中运行,而不会受到内存容量的限制。
29.某系统采用改进型CLOCK置换算法,页表项中字段A为访问位,M为修改位。A=0表示页最近没有被访问,A=1表示页最近被访问过。M=0表示页没有被修改过,M=1表示页被修改过。按(A,M)所有可能的取值,将页分为四类:(0,0)、(1,0)、(0,1)和(1,1),则该算法淘汰页的次序为( )。
A、 (0,0),(0,1),(1,0),(1,1)
B、 (0,0),(1,0),(0,1),(1,1)
C、 (0,0),(0,1),(1,1),(1,0)
D、 (0,0),(1,1),(0,1),(1,0)
A、 符号名空间
B、 虚拟地址空间
C、 相对地址空间
D、 物理地址空间
正确答案: D
31通常,用户编写的程序中所使用的地址是( )。
A、 物理地址
B、 逻辑地址
C、 绝对地址
D、 内存地址
正确答案: B
32最近最少使用(LRU)的缺页率会随着缓存增加而___。
A、 增加
B、 减少
C、 无关
D、 不变
正确答案: B
解析:其核心的思想就是“如果数据最近被访问过,那么将来被访问的几率也会更高!”