历年操作系统考研真题 下载本文

23-27:BADBD 28-32:DABBC 45.

semaphore seets=10; //表示空余座位数量的资源信号量,初值为10

semaphore mutex=1; //互斥信号量,初值为1,用于实现对取号机的互斥访问 semaphore custom=0; //表示顾客数量的资源信号量,初值为0 cobegin {

process 顾客i { P(seets); P(mutex); 从取号机获得一个号码; V(mutex); V(custom); 等待叫号; V(seets); 获得服务;

}

process 营业员 { while(TRUE) { P(custom); 叫号; 为顾客服务; } } } coend 46.

(1)连续方式更合适。因为一次写入不存在插入问题,而且写入文件之后不需要修改,连续的数据块组织方式很适合一次性写入磁盘不再修改的情况。同时连续存储相对链式和索引省去了指针的空间开销,支持随机查找,查找速度最快。

在连续方式中,为定位文件数据块,需要在FCB中设置文件在外存的起始地址(即首个盘块号)及文件的长度(即文件占用的盘块数)。

(2)FCB集中存储较好。FCB中存放了关于描述和控制文件的重要信息,同时是文件目录的重要组成部分,在检索文件时,通常会访问文件的FCB。如果将FCB集中存储,可减少检索文件时访问磁盘的次数,提高文件的访问速度。

2012年计算机专业考研真题——OS

一、试题

23. 下列选项中,不可能在用户态发生的事件是()。

A. 系统调用 B. 外部中断 C. 进程切换 D. 缺页

24. 中断处理和子程序调用都需要压栈以保护现场,中断处理一定会保存而子程序调用不需要保存其内容的是()。

A. 程序计数器 B. 程序状态字寄存器 C. 通用数据寄存器 D. 通用地址寄存器 25. 下列关于虚拟存储的叙述中,正确的是()。

A. 虚拟存储只能基于连续分配技术 B. 虚拟存储只能基于非连续分配技术 C. 虚拟存储容量只受外存容量的限制 D. 虚拟存储容量只受内存容量的限制 26. 操作系统的I/O子系统通常由四个层次组成,每一层明确定义了与邻近层次的接口。其合理的层次组织排列顺序是()。

A. 用户级I/O软件、设备无关软件、设备驱动程序、中断处理程序 B. 用户级I/O软件、设备无关软件、中断处理程序、设备驱动程序 C. 用户级I/O软件、设备驱动程序、设备无关软件、中断处理程序 D. 用户级I/O软件、中断处理程序、设备无关软件、设备驱动程序

27. 假设5个进程P0、P1、P2、P3、P4共享三类资源R1、R2、R3,这些资源总数分别为18、6、22。T0时刻的资源分配情况如下表所示,此时存在的一个安全序列是()。

进程 P0 P1 P2 P3 P4 已分配资源 R1 3 4 4 2 3 R2 2 0 0 0 1 R3 3 3 5 4 4 R1 5 5 4 4 4 资源最大需求 R2 5 3 0 2 2 R3 10 6 11 5 4 A. P0, P1, P2, P3, P4 B. P1, P0, P3, P4, P2 C. P2, P1, P0, P3, P4 D. P3, P4, P2, P1, P0 28. 若一个用户进程通过read系统调用读取一个磁盘文件中的数据,则下列关于此过程的叙述中,正确的是()。 Ⅰ. 若该文件的数据不在内存,则该进程进入睡眠等待状态

Ⅱ. 请求read系统调用会导致CPU从用户态切换到核心态 Ⅲ. read系统调用的参数应包含文件的名称 A. 仅Ⅰ、Ⅱ B. 仅Ⅱ C. 仅Ⅲ D. Ⅰ、Ⅱ和Ⅲ 29. 一个多道批处理系统中仅有P1和P2两个作业,P2比P1晚5ms到达。它们的计算和I/O操作顺序如下: P1:计算60ms,I/O80ms,计算20ms P2:计算120ms,I/O40ms,计算40ms

若不考虑调度和切换时间,则完成两个作业需要的时间最少是()。

A. 240ms B. 260ms C. 340ms D. 360ms

30. 若某单处理器多进程系统中有多个就绪态进程,则下列关于处理机调度的叙述中,错误的是()。

A. 在进程结束时能进行处理机调度 B. 创建新进程后能进行处理机调度

C. 在进程处于临界区时不能进行处理机调度

D. 在系统调用完成并返回用户态时能进行处理机调度 31. 下列关于进程和线程的叙述中,正确的是()。

A. 不管系统是否支持线程,进程都是资源分配的基本单位 B. 线程是资源分配的基本单位,进程是调度的基本单位 C. 系统级线程和用户级线程的切换都需要内核的支持 D. 同一进程中的各个线程拥有各自不同的地址空间 32. 下列选项中,不能改善磁盘设备I/O性能的是()。

A. 重排I/O请求次序 B. 在一个磁盘上设置多个分区 C. 预读和滞后写 D. 优化文件物理块的分布

45.(7分)某请求分页系统的局部页面置换策略如下: 系统从0时刻开始扫描,每隔5个时间单位扫描一轮驻留集(扫描时间忽略不计),本轮没有被访问过的页框将被系统回收,并放入到空闲页框链尾,其中内容在下一次被分配之前不被清空。当发生缺页时,如果该页曾被使用过且还在空闲页框链表中,则重新放回进程的驻留集中;否则,从空闲页框链表头部取出一个页框。 假设不考虑其它进程的影响和系统开销,初始时进程驻留集为空。目前系统空闲页框链表中页框号依次为32、15、21、41。进程P依次访问的 <虚拟页号,访问时刻> 是:<1, 1>、<3, 2>、<0, 4>、<0, 6>、<1, 11>、<0, 13>、<2, 14>。请回答下列问题。 (1)访问 <0, 4> 时,对应的页框号是什么?说明理由。 (2)访问 <1, 11> 时,对应的页框号是什么?说明理由。 (3)访问 <2, 14> 时,对应的页框号是什么?说明理由。 (4)该策略是否适合于时间局部性好的程序?说明理由。

46.(8分)某文件系统空间的最大容量为4TB(1T=240),以磁盘块为基本分配单位,磁盘块大小为1KB。文件控制块(FCB)包含一个512B的索引表区。请回答下列问题:

(1)假设索引表区仅采用直接索引结构,索引表区存放文件占用的磁盘块号。索引表项中块号最少占多少字节?可支持的单个文件最大长度是多少字节?

(2)假设索引表区采用如下结构:第0~7字节采用 <起始块号,块数> 格式表示文件创建时预分配的连续存储空间,其中起始块号占6B,块数占2B;剩余504字节采用直接索引结构,一个索引项占6B,则可支持的单个文件最大长度是多少字节?为了使单个文件的长度达到最大,请指出起始块号和块数分别所占字节数的合理值并说明理由。

二、答案

23-27:CBBAD 28-32:ABCAB

45.(7分)某请求分页系统的局部页面置换策略如下: 系统从0时刻开始扫描,每隔5个时间单位扫描一轮驻留集(扫描时间忽略不计),本轮没有被访问过的页框将被系统回收,并放入到空闲页框链尾,其中内容在下一次被分配之前不被清空。当发生缺页时,如果该页曾被使用过且还在空闲页框链表中,则重新放回进程的驻留集中;否则,从空闲页框链表头部取出一个页框。 假设不考虑其它进程的影响和系统开销,初始时进程驻留集为空。目前系统空闲页框链表中页框号依次为32、15、21、41。进程P依次访问的 <虚拟页号,访问时刻> 是:<1, 1>、<3, 2>、<0, 4>、<0, 6>、<1, 11>、<0, 13>、<2, 14>。请回答下列问题。 (1)访问 <0, 4> 时,对应的页框号是什么?说明理由。 (2)访问 <1, 11> 时,对应的页框号是什么?说明理由。 (3)访问 <2, 14> 时,对应的页框号是什么?说明理由。 (4)该策略是否适合于时间局部性好的程序?说明理由。 45.

(1)页框号是21。

由于初始时进程驻留集为空,目前系统空闲页框链表中页框号依次为32、15、21、41。因此,访问<1, 1>时,将1号页装入32号页框,访问<3, 2>时,将3号页装入15号页框,访问<0, 4>时,将0号页装入21号页框。 (2)页框号是32。

因为访问 <1, 1> 时,1号页被装入32号页框,但在10时刻进行第2轮扫描时,1号页所在的32号页框由于在本轮未被访问而被系统收回,访问 <1, 11> 时,1号页所在的32号页框仍在空闲页框链表中,因此重新被放回进程的驻留集中。 (3)页框号是41。

因为2号页是首次访问,14时刻系统空闲页框链表中页框号依次为41、15,因此将取出链首的41号页框装入2号页。

(4)该策略适合于时间局部性好的程序。

因为置换时,选择的是最近未被访问的页面淘汰,根据局部性原理,这样的页面在最近的将来仍可能不被访问。而且即使刚被淘汰的页面又被访问,如果该页还在空闲页框链表中,只需重新将其放回进程的驻留集中即可。 46. (1)该文件系统空间总的盘块数为4TB/1KB=4G=232个,因此索引表项中块号最少占32/8=4字节。由于索引表区可存放的盘块号最多为512B/4B=128个,因此可支持的单个文件最大长度是128*1KB=128KB。

(2)由于<起始块号,块数> 格式中,块数占2B,因此为文件预分配的连续存储空间最大为216*1KB=64MB。直接索引结构部分支持的文件最大长度为(504B/6B)*1KB=84KB。综上该地址结构可支持的单个文件最大长度是64MB+84KB=65620KB。

起始块号和块数分别所占字节数的合理值是 <4, 4> ,块号占4B正好可以表示232个盘块,块数占4B支持的文件最大长度是232*1KB=4TB,正好可以达到文件系统空间的最大容量。