【操作系统笔记】习题
操作系统框架
【2017-408】执行系统调用的过程包括如下主要操作:
①返回用户态
②执行陷入(trap)指令
③传递系统调用参数
④执行相应的服务程序正确的执行顺序是(C)
A 2314
B 2431
C 3241
D 3421
【2019-408】下列关于系统调用的叙述中,正确的是(C)
I.在执行系统调用服务程序的过程中,CPU处于内核态
II.操作系统通过提供系统调用避免用户程序直接访问外设
III.不同的操作系统为应用程序提供了统一的系统调用接口
IV.系统调用是操作系统内核为应用程序提供服务的接口
A.仅I、IV
B.仅II、III
C.仅I、II、IV
D.仅I、III、IV
【2023-912】下列组件不属于操作系统内核的是(A)
A JavaScript解释器
B 文件系统
C 中断处理例程D 进程调度器
【2023-912】qemu-system-riscv64可以模拟64位risc-v处理机并让操作系统在其上运行(√)
【2015-408】内部异常(内中断)可分为故障(fault)、陷阱(trap)和终止(abort)三类。下列有关内部异常的叙述中,错误的是(D)
A 内部异常的产生与当前执行指令相关
B 内部异常的检测由CPU内部逻辑实现
C 内部异常的响应发生在指令执行过程中
D 内部异常处理后返回到发生异常的指令继续执行
CPU管理
【2016-912】程序和进程的区别是(ABC)
A 进程是动态的,程序是静态的
B 进程是暂时的,程序是永久的
C 进程的组成包括程序,数据和进程控制块
D 同一个程序的多次运行对应相同的进程
【2018-912】操作系统采用copy on write机制时,fork()函数不会复制进程的页目录表。(×)
【2024-912】父进程先于子进程退出,导致子进程变成僵尸进程。(×)
【2018-408】若x是管程内的条件变量,则当进程执行x.wait()时所做的工作是(D)
A. 实现对变量x的互斥访问
B. 唤醒一个在x上阻塞的进程
C. 根据x的值判断该进程是否进入阻塞状态D. 阻塞该进程,并将之插入x的阻塞队列中
【2015-408】若系统S1采用死锁避免方法,S2采用死锁检测方法。下列叙述中,正确的是(B)
I. S1会限制用户申请资源的顺序,而S2不会
II. S1需要进程运行所需的资源总量信息,而S2不需要
III. S1不会给可能导致死锁的进程分配资源,而S2会
A.仅I、II
B.仅II、III
C.仅I、III
D.I、II、III
内存管理
【2017-408】
原来空闲是[20,60],[500,580],[1000,1100],[200,400],释放后为[20,60],[60,200],[500,580],[1000,1100],[200,400],合并得[500,580],[1000,1100],[20,400],B
【2018-912】Buddy算法中,释放一个空间后可以根据起始长度和大小与相邻空闲空间合并(√)
【2023-THU-Mid】内存目前有5个空闲块,按地址从小到大排列,分别为16K,4K,10K,48K,12K。现有三个内存分配请求,要求按顺序分配4K,15K,40K三块内存。试分别描述在最先匹配(First-fit)、最佳匹配(Best-fit)、最差匹配(Worst-fit)三种策略下,每个分配请求是否成功,如成功,使用哪个空闲块进行分配。
最先匹配:
- 12K,4K,10K,48K,12K
- 12K,4K,10K,33K,12K
- 分配失败
最佳匹配:
- 16K,10K,48K,12K
- 1K,10K,48K,12K
- 1K,10K,8K,12K
最差匹配:
- 16K,4K,10K,44K,12K
- 16K,4K,10K,29K,12K
- 分配失败
【2019-408】在分段存储管理系统中,用共享段表描述所有被共享的段。若进程P1和P2共享段S,下列叙述中,错误的是(B)
A 在物理内存中仅保存一份段S的内容
B 段S在P1和P2中应该具有相同的段号
C P1和P2共享段S在共享段表中的段表项
D P1和P2都不再使用段S时才回收段S所占的内存空间
【2014-408】下列选项中,属于多级页表优点的是(D)
A 加快地址变换速度B 减少缺页中断次数
C 减少页表项所占字节数
D 减少页表所占的连续内存空间
【2019-408】
(0010)(0000)(0101)(0000)(0001),页目录号000010000001=081H,页号000100000001=101H,选A
【2021-912】最优页面置换算法,可得到最少的缺页率,因此在操作系统中优先采用。(×)
【2019-408】某系统采用LRU页置换算法和局部置换策略,若系统为进程P预分配了4个页框,进程P访问页号的序列为0,1,2,7,0,5,3,5,0,2,7,6,则进程访问上述页的过程中,产生页置换的总次数是(C)。
A 3
B 4
C 5
D 60 1 2 7 - 1 2 7 0 - 2 7 0 5 - 7 0 5 3 - 7 0 3 5 - 7 3 5 0 - 3 5 0 2 - 5 0 2 7 - 0 2 7 6,共5次
【2017-912】以下会发生belady异常的是(ACDE)
A FIFO算法
B LRU算法
C CLOCK算法
D LFU算法
E 改进CLOCK算法
【2016-408】某进程访问页面的序列如下所示。
若工作集的窗口大小为6,则在t时刻的工作集为(A)
A {6,0,3,2}
B {2,3,0,4}C {0,4,3,2,9}
D {4,5,6,0,3,2}
【2009-408】
【2011-408】当系统发生抖动(thrashing)时,可以采取的有效措施是(A)
I.撤销部分进程II.增加磁盘交换区的容量
III.提高用户进程的优先级
A.仅I
B.仅II
C.仅III
D.仅I、II
文件管理
【2009-408】设文件F1的当前引用计数值为1,先建立F1的符号链接(软链接)文件F2,再建立F1的硬链接文件F3,然后删除F1。此时,F2和F3的引用计数值分别是(A)
A 0、1
B 1、1
C 1、2
D 2、1与F2无关
F1、F3实际指向inode项现在F3指向,为1
【2017-408】若文件f1的硬链接为f2,两个进程分别打开f1和f2,获得对应的文件描述符为fd1和fd2,则下列叙述中,正确的是(B)
I.f1和f2的读写指针位置保持相同
II.f1和f2共享同一个内存索引结点
III.fd1和fd2分别指向各自的用户打开文件表中的一项
A.仅III
B.仅II、III
C.仅I、II
D.I、II和III文件指针是进程级维护,I错
f1、f2硬链接,有相同的inode,II对
III对
【2020-912】file1引用计数为2,建立一个软链接file2,建立一个硬链接file3,file3建立一个硬链接file4,此时file3和file4的计数为(A)
A 4,4
B 3,4
C 4,3
D 2,4
file3和file4指向同一个文件
【2010-408】设文件索引结点中有7个地址项,其中4个地址项是直接地址索引,2个地址项是一级间接地址索引,1个地址项是二级间接地址索引,每个地址项大小为4B。若磁盘索引块和磁盘数据块大小均为256B,则可表示的单个文件最大长度是(C)
A.33KB
B.519KB
C.1057KBD.16513KB
直接地址索引:4×256B=1KB
一个一级索引块有256/4=64个地址项,每个一级索引块:64×256B=16KB,共32KB
一个二级索引块有256/4=64个一级索引块,共1024KB
共计1057KB
【2013-408】若某文件系统索引结点(inode)中有直接地址项和间接地址项,则下列选项中,与单个文件长度无关的因素是(A)
A.索引结点的总数B.间接地址索引的级数
C.地址项的个数
D.文件块大小
【2016-912】一个文件系统采用索引结点方式存储文件,一个索引结点包括两个直接文件指针,一个一级间接文件指针表,一个存储块为8KB,一个指针4B,问理论上这个文件系统能存放的最大文件是多大?
8KB×2+8KB/4B×8KB=16KB+2048×8KB=16KB+16MB