操作系统习题及解答.docx
《操作系统习题及解答.docx》由会员分享,可在线阅读,更多相关《操作系统习题及解答.docx(25页珍藏版)》请在冰豆网上搜索。
操作系统习题及解答
第一章绪论
一、单项选择题
1、在下列选择中,( D )不是操作系统关心的主要问题。
A、管理计算机裸机 B、设计、提供用户程序计算机硬件系统的界面
C、管理计算机系统资源 D、高级程序设计语言的编译器
2、批处理系统的主要缺点是( C )。
A、CPU利用率低 B、不能并发执行
C、缺少交互性 D、以上都不是
3、多道程序设计是指( D )。
A、在实时系统中并发运行多个程序
B、在分布系统中同一时刻运行多个程序
C、在一台处理器上同一时刻运行多个程序
D、在一台处理器上并发运行多个程序
4、以下最早的OS是( D )。
A、分布式系统 B、实时系统
C、分时系统 D、批处理系统
5、批处理OS提高了计算机系统的工作效率,但( D )。
A、不能自动选择作业执行 B、无法协调资源分配
C、不能缩短作业执行时间 D、在作业执行时用户不能直接干预
6、分时OS追求的目标是( C )。
A、高吞吐量 B、充分利用内存
C、快速响应 D、减少系统开销
7、多道批处理系统提高了计算机系统的资源利用率,同时( B )
A、减少了各作业的执行时间 B、增加了作业吞吐量
C、减少了作业的吞吐量 D、减少了部分作业的执行时间
8、设计实时OS时,( B )不是主要追求目标。
A、安全可靠 B、资源利用率
C、及时响应 D、快速处理
9、现代OS的两个基本特征是( C )和资源共享。
A、多道程序设计 B、中断处理
C、程序的并发执行 D、实现分时与时实处理
10、OS中采用多道程序设计技术提高了CPU和外部设备的( A )。
A、利用率 B、可靠性 C、稳定性 D、兼容性
11、OS的基本类型有( B )
A、批处理系统、分时系统及多任务系统
B、实时OS、批处理OS及分时OS
C、单用户系统、多用户系统及批处理系统
D、实时系统、分时系统和多用户系统
12、为了使系统中所有的用户都能得到及时响应,该OS应该是( B )
A、多道批处理系统 B、分时系统 C、实时系统 D、网络系统
13、从下列叙述中选出正确的叙述( A )。
A、OS的不确定性是指在OS控制下的多个作业执行顺序和每个作业的执行时间是不确定的。
B、分时系统中,响应时间时间片用户数,因此为改善响应时间,常用的原则是使时间片越小越好
C、数据库管理程序需要调用系统程序,OS程序的实现也需要数据库系统的支持
D、用户程序通常可以直接访问系统缓冲区中的数据
14、在(A)OS控制下,计算机系统能及时处理由过程控制反馈的数据并做出响应。
A、实时 B、分时 C、分布式 D、单用户
15、分时系统的响应时间是根据( D )确定的,而实时系统的响应时间则是由( E )确定的。
A、时间片大小 B、用户数目 C、计算机运行速度
D、用户所能接受的等待时间 E、控制对象所能接受的时延
二、填空题
1、采用多道程序设计技术能充分发挥( CPU )与( 外设 )并行工作的能力。
2、OS的基本功能包括( 进程管理、作业管理、存储管理、设备管理和文件系统 )。
3、分时OS的主要特征是( 多路性、独立性、及时性和交互性 )。
4、在主机控制下进行的输入/输出操作称为( 联机输入/输出 )操作。
5、( 批处理 )系统不允许用户随时干预自己程序的运行。
6、为了赋予OS某些特权,使得OS更加安全可靠地工作,实际OS中区分程序执行的两种不同的运行状态是( 管态 )和( 目态 ),( 目 )态下执行的程序不能执行特权指令。
7、批处理系统是在解决( 人机矛盾 )和( CPU与I/O速度不匹配 )的矛盾中发展起来的。
8、所谓虚拟是指把一个( 物理实体 )变为若干个( 逻辑上的对应物 )。
9、分时系统中,响应时间与( 等待队列中的进程数目以及为每人进程分得的时间片大小 )有关。
三、判断题
1、操作系统控制作业运行的方式主要有:
批处理方式、分时方式、实时方式。
( )
2、操作系统中的控制程序一定具有分时处理能力。
( )
3、系统初启引导不性于OS。
( )
4、批处理系统不允许用户随时干预自己程序的运行。
( )
5、操作环境不是OS。
( )
6、多道批处理OS适合于终端作业。
( )
7、在多道程序设计的系统中,系统的效率与并行的道数成正比。
( )
8、OS本身的所有功能都是与硬件相关的。
( )
9、实时OS强调系统的实时性和高可靠性,其次才考虑资源的利用率。
( )
第二章进程管理
一、单选
1、进程和程序的根本区别在于( A )。
A、静态与动态的特点
B、是不是被调入到内存中
C、是不是具有就绪、运行和等待3种状态
C、是不是占有处理器
2、单CPU环境下,关于进程的说法下列正确的是( C )。
A、进程就是程序,或者说,进程是程序的另一种叫法
B、进程可以由阻塞状态直接转换为运行态
C、多个不同的进程可以包含相同的程序段
D、两个进程可以同时处于运行状态
3、进程的并发执行是指若干个进程( B )。
A、同时执行 B、在同一段时间内同时执行
C、不能在同一段时间内同时执行 C、共享系统资源
4、下面对进程的描述中,错误的是( D )
A、进程是动态的概念 B、进程执行需要处理机
C、进程是有生命期的 C、进程是指令的集合
5、下面所述步骤中,( A )不是创建进程所必需的。
A、由调度程序为进程分配CPU
B、建立一个进程控制块
C、为进程分配内存
D、将进程控制块链入就绪队列
6、操作系统对进程的管理和控制使用( B )进程操作。
A、指令 B、原语 C、信号量 D、信箱通信
7、下面所列的进程3种基本状态之间的转换不正确的是( D )
A、就绪状态运行状态 B、运行状态就绪状态
C、运行状态等待状态 C、就绪状态等待状态
8、两个进程合作完成一个任务,在并发执行中,一个进程要等待其合作伙伴发来的消息,或者等待某个事件发生后再向前执行,这种制约性合作关系被称为进程的( A )。
A、同步 B、互斥 C、调度 D、执行
9、为了进行进程协调,进程之间应当具有一定的联系,这种联系通常采用进程间交换数据的方式进行,这种方式称为( D )
A、进程互斥 B、进程同步 C、进程制约 D、进程通信
10、P、V操作是( A )
A、两条低级进程通信原语 B、两组不同的机器指令
C、两条系统调用命令 D、两条高级进程通信原语
11、用V操作唤醒一个等待进程时,被唤醒进程的状态变为( B )
A、等待 B、就绪 C、运行 D、完成
12、对于两个并发进程,设互斥信号量为mutex,若mutex=0,则( B )
A、表示没有进程进入临界区
B、表示有一个进程进入临界区,另一个进程不等待进入
C、表示有一个进程进入临界区,另一具进程等待进入
D、表示有个进程进入临界区
13、由于并发进程之间( B )不能由进程本身来控制,当它们在共享某资源时,可能会产生与时间有关的错误。
A、占用存储器的位置 B、执行的相对速度
C、分配外部设备 D、外部设备的启动
14、一个进程由程序、数据及PCB组成,其中( D )必须用可重入码编写。
A、PCB B、程序 C、数据 D、共享程序段
15、下面对临界区的论述中,正确的是( D )
A、临界区是指进程中用于实现进程互斥的那段代码
B、临界区是指进程中用于实现进程同步的那段代码
C、临界区是指进程中用于实现进程通信的那段代码
D、临界区是指进程中用于访问共享资源的那段代码
16、设有6个进程共享同一互斥段,若最多允许有3个进程进入互斥段,则所采用的互斥信号量的初值为( A )
A、3 B、6 C、1 D、0
17、有3个进程共享同一程序段,而每次最多允许两个进程进入该程序段,若用P、V操作作同步机制,则信号量S可取值( A )
A、2,1,0,-1 B、3,2,1,0
C、2,1,0,-1,-2 D、1,0,-1,-2
18、消息缓冲队列中的临界资源是( B )
A、队列中某个消息缓冲区 B、整个消息缓冲队列
C、信箱 D、管道
19、下面说法正确的是( D )
A、引入线程后,处理机只能在进程间切换
B、引入线程后,处理机仍在进程间切换
C、线程的切换,不会引起进程切换
D、线程的切换,可能引起进程切换
20、下面说法不正确的是( C )
A、一个进程可以创建一个或多个线程
B、一个线程可以创建一个或多个线程
C、一个线程可以创建一个或多个进程
D、一个进程可以创建一个或多个进程[
二、填空
1、进程管理的基本功能是( 进程控制、进程同步、进程通信和进程调度 )。
2、在单用户环境下,用户独占全机,此时机器内资源的状态只能由运行程序的操作加以改变,此时的程序执行具有( 封闭 )性和( 可再现 )性特征。
3、并发程序之间的相互制约,是由于它们( 共享资源 )和( 相互合作 )而产生的,因而导致程序在并发执行时,具有( 间断性 )特征。
4、用户为阻止进程继续运行,应利用( 挂起 )原语,若进程正在执行,应转变为( 静止阻塞 )状态。
不久,若要恢复其运行,应利用( 激活 )原语,此时进程应转变为( 活动就绪 )状态。
5、为实现消息缓冲通信,在PCB中应增加( 消息队列指针 )、(消息队列互斥信号量 )和( 消息队列资源信号量 )三个数据项。
6、( PCB )是保存进程状态,控制进程转换的标志,也是进程存在的惟一标志。
7、如果信号量的当前值为-4,则表示系统中在该信号量上有( 4 )等待进程。
8、在一具单处理机系统中,若有5个用户进程,且假设当前时刻为用户态,则处于就绪状态的用户进程最多有( 4 ),最少有( 0 )个。
9、用信箱实现通信时,应有( 发送 )和( 接收 )两条基本原语。
10、在具有线程的OS中,资源的分配单位是( 进程 ),处理机调度的单位是( 线程 ),一个进程可以有( 多个 )线程。
三、判断题
1、并发进程间必须有关。
( )
2、在多道程序系统中,只有相关的并发进程才有可能存在同步或互斥问题。
( )
3、有交往的并发进程,如果不能控制它们的相对速度,则它们在共享资源时,有可能出出与时间有关的错误。
( )
4、进程的等待状态是指等待占用处理机时的进程状态。
( )
5、进程之间的直接制约关系可以归结为共享数据与交换数据。
( )
6、用P、V操作可以解决一切同步与互斥问题,而且在执行P、V操作时,系统不响应任何中断请求。
( )
7、用P、V操作实现进程同步和互斥,若P、V操作使用不当可能会发生死锁。
( )
8、用户进程只能在目态下运行,而系统进程则不然。
( )
9、一个程序的一次运行成为一个进程,所以不同的进程一定对应不同的程序。
( )
10、进程的切换是在管态下发生的。
( )
11、利用信箱作为通信机制进行进程通信时,两个基本的等待事件是:
发信时可能等待信箱,取信时可能等待信件。
( )
12、任何时刻,一个进程的状态变化一定引起另一个进程的状态变化。
( )
13、进程能够自己撤销自己。
( )
14、同一进程或不同进程内的线程都可以并发执行。
( )
第三章调试与死锁
一、单选题
1、进程调度是指根据一定的调度算法,从( B)队列中挑选出一个进程,将CPU分配给它。
A、阻塞 B、就绪 C、运行 D、等待
2、以下关于资源分配图与死锁关系说法中错误的是( D )
A、如果资源分配图中无环路,则系统中没有死锁发生
B、如果资源分配图中有环路,且每个资源类中只有一个资源,则处于环路中的进程一定处于死锁状态。
C、如果资源分配图有环路,同时资源类中有多个资源,则未必出现死锁。
D、如果资源分配图是不可化简的,且有环路,则系统中是否发生死锁,需进一步分析。
3、银行家算法在解决死锁问题中是用于( B )的。
A、预防死锁 B、避免死锁 C、检测死锁 D、解除死锁
4、死锁的产生有4个必有条件,在死锁的预防策略中,资源的有序分配策略可以破坏( D )条件。
A、互斥使用 B、占有且等待 C、不可抢占 D、环路等待
5、下列作业调度算法中,具有最短的作业平均周转时间的是( B )
A、FCFS B、短作业优先法 C、优先数法 D、时间片轮转法
6、在多进程的并发系统中,肯定不会因竞争( B )而产生死锁。
A、打印机 B、CPU C、磁盘 D、磁带机
7、在分时间系统中,进程调度经常采用( C )算法。
A、FCFS B、最高优先权 C、时间片轮转 D、随机
8、为多道程序提供的可共享资源不足时,可能出现死锁;不适当的( C )也可能产生死锁。
A、进程优先权 B、时间片大小
C、进程的推进顺序 D、分配队列优先权
9、为了系统中各部分资源得到均衡使用,以提高系统的效率,就必须选择对资源需求不同的作业进行合理搭配。
这项工作是由( A )完成的。
A、作业调度 B、中级调度 C、进程调度 D、内存调度
10、既考虑作业等待时间,又考虑作业完成时间的调度算法是( A )
A、响应比高优先 B、短作业优先
C、优先级调度算法 D、FCFS
11、作业在系统中存在与否的惟一标志是( C )。
A、作业说明书 B、源程序 C、作业控制块 D、作业名
12、当作业进入完成状态时,操作系统( B )
A、将删除该作业并回收其所占资源,同时输出结果
B、将该作业的作业控制块从当前作业队列中删除,回收其所占资源,并输出结果。
C、将回收该作业所占资源并输出结果。
D、将输出结果并删除内存中的作业。
13、一个作业进入主存后,所属该作业的进程初始时处于( C )状态。
A、运行 B、等待 C、就绪 D、后备
14、作业周转时间为( B )
A、作业开始时间-作业提交时间 B、作业等待时间+作业运行时间
C、作业等待时间 D、作业运行时间
15、按序分配资源是为了( B )
A、死锁的检测 B、死锁的预防 C、死锁的避免 D、死锁的解除
16、死锁的预防是根据( C )采取措施实现的。
A、防止系统进入不安全状态 B、配置足够的系统资源
C、破坏产生死锁的4个必要条件之一 D、使进程的推进顺序合法
17、下列必定会引起进程切换的是( B )
A、一个进程被创建后进入就绪状态 B、一个进程从运行态变成阻塞状态
C、一个进程从阻塞状态变为就绪状态 D、输入一个新的作业
18、在分时系统中,当前运行的进程连续获得了两个时间片,原因是( B )
A、该进程的优先级最高 B、就绪队列为空
C、该进程最早进入就绪队列 D、该进程是一个短进程
19、下述作业调度算法中,( B )调度算法与作业的估计运行时间有关。
A、FCFS B、短作业优先 C、均衡调度 D、时间片轮转
20、一种既有利于短作业,又兼顾到长作业的作业调度算法是( C )
A、FCFS B、短作业优先 C、高响应比 D、时间片轮转法
二、填空题
1、作业从进入系统并驻留在外存的后备队列上开始,直至作业运行完毕,可能要经历三级调度,其中的中级调度指的是( 内外存对换 )。
2、不让死锁发生的策略可分为静态和动态两种,死锁避免属于( 动态 ),死锁的预防属于( 静态 )。
3、进程调度在采用优先级调度算法时,一个高优先级的进程占用处理机时可以采用( 非抢占式 )或( 可抢占式 )两种处理方式。
4、解决死锁的方法可分为( 死锁预防 )、( 死锁避免 )、( 死锁检测 )和( 死锁解除 )。
5、进程控制信息的交换称为( 低级通信 ),而把进程间大批量信息的交换称为( 高级通信 )。
6、确定作业调度算法时就注意系统资源的均衡使用,使( I/O繁忙 )型作业和( CPU繁忙 )型作业搭配运行。
7、在高响应比优先的作业调度算法中,当各作业等待时间相同时,( 运行时间短 )的作业得到优先调度;各作业要求运行的时间相同时,( 等待时间长 )的作业得到优先调度。
8、对待死锁,一般就考虑死锁的预防、避免、检测和解除4个问题。
银行家算法属于( 死锁的避免 ),破坏环路等待条件是属于( 死锁的预防 ),剥夺资源是( 死锁的解除 )的基本方法。
9、一人计算机系统拥有6台打印机,N个进程争夺使用,每个进程最多要求2台打印机。
若要保证系统不会发生死锁,则N的最大值为( 5 )。
10、作业调度从( 后备队列 )中选择一道作业,为它分配资源,并为它创建( 进程 )。
三、判断题
1、作业一旦被调度选中,系统就给它分配CPU。
( )
2、进程的调度算法有很多,如果选择不当,就地造成死锁。
( )
3、资源的静态分配是指作业需要的所有资源都得到满足之后才投入执行,而且在作业生存期间始终为该作业所占有。
( )
4、对于FCFS,轮转法和多级反馈队列三个高级调度算法来说,它们对短作业的优先按优先程度升高排序为:
FCFS,轮转法,多级反馈队列。
( )
5、在分时系统和实时系统中不设置作业调度,只有进程概念。
( )
6、采用多道程序设计的计算机系统,极大提高了计算系统的系统效率,但可能使每个作业的执行时间延长。
( )
7、作业控制语言是用于控制中断作业的执行步骤的,因此可用它编写程序以实现某项计算任务。
( )
四、计算题
1、在单机系统中,系统中各进程到达就绪队列的时刻、执行时间和优先数(优先数越小优先级越高)如下表所示。
假设进程的调度时间忽略不计。
请分别给出采用如下不同的进程调度算法时各进程的调度次序,并计算平均周转时间。
进程
到达就绪队列时刻
执行时间(ms)
优先数
P1
0
3
3
P2
2
6
5
P3
4
4
1
P4
6
5
2
P5
8
2
4
(1)FCFS调度算法;
(2)时间片轮转调度算法(时间片为1ms);(3)剥夺式短进程优先调度算法;(4)剥夺式优先级调度算法;(5)非剥夺式优先级调度算法。
解答:
(1)按FCFS调度算法,可得下表:
进程名
创建时间
结束时刻
周转时间(ms)
平均周转时间(ms)
P1
0
3
3
(3+7+9+12+12)/5=
P2
2
9
7
P3
4
13
9
P4
6
18
12
P5
8
20
12
(2)按时间片轮转调度算法,可得下表
进程名
创建时间
结束时刻
周转时间(ms)
平均周转时间(ms)
P1
0
4
4
(4+16+13+14+7)/5=
P2
2
18
16
P3
4
17
13
P4
6
20
14
P5
8
15
7
(3)按照剥夺式短进程优先调度算法,有两种情况:
A、调度顺序为:
P1,P2,P3,P5,P4,P2
进程名
创建时间
结束时刻
周转时间(ms)
平均周转时间(ms)
P1
0
3
3
(3+18+4+9+2)/5=
P2
2
20
18
P3
4
8
4
P4
6
15
9
P5
8
10
2
B、调度顺序为:
P1,P2,P3,P5,P2,P4
进程名
创建时间
结束时刻
周转时间(ms)
平均周转时间(ms)
P1
0
3
3
(3+13+4+14+2)/5=
P2
2
15
13
P3
4
8
4
P4
6
20
14
P5
8
10
2
(4)按剥夺式优先调度算法
进程名
创建时间
结束时刻
周转时间(ms)
平均周转时间(ms)
P1
0
3
3
(3+18+4+7+7)/5=
P2
2
20
18
P3
4
8
4
P4
6
13
7
P5
8
15
7
(5)按非剥夺式优先调度算法,结果与FCFS调度算法相同。
2、在银行家算法中,有下表所示资源分配情况:
资源情况
进 程
Allocation
ABCD
Need
A B C D
Available
A B C D
P0
P1
P2
P3
P4
10 3 2
20 0 0
1 3 5 4
13 3 2
0 0 1 4
10 1 2
27 5 0
33 5 6
16 5 2
0 6 5 6
26 2 2
试问:
(1)该状态是否安全?
(2)如果进程P2提出请求Request(1,2,2,2),系统能否将资源分配给它。
解答:
(分析过程略)
(1)安全。
存在安全序列{P0,P3,P4,P1,P2}
(2)此时系统不能将资源分配给P2。
五、分析题
1、设有两个进程A,B各自按以下顺序使用P,V操作进程同步(S1,S2的初值均为1)。
P,V操作编号
A进程
P,V操作编号
B进程
11
P(S1)
21
P(S2)
12
P(S2)
22
P(S1)
13
V(S2)
23
V(S1)
14
V(S1)
24
V(S2)
(1)试分析各种推进速度可能引起的情况;
(2)用产生死锁的必要条件解释产生死锁和不产生死锁原因。
解答:
(1)推进顺序:
11,12,21和21,22,11不产生死锁;推进顺序:
11,21,12,22、推进顺序11,21,22,12、推进顺序21,22,12、推进顺序21,11,12,22产生死锁。
(2)产生死锁的原因是它们满足请求放保持条件;不产生死锁的原因是破坏了产生死锁的请求和保持条件。
2、考虑如下交通死锁问题:
(1)试说明产生死锁的四个必要条件在此例中均成立;
(2)请建立一种规则,以避免死锁的发生。
解答:
(1)路口是共享资源。
路口必须互斥使用;
得不到路口要等待;
一旦占用路口,除非自己让出路口,否则别人无权剥夺;
占用路口的车都在等待其他车占用的路口,循环等待。
(2)可以用两种方法来避免交通死锁的产生。
第一种方法是不考虑路口之间的距离时建立5个信号灯,其中一个是共用信号灯,其他四个每个路口各一个。
信号灯(量):
S=1;S1,S2,S3,S4:
=0。
规则如下:
每个欲进入路口的车辆,在进入路口前先看信号灯S,若S没有人占用,则它先占用;若有人占用,它必须等待,直到释放信号灯S时被唤醒。
占用了信号灯S后,再看其它三个路口是否已经都被占用,若都被占用,它必须等待;如果它占用这个路口,把该路口的信号灯变成占用标志,释放共用信号灯,若有等待共用信号灯的,则把它唤醒。
一旦过了路口,立即释放该路口的信号灯。
第二种方法是考虑路口之间的距离,两个路口之间可以有若