「这是我参与11月更文挑战的第30天,活动详情查看:2021最后一次更文挑战」
前言
Hello!小伙伴!
非常感谢您阅读海轰的文章,倘若文中有错误的地方,欢迎您指出~
自我介绍 ଘ(੭ˊᵕˋ)੭
昵称:海轰
标签:程序猿|C++选手|学生
简介:因C语言结识编程,随后转入计算机专业,有幸拿过一些国奖、省奖...已保研。目前正在学习C++/Linux/Python
学习经验:扎实基础 + 多做笔记 + 多敲代码 + 多思考 + 学好英语!
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、在内核内存管理方案中也可以使用交换技术来扩充内存容量。×
解释:
4、伴系统的一个缺点是由于调整到下一个2的幂容易产生碎片。√
5、伙伴系统的主要设计思想是:内存按2的整数次幂进行划分,即形成4KB,8KB等空闲块,这些空闲块组成若干空闲块链表;分配时查找链表,找到满足进程需求的最佳匹配块。√
9.6 虚拟内存中的其他考虑
1、在页面选择时,需要小的页面的考量是()。D A.页表大小 B.缺页次数 C.I/O开销 D.页内碎片
解释:
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、由于每个缺页会产生大量的额外开销,为了降低缺页次数,需要较小的页。×
解释: