操作系统复习题

更新时间:2023-12-19 18:16:01 阅读量: 教育文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

一、选择题:

1.在多线程操作系统中,对线程具有属性阐述正确的是: 【 D 】 A.具有进程控制块,共享所属进程资源,处理机的独立调度单位,具有动态性 B.具有进程控制块,独享所属进程资源,处理机的独立调度单位,具有动态性 C.具有进程控制块,共享所属进程资源,处理机的独立调度单位,具有静态性 D.具有线程控制块,共享所属进程资源,处理机的独立调度单位,具有动态性 2. 计算机系统产生死锁的根本原因是 。 【 D 】 A.资源有限 B.进程推进顺序不当 C.系统中进程太多 3.进程控制块的组织方式有: 【 C 】 A.链接方式

B.索引方式 C.A和B

D.互斥方式

D.A和B

4.若时间片为100ms,系统中有20个用户分享CPU,若暂时忽略用户程序之间切换时运行操作系统的时间开销,则每个用户两次使用【 A 】

A.2m

B.3m C.4m

D.1m CPU

之间的时间间隔为:

5. 已知系统中资源分配图如图1所示,对图1中资源集合R和有向边集合E描述正确的是:

【 B 】

R1R3P1P2P3R2图1

R4

A.R={R1, R 2, R 3}; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}

B.R={R1, R 2, R 3, R 4}; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3} C.R={R1, R 2 }; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3} D.R={R1, R 3}; E = { P1→R1, P2→R3, P3→R2, R1→P2, R2→P2, R3→P3}

6.有两个合作进程Pc和Po,它们共享一个单缓冲区B。Pc是计算进程,Po是打印进

程。则利用PV原语实现同步的伪代码正确的是: 【 A 】

A.

1

struct semaphore Sc, So=1,0; void Po(void) cobegin void Pc(void) { ……

while (TRUE) { 计算下一个结果; P (Sc); B←计算结果; V (So);

} ……

}

B.

struct semaphore So, Sc =1,0; cobegin void Pc(void) { ……

while (TRUE) { 计算下一个结果; P (Sc); B←计算结果; V (So);

} ……

}

C.

{ ……

while (TRUE) { P (So);

从B中取出计算结果; V (Sc);

打印取出的数据;

} ……

}

coend

void Po(void) { ……

while (TRUE) { P (So);

从B中取出计算结果; V (Sc);

打印取出的数据;

} ……

}

coend

2

struct semaphore Sc, So=1,0; cobegin void Pc(void) { ……

while (TRUE) { 计算下一个结果; P (Sc); B←计算结果; V (Sc);

D.

void Po(void) { ……

while (TRUE) { P (So);

从B中取出计算结果; V (So);

打印取出的数据;

}

} ……

}

} ……

coend

struct semaphore Sc, So=1,1; cobegin void Pc(void) { ……

while (TRUE) { 计算下一个结果; P (Sc); B←计算结果; V (So);

}

void Po(void) { ……

while (TRUE) { P (So);

从B中取出计算结果; V (Sc);

打印取出的数据;

} coend

} ……

} ……

7. 假设有一个系统,0时刻有4个进程按A, B, C, D的顺序几乎同时到达,进程执行情况如图1所示。则下述描述正确的是: 【 A 】

3

0ABCD1020304050607080结束90100110t/ms结束结束结束

A.进程A, B, C, D的执行时间分别为30ms, 10ms, 20ms, 40ms. B.进程A, B, C, D的执行时间分别为10ms, 30ms, 20ms, 40ms. C.进程A, B, C, D的执行时间分别为30ms, 40ms, 10ms, 20ms. D.进程A, B, C, D的执行时间分别为20ms, 30ms, 10ms, 40ms.

8.多个进程的实体能存在于同一内存中,在一段时间内都得到运行。这种性质称作进程的 。 【 B 】

A.动态性 B.并发性 C.调度性 D.异步性

9. 是指进程已经获得除CPU以外的所有必要资源,只要获得CPU,便可立即执行时的状态。 【 A 】

A.就绪

B.执行 C.挂起

D.阻塞

10.产生死锁的原因可以归结为两种:一是临界资源分配不当,二是: 【 D 】 A.竞争同一资源

B.竞争非剥夺性资源

C.竞争临时性资源 D.进程推进顺序不当

11.如果I/O设备与存储设备进行数据交换不经过CPU来完成,这种数据交换的方式是: 【 C 】

A.程序查询 B.中断方式 C.DMA方式 D.无条件存取方式 12. 已知系统中资源分配图如图1所示。

R1R3P1P2P3R2图1

对图1中进程状态描述正确的是:【 B 】

R4

A.进程P1占用1个R1资源,1个R2资源,且等待1个R3资源 B.进程P2占用1个R1资源,1个R2资源,且等待1个R3资源

4

C.进程P3占用1个R1资源,1个R2资源,且等待1个R3资源 D.进程P4占用1个R1资源,1个R2资源,且等待1个R3资源 13. 下述对直接通信方式描述生产者-消费者的通信过程描述正确的是: 【 A 】

A.

cobegin

void produceri(void) { item nextp; while (TRUE) ……

生产一个消息nextp; ……

send (consumerj, nextp);

}

B.

cobegin

void produceri(void) { item nextp; while (TRUE) ……

生产一个消息nextp; ……

send (consumerj, nextc);

}

C.

void consumerj(void) {

item nextc; while (TRUE)

receive (produceri, nextc); …… 消费信息nextc; ……

} coend

void consumerj(void) {

item nextc; while (TRUE)

receive (produceri, nextc); …… 消费信息nextc; ……

} coend

5

cobegin

void produceri(void) { }

D.

void consumerj(void) {

item nextp; while (TRUE)

receive (produceri, nextc); …… } coend

item nextp; while (TRUE) ……

生产一个消息nextp; ……

send (consumerj, nextp);

消费信息nextc; ……

cobegin

void produceri(void) { }

A.PCB6, PCB7, PCB9 C.PCB5, PCB1, PCB9

void consumerj(void) {

item nextc; while (TRUE)

receive (produceri, nextc); …… } coend

item nextp; while (TRUE) ……

生产一个消息nextc; ……

send (consumerj, nextc);

消费信息nextc; ……

14. 如图2所描述,空闲队列中进程控制块的排列顺序为: 【 A 】

B.PCB2, PCB7, PCB8 D.PCB5, PCB7, PCB9

6

执行进程指针 PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7 PCB8 PCB9就绪进程索引表指针阻塞进程索引表指针空闲进程索引表指针 图2

15.操作系统从用户服务方式上大致可分为三类,下列答案中不属于此分类的是: 【 C 】 A.批处理系统

B.分时系统 C.假脱机系统 D.实时系统

16. 一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是 【 C 】

A.2 B.1 C.3 D.0.5 17.Windows Server 2003的6个变种为: 【 A 】

A.Windows Server 2003 Web Edition, Standard Edition, Small Business Server, Storage Server, Enterprise Edition 和 Data Center Edition

B.Windows XP, Standard Edition, Small Business Server, Storage Server, Enterprise Edition 和 Data Center Edition

C.Windows Server 2003 Web Edition, Windows XP, Small Business Server, Storage Server, Enterprise Edition 和 Data Center Edition

D.Windows Server 2003 Web Edition, Standard Edition, Windows XP, Storage Server, Enterprise Edition 和 Data Center Edition

18.进程控制块的数据结构通常是一个记录,包含的内容主要由以下四个部分构成。 【 B 】 A.进程描述信息,进程优先级,进程上下文,进程控制信息 B.进程描述信息,进程调度信息,进程上下文,进程控制信息 C.进程描述信息,进程调度信息,程序状态字,进程控制信息 D.进程描述信息,进程优先级,进程上下文,资源清单

19. 已知系统中资源分配图如图1所示,对图1中进程状态描述正确的是:【 A 】

7

R1R3P1P2P3R2图1

R4

A.进程P1占用1个R2资源,且等待1个R1资源 B.进程P2占用1个R2资源,且等待1个R1资源 C.进程P3占用1个R2资源,且等待1个R1资源 D.进程P4占用1个R2资源,且等待1个R1资源

20. 读者-写者问题描述中正确的是 【 A 】 A.

struct semaphore rmutex, wmutex =1,1;

int readcount=0;

cobegin void readeri(void)

{

while(TRUE) {

P(rmtex);

}

readcount=readcount-1; if(readcount==0) V(wmutex);

V(rmutex); } }

{

while(TRUE) {

P(wmutex); write; V(wmutex); }

if (readcount==0) p(wmutex);

readcount=readcount+1;

B.

Void writerj(void)

V(mutex); …… read; …… P(rmutex);

8

struct semaphore rmutex, wmutex =0,1;

int readcount=0;

cobegin void readeri(void)

{

while(TRUE) {

P(rmtex);

}

readcount=readcount-1; if(readcount==0) V(wmutex);

V(rmutex); } }

{

while(TRUE) {

P(wmutex); write; V(wmutex); }

if (readcount==0) p(wmutex);

readcount=readcount+1;

C.

Void writerj(void)

V(mutex); …… read; …… P(rmutex);

struct semaphore rmutex, wmutex =1,0;

int readcount=0;

cobegin void readeri(void)

{

while(TRUE) {

P(rmtex);

}

readcount=readcount-1; if(readcount==0) V(wmutex);

V(rmutex); } }

{

while(TRUE) {

P(wmutex); write; V(wmutex); }

if (readcount==0) p(wmutex);

readcount=readcount+1;

D.

Void writerj(void)

V(mutex); …… read; …… P(rmutex);

9

struct semaphore rmutex, wmutex =0,1;

int readcount=1;

cobegin void readeri(void)

{

while(TRUE) {

P(rmtex);

}

B.PCB5, PCB2, PCB8 D.PCB5, PCB1, PCB

PCB1 PCB2 就绪进程队列指针 阻塞进程队列指针 PCB3 PCB4 PCB5 PCB6 空闲进程队列指针 PCB7 PCB8 PCB9readcount=readcount-1; if(readcount==0) V(wmutex);

V(rmutex); } }

{

while(TRUE) {

P(wmutex); write; V(wmutex); }

if (readcount==0) p(wmutex);

readcount=readcount+1;

A.PCB5, PCB7, PCB88 C.PCB5, PCB1, PCB9

执行进程指针Void writerj(void)

V(mutex); …… read; …… P(rmutex);

21. 如图2所描述,就绪队列中进程控制块的排列顺序为: 【 D 】

图2

22.对于整形信号量,在执行一次P操作时,信号量的值应 【 C 】 A.不变

B.加1 C.减1

D.减指定数值

23. 下列关于进程同步描述正确的是: 【 A 】 A.进程同步是指多个合作进程为了完成一组相关任务在执行速度上的相互协调 B.进程同步是合作进程之间因执行顺序所产生的间接制约关系 C.进程同步从某种意义上可看成是进程互斥的一种特例

10

D.进程同步不属于并发进程之间的制约关系

24.文件目录是一个用来描述系统中所有文件基本情况的数据结构,由若干个目录项组成,每个目录项对应一个文件的: 【 A 】

A.文件控制块

B.控制信息 C.文件说明

D.结构信息

25.操作系统是 。 【 B 】 A. 硬件

B. 系统软件 C. 应用软件

D. 虚拟机

26. 已知系统中资源分配图如图1所示:

R1R3P1P2P3R2图1

R4

对图1中进程集合P描述正确的是: 【 A 】 A.P={P1, P2, P3} B.P={P1 } C.P={P1, P2 } D.P={ P2, P3} 27. 已知利用PV原语实现的伪代码如下所述。 struct semaphore Sc, So=1,0; cobegin void Pc(void) { ……

while (TRUE) { 计算下一个结果;

P (Sc); B←计算结果; V (So);

} ……

}

void Po(void) { ……

while (TRUE) {

11

P (So);

从B中取出计算结果; V (Sc);

打印取出的数据;

} ……

} coend

则下述选项中不正确的是: 【 C 】

A. Pc进程为计算进程,Po进程为打印进程 B. Pc进程与Po进程的关系为同步关系

C. Pc进程与Po进程的关系为互斥关系 D. 合作进程Pc和Po,它们共享一个单缓冲区B 28. 假设某系统中有4个计算型进程,创建时刻、执行时间及优先级如表1所示。

表1:4个进程的创建时间、执行时间和优先级

进程 A B C D 创建时间 8:00 8:05 8:06 8:06 执行时间/min 7 5 1 2 优先级(数越大级越高) 1 3 4 2 采用非抢占式优先级调度算法各进程的运行情况正确的是: 【 A 】 A.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16B.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16C.

12

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16D.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16

29. 是指进程已经获得CPU,其程序在CPU上执行时的状态。 【 B 】

A.就绪

B.执行 C.挂起

D.阻塞

30. 操作系统有多种类型,计算机系统能及时响应外部事件的请求,在规定的短时间内完成对该事件

的处理,并控制所有实时设备和实时任务协调一致运行的操作系统称为: 【 D 】

A.分时操作系统 B.批处理操作系统 C.多处理机操作系统 D.实时操作系统

31.内核中所包含的原语主要有进程控制原语、 、资源管理原语以及其他方面的原语。 【 A 】

A.进程通信原语

B.上下文信息 C.作业说明书

D.结构信息原语

32.一个由8个页面,每页1024bit组成的逻辑空间,将其映射到32个物理块的存储其中。则逻辑地址为 位,物理地址为 位。 【 A 】

A.13, 15

B.12, 16 C.12, 15

D.13, 16

33. 已知系统中资源分配图如图1所示:

R1R3P1P2P3R2图1

13

R4

对图1中资源集合R描述正确的是:【 B 】

A.R={R1, R 2, R 3} B.R={R1, R 2, R 3, R 4} C.R={R1, R 2 } D.R={R1, R 3} 34. 读者-写者问题描述如下: struct semaphore rmutex, wmutex =1,1; int readcount=0;

cobegin void readeri(void)

{

while(TRUE) {

P(rmtex);

if (readcount==0) p(wmutex); readcount=readcount+1; V(mutex); …… read; …… P(rmutex);

readcount=readcount-1; if(readcount==0) V(wmutex); V(rmutex); } }

}

则下述选项中正确的是: 【 B 】

A. readeri为写者进程,writerj为读者进程 B. readeri为读者进程,writerj为写者进程 C. 整形变量readcount是一个计数器,其初值为1 D. 互斥信号量rmutex的初值为0

35. 假设有一个系统,0时刻有4个进程按A, B, C, D的顺序几乎同时到达,它们的执行时间分别为30ms,

10ms, 20ms, 40ms. 按时间片轮转调度算法,时间片为10ms时,进程运行情况正确的是: 【 A 】 A.

Void writerj(void)

{

while(TRUE) {

P(wmutex); write; V(wmutex); }

14

0ABCD B.

1020304050607080结束90100110t/ms结束结束结束

0ABCD. C.

1020304050607080结束90100110t/ms结束结束结束

0ABCD . D.

1020304050607080结束90100110t/ms结束结束结束

0ABCD10结束20304050607080结束90100110t/ms结束结束

36.进程间的同步是指并发进程之间存在一种 关系。 【 D 】 A.主从 B.包含 C.调用 D.制约 37. 进程的并发执行是指若干个进程: 【 D 】 A.同时执行 B.在执行的时间上是重叠的 C.在同一时间间隔内发生 D.共享系统资源

38.所谓原语,是指由若干条机器指令组成的,用于完成一定功能的一个过程,并且该过程的执行是 。 【 A 】

A.不可打断的 B.连续的 C.统一的

15

D.永久性的

39.处理机调度的主要目的是选出作业或进程并为之分配处理机。根据处理机调度对象、时间和功能的不同,可以把调度分为三个层次: 【 A 】

A.高级调度、中级调度、低级调度 B.高级调度、作业调度、低级调度 C.高级调度、宏观调度、低级调度 D.微观调度、中级调度、低级调度 40. 已知系统中资源分配图如图1所示:

R1R3P1P2P3R2图1

R4

对图1中有向边集合E描述正确的是: 【 D 】 A.E = { P1→R1, P2→R2, R1→P2, R2→P2, R1→P2, R2→P1, R3→P3} B.E = { P1→R1, P3→R3, R1→P2, R2→P2, R1→P2, R2→P1, R3→P3} C.E = { P1→R1, P2→R1, R1→P2, R2→P2, R1→P2, R2→P1, R3→P3} D.E = { P1→R1, P1→R3, R1→P2, R2→P2, R1→P2, R2→P1, R3→P3} 41. 如下述伪代码所述, cobegin

void produceri(void) {

item nextp; while (TRUE) ……

生产一个消息nextp; ……

send (consumerj, nextp); }

void consumerj(void) {

item nextc; while (TRUE)

receive (produceri, nextc);

……

16

消费信息nextc; …… } coend

则下述选项中正确的是: 【 B 】 A.上述代码是用PV原语描述生产者-消费者的通信过程 B.上述代码是使用直接通信方式描述生产者-消费者的通信过程 C.上述代码是使用间接通信方式描述生产者-消费者的通信过程 D.上述代码是使用信箱的方式描述生产者-消费者的通信过程

42. 假设某系统中有4个计算型进程,创建时刻、执行时间及优先级如表1所示。

表1:4个进程的创建时间、执行时间和优先级

进程 A B C D 创建时间 8:00 8:05 8:06 8:06 执行时间/min 7 5 1 2 优先级(数越大级越高) 1 3 4 2 采用抢占式优先级调度算法各进程的运行情况正确的是: 【 A 】 A.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16B.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:16

DCBAC.

8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:1617

D.

DCBA8:008:018:028:038:048:058:068:078:088:098:108:118:128:138:148:158:1643.下列关于进程互斥描述错误的是: 【 D 】 A.进程互斥是指多个合作进程为了完成一组相关任务在执行速度上的相互协调 B.进程互斥是合作进程之间因执行顺序所产生的间接制约关系 C.进程互斥从某种意义上可看成是进程同步的一种特例 D.进程互斥不属于并发进程之间的制约关系

44. 若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许 个进程参于竞争,而不会发生死锁。 【 D 】

A.5 B.2 C.3 D.4

45.所谓 是指防止系统故障或人为破坏所引起的文件信息丢失或不正当访问。 【 A 】

A.文件保护

B.文件控制 C.文件打开

D.文件关闭

46.对系统资源的分类方法有许多种。根据资源的占用方式可分为:【 A 】 A.可剥夺资源和不可剥夺资源 B.共享资源和独享资源 C.永久性资源和临时性资源 D.可再用资源和消耗性资源 47. 已知系统中资源分配图如图1所示:

R1R3P1P2P3R2图1

对图1中资源数量描述正确的是:【 A 】

R4

A.R1资源有1个,R 2资源有2个, R 3资源有1个,R 4资源有3个 B.R1资源有2个,R 2资源有2个, R 3资源有1个,R 4资源有3个 C.R1资源有1个,R 2资源有1个, R 3资源有1个,R 4资源有3个 D.R1资源有1个,R 2资源有2个, R 3资源有2个,R 4资源有3个

18

48. 用PV原语写出的伪代码如下所述:

mutex初值为1

P1:

… P(mutex) V(mutex) … P2:

… P(mutex) V(mutex) … … Pn:

… P(mutex) V(mutex)

则下述选项中正确的是: 【 C 】 A. 系统共有m个进程共享临界区

B. n个进程共享一个临界区,一次只允许m个进程进入临界区 C. n个进程共享一个临界区,一次只允许一个进程进入临界区 D. mutex的初值为1代表进程为同步合作关系

49. 假设有一个系统,0时刻有4个进程按A, B, C, D的顺序几乎同时到达,它们的执行时间分别为30ms,

10ms, 20ms, 40ms. 按时间片轮转调度算法,选择时间片长度为20ms,进程运行情况正确的是: 【 B 】

A.

0ABCD结束结束结束1020304050607080结束90100110t/ms

B.

19

0ABCD102030结束4050607080结束90100110t/ms结束结束

0C.

102030结束结束结束4050607080结束90100110t/msABCD

D.

0ABCD结束结束结束1020304050607080结束90100110t/ms

50.下列进程状态的转换中,哪一个是不正确的 【 C 】

A.就绪?运行 B.运行?就绪 C.就绪?阻塞 D.阻塞?就绪 51. 目前计算机上配置的独享I/O设备,如打印机、绘图仪等,大都属于: 【 A 】

A.低速设备

B.中速设备 C.高速设备

D.变速设备

52.若时间片为100ms,系统中有20个用户分享CPU,假定CPU的运算速度为1000万次/s,则对一个用户程序来说,等价的CPU速度为: 【 B 】

A.5万次 B.50万次 C.500万次 D.0.5万次 53.银行家算法是一种 算法。 【 B 】

A.死锁解除算法 B.死锁避免 C.死锁预防 D.死锁检测 54. 已知系统中资源分配图如图1所示。

20

R1R3P1P2P3R2R4图1

对图1中进程集合P,资源集合R描述正确的是:【 A A.P={P1, P2, P3}, R={R1, R 2, R 3, R 4} B.P={P1 }, R={R1, R 2, R 3, R 4} C.P={P1, P2 }, R={R1, R 2, R 3, R 4} D.P={ P2, P3}, R={R1, R 2, R 3, R 4} 55. PV 原语执行伪代码表达正确的是:

A. void P(s) struct semaphore s; { s.value=s.value-1;

if (s.value<0) block(s.L);

} void V(s) struct semaphore s; { s.value=s.value+1;

if (s.value<=0) wakeup(s.L); } B. void P(s) struct semaphore s; { s.value=s.value+1;

if (s.value<0) block(s.L); } {

s.value=s.value+1; 21

】 【 A 】

if (s.value<=0) wakeup(s.L);

}

C. void P(s) struct semaphore s; { s.value=s.value-1;

if (s.value<0) block(s.L);

} { s.value=s.value-1;

if (s.value<=0) wakeup(s.L); } D. void P(s) struct semaphore s; { s.value=s.value-1;

if (s.value<0) wakeup (s.L); } { s.value=s.value+1;

if (s.value<=0) block (s.L); }

56. 如图2所描述,空闲队列中进程控制块的排列顺序为: 【 A A.PCB6, PCB7, PCB9

B.PCB2, PCB7, PCB8

C.PCB5, PCB1, PCB9 D.PCB5, PCB7, PCB9

执行进程指针 PCB1 PCB2 就绪进程队列指针 PCB3 PCB4 阻塞进程队列指针 PCB5 PCB6 空闲进程队列指针 PCB7 PCB8 PCB922

图2

57.进程控制块是描述进程状态和特性的数据结构,一个进程 【 D 】

A.可以有多个进程控制块 B.可以和其他进程共用一个进程控制块 C.可以没有进程控制块

D.只能有惟一的进程控制块

58. 是一种允许用户通过TCP/IP网络从其他计算机安装文件系统的系统。【 A 】

A.网络文件系统

B.操作系统 C.计算机系统 D.安装系统

59.一组并发进程互斥时必须遵循以下准则: 【 A 】

A.空闲让进、忙则等待、有限等待、让权等待 B.忙则等待、有限等待、让权等待 C.空闲让进、有限等待、让权等待 D.空闲让进、忙则等待、让权等待 60.系统调用的基本类型有: 【 D 】

A.系统维护类调用、设备管理类调用 B.文件管理类调用、进程控制类调用 C.进程通信类调用、存储管理类调用 D.A, B和C 61. 已知系统中资源分配图如图1所示。

R1R3P1P2P3R2图1

R4

对图1中资源数量描述正确的是: 【 A 】 A.R1资源有1个,R 2资源有2个, R 3资源有1个,R 4资源有3个 B.R1资源有2个,R 2资源有2个, R 3资源有1个,R 4资源有3个 C.R1资源有1个,R 2资源有1个, R 3资源有1个,R 4资源有3个 D.R1资源有1个,R 2资源有2个, R 3资源有2个,R 4资源有3个

62. 设有n个进程共享一个临界区,一次只允许一个进程进入临界区,说明信号量的初值、含义,并用PV原语写出有关进程的互斥算法。【 A 】

A.

23

mutex初值为1

P1:

… P(mutex) V(mutex) … P2:

… P(mutex) V(mutex) … …

B

mutex初值为m

P1:

… P(mutex) V(mutex) … P2:

… P(mutex) V(mutex) … …

C

Pn:

… P(mutex) V(mutex) …

Pn:

… P(mutex) V(mutex) …

24

mutex初值为0

P1:

… P(mutex) Pn:

… P(mutex) V(mutex) V(mutex) …

P2:

… P(mutex) V(mutex) … …

D.mutex初值为1

P1:

… P(mutex) V(mutex) … P2:

… P(mutex) V(mutex)

63. 如图2所描述,下述说法中正确的是: 25

D 】

P1R1P2P4R3R2P3

图2

A.P1,P2,P3,P4都可以化简为孤立点 B.系统中不存在封锁进程,所以不存在死锁 C.系统中不存在环路,所以不存在死锁

D.系统中存在环路,无法完全化简,系统中存在死锁

64.通常操作系统提供的用户接口包括命令接口、程序接口和 【 A 】 A.图形接口

B.内核接口 C.DOS接口 D.程序接口

65. 对于通道控制方式阐述正确的是: 【 A 】 A.通道控制方式是一种以内存为中心,实现设备和内存直接交换数据的控制方式 B.通道控制方式传输数据时数据传送方向由CPU控制 C.通道控制方式传输数据时存放数据的内存地址由CPU控制 D.通道控制方式传输数据时数据块长度由CPU控制

66.读者、写者问题是一个著名的经典同步问题,它是对多个并发进程共享数据对象的一种抽象。整型变量readcount,计数器互斥信号量rmutex,数据对象互斥信号量wmutex初值设置分别为 【 A 】

A.readcount=0, rmutex=1, wmutex=1 B.readcount=1, rmutex=1, wmutex=1 C.readcount=0, rmutex=0, wmutex=1 D.readcount=0, rmutex=1, wmutex=0

67.进程和程序的一个本质区别是: 【 D 】

A. 前者分时使用CPU,后者独占CPU B.前者存储在内存,后者存储在外存 C. 前者在一个文件中,后者在多个文件中 D.前者为动态的,后者为静态的 68. 已知系统中资源分配图如图1所示。

26

R1R3P1P2P3R2图1

R4

对图1中环路分析正确的是: 【 C 】

A.存在两个最小环路 B.不存在环路 C.存在一个最小环路 D.存在三个最小环路

69. PV 原语执行伪代码如下述:

void P(s) } void V(s) struct semaphore s;

}

则下述选项中正确的是: 【 C 】 A. 每次执行一次V操作,意味着调用进程请求分配该类资源的一个单位。 B. 每次执行一次P操作,意味着调用进程请求释放该类资源的一个单位。 C. value的值大于零,表示系统剩余有可用资源,可用资源数量即为Value的值 D. value的值大于零,表示系统没有可用资源,Value的值为由于等待该资源而被阻塞的进程数量

70. 如图2所描述,就绪队列中进程控制块的排列顺序为: 【 B 】 A.PCB5, PCB2, PCB8 C.PCB5, PCB1, PCB9

B.PCB1, PCB5, PCB8 D.PCB5, PCB7, PCB8

{

s.value=s.value+1; if (s.value<=0) wakeup(s.L); struct semaphore s; {

s.value=s.value-1; if (s.value<0) block(s.L);

27

执行进程指针 PCB1 PCB2 PCB3 PCB4 PCB5 PCB6 PCB7 PCB8 PCB9就绪进程索引表指针阻塞进程索引表指针空闲进程索引表指针?

图2

二、判断题:

1.读者、写者问题是一个著名的经典同步问题,它是对多个并发进程共享数据对象的一种抽象。整型变量readcount的初值设置为0。

( √ )

2. 各种不同的文件物理结构中,最常用的几种物理结构是:顺序结构、链接结构、索引结构。( √ )

3. 通常设备分配的方式有静态分配和动态分配两种类型。 ( √ )

4. 中断处理程序是I/O系统的最低层软件。当设备I/O操作完成后,设备控制器将产生中断信号送CPU,CPU响应后转向中断处理程序。 ( √ )

5. 由于死锁状态的出现会给系统带来严重后果,通常来讲可以使用如下四种方式处理死锁问题:对死锁视而不见、预防死锁、避免死锁、检测和解除死锁。 ( √ ) 6.实现分时系统的基本方法是建立一个时间分享单位-时间片。 ( √ ) 7. 进程具有动态性、并发性和独立性三个特征。 ( × )

8. 进程的静态描述由进程控制块、程序段和数据结构集三个部分构成。 ( √ )

9. 产生死锁的原因可以归结为这两种:一是临界资源分配不当,二是进程推进顺序不当。( √ ) 10. 地址映射的功能是把目标程序中的地址转换为内存中所对应的实际地址。 ( √ ) 11.所谓原语,是指由若干条机器指令组成的,用于完成一定功能的一个过程,并且该过程的执行是不可打断的。

( √ )

12. 生产者消费者问题中,公用信号量mutex的初值设置为1,用于实现所有生产者和所有消费者对缓冲池的同步访问。

( √ )

13. 根据处理机调度各方面的不同,可以将调度分为3个层次:高级调度、作业调度和低级调度。( × )

4. Windows Server 2003内存管理采用了段式虚拟存储技术。 ( × )

14. 微内核和多线程是现代操作系统技术的两项新技术。 ( √ )

28

15.把不允许两个或两个以上共享临界资源的并发进程同一时间进入临界区称为进程同步。( × )

16. 文件类型按性质和用途分为:系统文件、用户文件、库文件。 ( √ ) 17. 设备分配的原则是既要充分发挥设备的使用效率,尽可能让设备忙,又要避免由于不合理的分配而造成进程死锁。

( √ )

18. 目前计算机上配置的独享I/O设备,如打印机、绘图仪等,大都属于高速设备。 ( × ) 19. 网络文件系统是一种允许用户通过TCP/IP网络从其他计算机安装文件系统的系统。 ( √ ) 20.内核中所包含的原语主要有进程控制原语、资源管理原语、进程通信原语以及其他方面的原语。 ( √ )

21. 对系统资源的分类方法可以有多种,根据资源的占用方式可分为可剥夺资源和不可剥夺资源。( √ )

22. 如果资源分配图中没有环路,那么系统中就不存在死锁;如果有环路,就存在死锁。( × )

23. 所谓原语,是指由若干条机器指令组成的,用于完成一定功能的一个过程,并且该过程的执行是可以打断的。

( × )

24. 所谓文件保护,是指防止系统故障或人为破坏所引起的文件信息丢失或不正当访问。 ( √ )

三、填空题:

1.操作系统是控制和管理计算机硬件和软件资源、合理组织计算机工作流程以方便用户的 程序集合 。

2. 死锁 是指计算机系统中多道程序并发执行时,两个或两个以上的进程由于竞争系统资源而出现的一种互相等待的现象。

3. 地址映射 的功能是把目标程序中的地址转换为内存中所对应的实际地址。

4.程序的顺序执行具有顺序性、 封闭性 、和可再现性。 5. 进程 是程序的运行过程,是系统进行资源分配和调度的一个独立单位。

6.内核中所包含的原语主要有进程控制原语、 进程通信原语 、资源管理原语以及其他方面的原语。

7.把不允许两个或两个以上共享临界资源的并发进程同一时间进入临界区称为 互斥 。

8.所谓 文件保护 是指防止系统故障或人为破坏所引起的文件信息丢失或不正当访问。

29

9.文件类型按性质和用途分为:系统文件、 用户文件 、库文件。 10.设备分配的原则是既要充分发挥设备的使用效率,尽可能让设备忙,又要避免由于不合理的分配而造成进程 死锁 。

11.请将生产者-消费者问题的伪代码补充完整。

struct semaphore mutex, empty, full=1, n, 0;

int in, out =0, 0 ; cobegin

void 生产者Pi (void) /* i=1, 2, … , k */

{ message x; }

void 消费者Ci (void) /* j=1, 2, … , m */

{ message y;

while (TRUE) {

P(full); P(mutex);

从 第out个缓冲单元 中取出一个产品y; out= (out+1) mod n; V(mutex); V(empty); 消费产品y;}

}

coend

while (TRUE) {

生产一个产品x; P(empty);

P(mutex) ; 将产品x放入 第in个缓冲单元 ; in=(in+1) mod n; V(mutex); V(full); }

12.一组并发进程互斥时必须遵循以下准则: 空闲让进 、忙则等待、有限等

待、让权等待

13.产生死锁的原因可以归结为两种:一是 资源有限 、二是进程推进顺序不当。

14.读者、写者问题是一个著名的经典同步问题,它是对多个并发进程共享数据对象的一种抽象。整型变

30

量readcount的初值设置为 0 。

15.各种不同的文件物理结构中,最常用的几种物理结构是:顺序结构、链接结构、 索引结构 。 16.Windows Server 2003内存管理采用了 页式虚拟存储技术 。

17.所谓 资源分配图 ,是用来描述进程、资源及它们之间关系的一种有向图。 18.通道控制方式是一种以内存为中心,实现 设备与内存 直接交换数据的控制方式 19.在多线程操作系统中,线程具有下述性质:具有进程控制块,共享所属进程资源,处理机的独立调度单位,具有 动态性 。

20.对系统资源的分类方法可以有许多种,根据资源的使用方法分为共享资源和 独享资源 。 21.如果资源分配图中没有环路,那么系统中就不存在 死锁 ;如果有环路,就有可能存在死锁。

四、问答题:

1.存储管理的主要功能是什么?

答:存储管理的主要功能是解决多道作业的主存空间的分配问题。主要包括:(1)内存区域的分配和管理:设计内存的分配结构和调入策略,保证分配和回收。(2)内存的扩充技术:使用虚拟存储或自动覆盖技术提供比实际内存更大的空间。(3)内存的共享和保护技术。除了被允许共享的部分之外,作业之间不能产生干扰和破坏,须对内存中的数据实施保护。

2.假设有一个系统,0时刻有4个进程按A, B, C, D的顺序几乎同时到达,它们的执行时间分别为30ms, 10ms, 20ms, 40ms. 按时间片轮转调度算法,选择时间片长度为10ms, 请描述各进程运行情况。

D C (结束)(结束)(结束)B A

(结束)0 10 20 30 40 50 60 70 80 90 100 t/ms 31

3.操作系统有哪几种基本类型?每种操作系统的主要特性是什么?

操作系统的基本类型: 批处理操作系统,分时操作系统和实时操作系统。 批处理操作系统的特点:CPU作业运行时独占,内存不能同时存放多道程序,无响应时间,资源利用率高。 分时操作系统的特点:CPU对时间分时,内存能同时存放多道程序,响应及时,公平面向多个用户。实时系统的特点是多路性,独占性,及时性,交互性,此外实时系统对时间的要求较高

4.直接通信方式描述生产者-消费者的通信过程如何描述?

答:cobegin void produceri(void) { }

void consumerj(void) { } coend

5.请阐述进程同步与互斥的联系与区别。

item nextp; while (TRUE) ……

生产一个消息nextp; ……

send (consumerj, nextp);

item nextc; while (TRUE)

receive (produceri, nextc); ……

消费信息nextc; ……

答:互斥:是指某一资源同时只允许一个访问者对其进行访问,具有唯一性和排它性。

但互斥无法限制访问者对资源的访问顺序,即访问是无序的。

同步:是指在互斥的基础上(大多数情况),通过其它机制实现访问者对资源的有序访问。在大多数情况下,同步已经实现了互斥,特别是所有写入资源的情况必定是互斥的。少数情况是指可以允许多个访问者同时访问资源

32

6.在银行家算法中,设在某个时刻T1时,系统中有5个进程共享3种资源,如表1所示。此时用安全性算法判断T1时刻是否为安全状态?

表1

资进 程 P1 P2 P3 P4 P5

7.请阐述线程具有哪些属性。

源 Al R1 R2 R3 0 1 0 2 0 0 3 0 2 2 1 1 0 0 2 Need R1 R2 R3 7 4 3 1 2 2 6 0 0 0 1 1 4 3 1 Av R1 R2 R3 3 3 2

答:轻型实体:只拥有必不可少的资源;独立调度和分派的基本单位;可迸发执行;

共享进程资源。

8.某小型超级市场可容纳50人同时购物。入口处备有购物小车,每个购物者都需要一个,且仅能推一个购物小车入内购物。出口处结账,并归还购物小车(出入口禁止多人同时通过)。试用PV原语写出购物者的同步算法。

答:? ①所用信号量设置如下: ? Ⅰ)互斥信号量S,初值为50,用以保证最多可以有50个购物者同时进入超市。 ? Ⅱ)互斥信号量mutex1、 mutex2,初值为1,用以保证同时只能有一个购物者进程进入出、入 口推车或者结帐后放放车。 ? ②用信号量机制给出的每个购物者购物过程的算法描述如下: 购物者进程: ? P(S); ? P(mutex1); ? 从入口处进超市,并推一辆车; ? V(mutex1); ? 进超市内选购商品; ? P(mutex2); ? 到出口结帐,并归还车子; ? V(mutex2); ? 从出口离开超市; ? V(S)

9.死锁的定义是什么?死锁产生的必要条件是什么?

在一组进程中,由于每一个进程都占用了某些资源,而又都在无限等待改组中其他进程释放资源,导致他们都无法向前推进,称此时系统处于死锁状态。

死锁产生的条件:1,互斥条件;2,占有和等待条件;3,不剥夺条件;4,循环等待条件。

33

10.在单道批处理系统中,写出表1中4个作业采用先来先服务调度算法时的调度顺序,并分别计算所需的平均周转时间和平均带权周转时间。

表1 作业 1 2 3 4

11.什么是原语?内核中所包含的原语主要有哪些方面?

提交时间 10:00 10:40 10:50 11:10 运行时间/min 60 20 30 10 原语 是由若干条指令组成的,用于完成一定功能的一个过程,原语的执行必须是连续的,在执行过程中不允许被中断。内核中所包含的原语主要包括进程控制原语、进程通信原语、资源管理原语以及其他原语。

12.假设有3个作业,提交时间和运行时间如表1所示。则计算在单道环境下,采用高响应比优先的调度算法的调度顺序,并分别计算所需的平均周转时间和平均带权周转时间。

表1

作业 1 2 3

13.请简述PV原语执行伪代码。

提交时间 10:00 10:20 10:50 运行时间/min 100 60 20

答:

}

void P(s)

struct semaphore s; {

s.value=s.value-1; if (s.value<0) block(s.L);

void V(s) struct semaphore s;

34

}

{

s.value=s.value+1; if (s.value<=0) wakeup(s.L);

14.假定一个阅览室最多可同时容纳100人,读者进入和离开阅览室时都必须在阅览室门口的一个登记表上登记。假定每次只允许一个人登记进入和登记离开,设阅览室内有100个座位。用PV原语编写读者进程的同步算法。

答:设置readercount=100,控制可进入的读者数

设置mutex=1,控制操作登记表 登入进程: { P(mutex) P(readercount) 分配阅览室资源 V(mutex) }

登出进程: { P(mutex) 回收阅览室资源 V(readercount) V(mutex) }

15.请简述操作系统的调用类型。

答:系统维护类调用、设备管理类调用;文件管理类调用、进程控制类调用;进程通信类调用、存储管理类调用。

16.假设某系统中有4个计算型进程,创建时刻、执行时间及优先级如表1所示。请描述采用非抢占式优先级调度算法各进程的运行情况。

表1:4个进程的创建时间、执行时间和优先级

进程 A B C D

17.资源的主要分类方法有哪些?根据这些分类方法,可分别将资源分为哪些类别?

创建时间 8:00 8:05 8:06 8:06 执行时间/min 7 5 1 2 优先级(数越大级越高) 1 3 4 2 答:根据资源占用分:可剥夺资源和不可剥夺资源;根据资源使用方式分:共享资源和独享资源;永久性资源和临时性资源;可再用资源和消耗性资源

35

18.在银行家算法中,设在某个时刻T1时,系统中有5个进程共享4种资源,如表1所示。此时用安全性算法判断T1时刻是否为安全状态?

表1

资进 程 P1 P2 P3 P4 P5

源 Al R1 R2 R3 R4 0 0 3 2 1 0 0 0 1 3 5 4 0 3 3 2 0 0 1 4 Need R1 R2 R3 R4 0 0 1 2 1 7 5 0 2 3 5 6 0 6 5 2 0 6 5 6 Av R1 R2 R3 R4 1 6 2 2 19.什么是作业管理?

答:用户请求计算机执行的一个独立的程序成为作业,作业管理是对用户提交的诸多作业进行管理。包括作业的组织、调度和控制等,尽可能高效的运用整个系统的资源。

20.在银行家算法中,设在某个时刻T1时,系统中有5个进程共享3种资源,如下所示。此时用安全性算法判断T1时刻是否为安全状态?

Process

Allocation A 0 2 3 2 0

B 1 0 0 1 0

C 0 0 2 1 2

Claim B 5 2 0 2 3

C 3 2 2 2 3

Available A 3

B 3

C 2

A 7 3 9 2 4

P0 P1 P2

P3 P4

21. 操作系统的两个主要目标是什么?

方便性和有效性;

22. 什么是多道程序设计? 在操作系统中使用这种技术有什么好处?

答:多道程序设计技术是指同时把多个作业(程序)放入内存并允许它们交替执行和共享系统中的各类资源;当一道程序因某种原因(如I/O请求)而暂停执行时,CPU立即转去执行另一道程序。操作系统在引入多道程序设计技术后,使

36

得系统具有了多道,宏观上并行,微观上串行的特点。

多道程序设计主要是使OS能更好地对计算机进行管理 使计算机的硬件资源得到更充分的利用 尤其是CPU 从而提高OS的管理能力

23. 采用层次式结构设计操作系统的主要优点是什么?

答:整体问题局部化,整个系统中的接口较少;系统的正确性可通过各层正确性来保证;增加、修改和替换层次不影响其他层次,有利于系统的维护和扩充。

24.采用微内核的方法设计操作系统的主要优点是什么?

答:对进程的请求提供一致性接口,不必区分内核及服务和户级服务,所有服务均借助消息传递机制提供;具较好的可扩充性和易修改性,增加新服务或替换老功能只需更换服务器;可移植性好,与特定的CPU有关的代码均在微内核中,把系统移植到新平台所做的修改较小;对分布式系统提供有力的支撑。

四、应用题:

1、设有n个进程共享一个临界区,一次允许m个进程进入临界区,说明信号量的初值、含义,并用PV原语写出有关进程的互斥算法。

2、设有3个进程R,W1,W2共享一个缓冲器B,B中每次只能存放一个整数。进程R每次启动输入设备读一个整数并且把它存放到缓冲器B中。若存放到缓冲器B中的是奇数,则由进程W1将其取出打印,否则有进程W2将其取出打印。规定进程R存入缓冲器B的数由进程W1和W2正确无误地打印出来(即要求打印的与存入的完全一致)。要求用PV原语管理这3个并发进程,使其能正确地同步工作。

3、设有n个进程共享一个临界区,一次只允许一个进程进入临界区,说明信号量的初值、含义,并用PV原语写出有关进程的互斥算法。

37

4、试写出使用PV原语解决读者-写者问题的信号量、变量设置及伪代码描述。

5、有两个合作进程Pc和Po,它们共享一个单缓冲区B。Pc是计算进程,Po是打印进程,请写出利用PV原语实现同步的伪代码。

6、设有2个进程R,W共享一个缓冲器B,B中每次只能存放一个整数。进程R每次启动输入设备读一个整数并且把它存放到缓冲器B中,并由进程W将其取出打印。要求用PV原语管理这2个并发进程,使其能正确地同步工作。

7、试写出使用PV原语解决哲学家进餐问题的信号量、变量设置及伪代码描述。

8、试写出利用直接通信方式描述生产者-消费者通信过程。

9、在公共汽车上,司机和售票员的工作流程如下图所示。为了保证乘车和行车安全,司机和售票员应密切配合协调工作。用PV原语描述司机与售票员之间的同步算法。

38

司机启动车辆正常行车到站停车售票员开车门上下乘客关车门售票39

本文来源:https://www.bwwdw.com/article/nzo5.html

Top