9.4 页框分配和颠簸

1、系统"抖动"现象的发生可能是由()引起。A
A.置换算法选择不当
B.交换的信息量过大
C.内存容量充足
D.请求页式管理方案

2、允许进程在所有的页框中选择一个替换页面,而不管该页框是否已分配给其他进程的置换方法是()。B
A.局部置换
B.全局置换
C.进程外置换
D.进程内置换

3、下面()存储分配方法可能使系统抖动?BCD
A.可变分区
B.页式
C.段式
D.段页式

4、每个进程页框的最少数量可以是1个。×

5、利用局部置换算法可以限制系统颠簸。

9.5 内核内存分配

1、Slab分配的优点包括()。BD
A.可通过合并而快速地形成更大的段
B.没有因碎片而引起的内存浪费
C.可以提高内存访问的速度
D.内存请求可以快速满足

2、内核内存分配方法和用户内存分配采用一样的方法。×

解释:

操作系统学习笔记(二十四)~页框分配和颠簸+内核内存分配+虚拟内存中的其他考虑_操作系统

3、在内核内存管理方案中也可以使用交换技术来扩充内存容量。×

解释:

操作系统学习笔记(二十四)~页框分配和颠簸+内核内存分配+虚拟内存中的其他考虑_数组_02

4、伴系统的一个缺点是由于调整到下一个2的幂容易产生碎片。

5、伙伴系统的主要设计思想是:内存按2的整数次幂进行划分,即形成4KB,8KB等空闲块,这些空闲块组成若干空闲块链表;分配时查找链表,找到满足进程需求的最佳匹配块。

9.6 虚拟内存中的其他考虑

1、在页面选择时,需要小的页面的考量是()。D
A.页表大小
B.缺页次数
C.I/O开销
D.页内碎片

解释:

操作系统学习笔记(二十四)~页框分配和颠簸+内核内存分配+虚拟内存中的其他考虑_虚拟内存_03

2、有二维数组:
int X[64][64];
假设有一个进程有4个页框,每个页框大小为128个字(一个整数占用一个字)。处理数组X的进程正好可以放在一页中,而且总是占用0号页。数据会在其他3个页框中被换入或换出。数组X为按行存储(即,在内存中,X[0][0]之后是X[0][1])。下面代码中,缺页中断的总数为()。
C

for(int j = 0;j < 64;j++)

for(int i = 0; i < 64; i++) X[i[[j] = 0;

A.32
B.1024
C.2048
D.其它都不对

解释:该程序按列访问。X数组按行存储,即每一页可存储2行(128字节);每访问一次页框就发生一次缺页中断。每访问2个数就发生一次缺页中断,则会有64*64/2 = 2048次缺页中断;

3、在分页系统中,以下提高TLB命中率的方法,可行的是()。AC
A.增加TLB条目
B.采用多级页表
C.提高页面大小
D.降低页面大小

4、对于给定的虚拟内存空间,为了降低页表大小,可以增加页面大小。

5、由于每个缺页会产生大量的额外开销,为了降低缺页次数,需要较小的页。×

解释:

操作系统学习笔记(二十四)~页框分配和颠簸+内核内存分配+虚拟内存中的其他考虑_缺页中断_04