操作系统题库.docx
《操作系统题库.docx》由会员分享,可在线阅读,更多相关《操作系统题库.docx(36页珍藏版)》请在冰豆网上搜索。
操作系统题库操作系统题库填空题1、计算机操作系统是方便用户、管理和控制计算机_资源_的系统软件。
2、采用多道程序设计技术能充分发挥处理器与与外围设备之间并行工作的能力。
3、操作系统目前有五大类型:
_批处理操作系统_、_分时操作系统_、_实时操作系统_、_网络操作系统_和_分布式操作系统_。
4、操作系统的五大功能是:
_处理机管理功能_、_存储器管理功能_、_设备管理功能_、文件管理功能_和_用户接口_。
5、DOS是_DiskOperatingSystem_(磁盘操作系统)_的缩写。
6、UNIX系统是分时操作系统,DOS系统是单用户单任务操作系统。
7、计算机中的CPU的工作分为系统态和用户态两种,系统态运行操作系统程序,用户态运行应用程序。
三、简答题1、什么是操作系统?
它的五大主要功能是什么?
答:
操作系统是控制和管理计算机系统内各种硬件和软件资源、有效地组织多道程序运行的系统软件(或程序集合),是用户与计算机之间的接口。
操作系统作为计算机基本的系统软件,具有五大功能,分别是:
存储管理、进程和处理机管理、文件管理、设备管理和用户接口管理。
2、解释以下术语:
资源、多道程序设计、并发、分时、吞吐量。
答:
资源:
计算机中硬件和软件的总称。
多道程序设计:
在这种设计技术下,内存中能同时存放多道程序,在管理程序的控制下交替地执行。
这些作业共享CPU和系统中的其他资源。
并发:
是指两个或多个活动在同一给定的时间间隔中进行,是宏观上的概念。
分时是指多个用户分享使用同一台计算机。
多个程序分时共享硬件和软件资源。
吞吐量:
在一段给定的时间内,计算机所能完成的总工作量。
3、实时系统与分时系统的区别是什么?
答:
实时系统的交互能力较弱,为某个特定的系统专用;实时系统的响应时间更严格、及时;实时系统对可靠性的要求更高。
(1)关于交互性。
分时系统中各个终端用户与系统之间具有较强的交互性,而实时系统一般是专为某一领域使用的,对此要求不强。
(2)关于可靠性。
与分时系统相比,实时系统更加注重其稳定性和可靠性。
例如,对于航天控制系统来说,实时控制系统的故障可能带来的后果是无法估量的。
(3)关于响应时间。
分时系统对响应时间的要求是以终端用户能接受的时间为依据的;而实时系统对响应时间一般有严格的要求,即能对外部请求做出及时的响应和处理4、什么是多道程序设计?
多道程序设计的特点是什么?
答:
多道程序设计技术是指把多个程序同时存放在内存中,使它们同时处于运行状态。
这些作业共享处理器时间和外部设备以及其他资源。
多道程序设计技术的主要特点是:
多道、宏观上并行、微观上串行。
多道是指计算机内存中同时存放多道相互独立的程序。
宏观上并行是指同时进入系统中的多道程序都处于运行过程中。
微观上串行是指在单处理机环境中,内存中的多道程序轮流占有CPU,交替执行5、如何理解计算机系统的资源?
答:
计算机系统的资源包括两大类:
硬件资源和软件资源。
硬件资源主要有中央处理器、主存储器、辅助存储器和各种输入输出设备。
软件资源有编译程序、编辑程序等各种程序以及有关数据7、我们通常将操作系统分为哪几种类型?
各自有什么特点?
答:
操作系统系统主要分为以下几大类:
一、批处理操作系统早期的一种大型机用操作系统。
可对用户作业成批处理,期间勿需用户干预,分为单道批处理系统和多道批处理系统。
二、分时操作系统利用分时技术的一种联机的多用户交互式操作系统,每个用户可以通过自己的终端向系统发出各种操作控制命令,完成作业的运行。
分时是指把处理机的运行时间分成很短的时间片,按时间片轮流把处理机分配给各联机作业使用。
三、实时操作系统一个能够在指定或者确定的时间内完成系统功能以及对外部或内部事件在同步或异步时间内做出响应的系统。
四、网络操作系统一种在通常操作系统功能的基础上提供网络通信和网络服务功能的操作系统。
五、分布式操作系统一种以计算机网络为基础的,将物理上分布的具有自治功能的数据处理系统或计算机系统互联起来的操作系统。
是非题(正确的划“”,错误的划“”)(F)1、多用户操作系统离开了多终端硬件支持,则无法使用。
(F)2、具有多道功能的操作系统一定是多用户操作系统。
(T)3、多用户操作系统在单一硬件终端硬件支持下仍然可以工作。
(F)4、多用户操作系统一定是具有多道功能的操作系统。
(T)5、进程的相对速度不能由自己来控制。
(F)6、进程的并发执行是指同一时刻有两个以上的程序,它们的指令在同一个处理器上执行。
(F)7、并发进程在访问共享资源时,不可能出现与时间有关的错误。
(F)8、并发是并行的不同表述,其原理相同。
(T)9、临界资源是指每次仅允许一个进程访问的资源。
(T)10、进程的互斥和同步是进程通信的基本内容。
(F)11、进程的互斥和同步的相互制约一般不会同时发生。
(T)12、进程的互斥和同步总是因相互制约而同时引起。
(T)13、作业同步面向用户而进程同步面向计算机内部资源管理控制。
(T)14、进程之间的同步,主要源于进程之间的资源竞争,是指对多个相关进程在执行次序上的协调。
(T)15、P操作和V操作都是原语操作。
(F)16、利用信号量的PV操作可以交换大量的信息。
(F)17、信号量机制是一种有效的实现进程同步与互斥的工具。
信号量只能由PV操作来改变。
(T)18、V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值等于零,则从等待队列中唤醒一个进程,现进程变为等待状态,否则现进程继续进行。
(F)19、死锁是指因相互竞争资源使得系统中有多个阻塞进程的情况。
(T)20、产生死锁的原因可归结为竞争资源和进程推进顺序不当。
(T)21、死锁是指两个或多个进程都处于互等状态而无法继续工作。
(F)22、计算机的死锁俗称“死机”。
三、填空题1、进程的三个基本状态是运行态、就绪态和阻塞态。
2、程序的_并发_执行是现代操作系统的基本特征之一,为了更好地描述这一特征而引入了_进程_这一概念。
3、进程存在的标志是_PCB_。
4、一个程序运行在不同的数据集上就构成了不同的进程,分别得到不同的结果。
5、进程是一个动态的实体,它有自己的生命周期。
它因创建而产生,因调度而运行,因等待某一件事情而被阻塞(进入等待态),因执行完毕而被撤消。
6、进程在运行过程中不断变化,但在某一时刻,进程当且仅当处于3种基本状态之一。
7、进程的静态实体由_程序段_、_相关数据段_和_PCB_三部分组成。
8、用于进程控制的原语主要有建立原语、撤消原语、挂起原语和_激活原语。
9、进程被创建后,最初处于_就绪_状态,然后经_进程调度程序_选中后进入_执行_状态。
10、进程在运行中申请资源得不到满足,则它从_执行_态变成_等待_态。
11、处于等待态的进程,其外围设备工作结束,则它变成_就绪_态。
12、进程从运行态变成就绪态,主要原因是_运行时间到_和_出现更高优先权进程_。
13、有多个进程等待分配CPU时,系统按一定的_优先级_,从处于就绪态的进程中选择_第一_个进程,让它占有CPU,并把它的状态变成_运行_态。
14、进程的特征主要有_并发性_、_异步性_、独立性,制约性和结构性。
15、PCB的含义是_操作系统用于记录和刻画进程状态及有关信息数据结构。
16、操作系统依据_PCB_对进程控制和管理。
17、进程创建工作主要完成的是创建进程控制块,并把它挂到_就绪_队列中。
18、一个进程完成自己的任务后,操作系统则要收回该进程占有的_地址空间_和撤消该进程的_控制块_。
19、如果系统中有N个进程,则在就绪队列中进程的个数最多为_N-1_。
20、操作系统中用于完成一些特定功能的、不可中断的过程称为_原语_。
21、用于控制进程的原语有创建原语、撤消原语、_挂起原语_和_激活原语_。
22、进程有两种基本队列:
_就绪队列_和_等待队列_。
23、进程调度程序负责CPU的分配,它按照某种_算法_,从就绪的进程中选择一个进程,将其_PCB_中的有关现场信息送入处理器相应的寄存器中,使它占有处理器运行。
24、常用的进程调度算法有先来先服务、时间片轮转法和优先级法。
25、先来先服务调度算法是按照进程进入就绪列队的_先后次序_来选择其占用的CPU,在进程调度时总是把CPU分配给就绪列队的_队首_进程。
26、时间片是指允许进程一次性占用处理器的_CPU_。
时间片轮转算法常用于_分时_操作系统。
27、我们把一个进程让出CPU,由另一个进程占用CPU的过程称为_进程切换_。
28、当一个进程独占处理器顺序执行时,具有_封闭性_和_可再现性。
29、并发进程执行时,执行结果与它执行的_初始条件_有关;进程的并发执行会破坏_封闭性_和_可再现性_。
30、我们把并发过程中与_临界资源进行操作_有关的程序段称为临界区。
31、对_共享资源_的若干临界区必须互斥执行,而对_非共享资源_的临界区是不必互斥的。
32、一次至多_一_个进程能够进入临界区,当有进程在临界区_执行_时,其他想进入临界区的进程必须_等待_。
33、任一个进入临界区的进程必须在_有限_时间内_进入_临界区。
34、每执行一次V操作,信号量的数值S加1。
若_S=0_,则该进程继续执行;否则,从对应的_就绪_队列中移出一个进程并将_执行状态赋予该进程。
35、利用信号量实现进程的_互斥与同步_,应为临界区设置一个信号量MUTEX,其初值为1,表示该资源尚未使用,临界区应置于_P(mutex)_和_V(mutex)_原语之间。
36、操作系统中信号量的值与_相应资源_的使用情况有关,它的值仅能由_P、V操作_来改变。
37、_PV操作_能够实现临界区的管理要求。
38、PV操作由_P操作_和_V操作_组成,是对_资源_进行操作。
39、P操作信号的值_S:
=S-1_,若结果小于0,则该进程值为_等待_状态。
V操作将信号量的值_S:
=S+1_,若结果_大于0_,则释放一个等待信号量的进程。
40、当并发进程存在竞争关系时必须排它地使用资源;当并发进程存在协作关系时必须_共享资源_。
分别称为_进程的互斥_和_进程的同步_。
41、_互斥_是指当有若干个进程都要使用某一共享资源时,任何时刻最多只允许_一_个进程去使用,其他要只用该资料的进程必须_等待_,直到占用资源者_释放_该资源。
42、进程的同步是指并发进程之间的一种_直接的协同工作_关系,一个进程的执行依赖另一个进程的_信息或信号_,当一个进程没有得到它时应_等待_,直到被_唤醒_。
43、进程的同步和互斥反映了进程间_同步_和_互斥_的关系。
44、用PV操作是实现_同步_和_互斥_的有效工具,但若使用不当则不仅_会出现与时间相关的错误_而且会_产生死锁_。
45、并发进程之间通过_信号量_交换的是少量的信息,这是一种_低级_通信方式;而大量信息的传递要_消息传递_来实现,这是一种_高级_的通信方式,称为_消息传递机制_。
46、实际上,_进程互斥_是进程同步的一种特例。
47、目前常用的高级通信方式有共享存储器、_消息传递通信机制_、管道通信_等。
48、形成死锁的起因是_竞争资源_和_进程间推进顺序非法_。
49、避免死锁的一个著名的算法是_银行家算法_。
50、死锁产生的四个必要条件是_互斥条件_、_请求和保持条件、_不剥夺条件_和_循环等待条件_四种。
51、检测死锁后可采用剥夺进程占有的资源、_进程回退_、_进程撤销_和_系统重启_等办法来解除死锁。
52、在实际使用中,为了操作系统的安全和可靠,往往采用死锁的_预防_、_避免_和_检测与解除_的混合策略,这样既可保证整个系统不出现死锁,又可以尽可能地提高资源利用率。
53、通常,线程的定义是_是进程中执行运算的最小单位_。
在现代操作系统中,资源的分配单位是_进程_,而处理机的调度单位是_线程_,一个进程可以有_多个_线程。
54、利用优先级调度算法进行进程调度时,即从就绪队列中选择优先级高的进程有两种不同的处理方式:
非抢占式优先权算法和抢占式优先权算法。
四、简答题1、什么是进程?
它与程序相比有哪些特征?
答:
进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动。
它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元。
进程与程序的主要区别:
(1)程序是永存的;进程是暂时的,是程序在数据集上的一次执行,有创建有撤销,存在是暂时的;
(2)程序是静态的观念,进程是动态的观念;(3)进程具有并发性,而程序没有;(4)进程是竞争计算机资源的基本单位,程序不是。
(5)进程和程序不是一一对应的:
一个程序可对应多个进程即多个进程可执行同一程序;一个进程可以执行一个或几个程序2、一个进程进入临界区的调度原则是什么?
答:
进程进入临界区的调度原则是:
如果有若干进程要求进入空闲的临界区,一次仅允许一个进程进入。
任何时候,处于临界区内的进程不可多于一个。
如已有进程进入自己的临界区,则其它所有试图进入临界区的进程必须等待。
进入临界区的进程要在有限时间内退出,以便其它进程能及时进入自己的临界区。
如果进程不能进入自己的临界区,则应让出CPU,避免进程出现“忙等”现象。
空闲让进、忙则等待、有限等待、让权等待3、在一个单CPU的多道程序设计系统中,若在某一时刻有N个进程同时存在,那么处于运行态、等待态和就绪态进程的最小和最大值分别可能是多少?
答:
状态最大值最小值运行态11等待态N-10就绪态N-104、为什么并发进程执行时可能会产生与时间有关的错误,如何避免?
答:
由于进程运行时会随时被中断(包括时间片到、申请资源等),不仅断点不固定,而且中断多长时间也不固定,即进程是走走停停且它向前推进的相对速度无法由自身控制。
异步性有交往的并发进程可能会同时使用共享资源,如果对这种情况不加控制,由于进程占用处理器的时间、执行的速度和外界的影响等,就会引起与时间有关的错误。
只要使若干并发进程的相关临界区互斥执行,就可避免造成这类错误。
5、什么是PV操作,它有什么作用?
答:
PV操作能够实现对临界区的管理要求。
它由P操作原语和V操作原语组成,对信号量进行操作,具体定义如下:
P(S):
将信号量S的值减1,即S=S-1;如果S0,则该进程继续执行;否则该进程置为等待状态,排入等待队列。
V(S):
将信号量S的值加1,即S=S+1;如果S0,则该进程继续执行;否则释放队列中第一个等待信号量的进程。
6、假设PV操作用信号量管理某个共享资源,请问当S0,S=0和S0时,它们的物理意义是什么?
答:
一般来说,信号量S0时,S表示可用资源的数量。
执行一次P操作意味着请求分配一个单位资源,因此S的值减1;当S0时,表示已经没有可用资源,请求者必须等待别的进程释放该类资源,它才能运行下去。
而执行一个V操作意味着释放一个单位资源,因此S的值加1;若S0,表示有某些进程正在等待该资源,因此要唤醒一个等待状态的进程,使之运行下去。
7、什么是死锁?
死锁的四个必要条件是什么?
答:
死锁是两个或两个以上的进程中的每一个都在等待其中另一个进程释放资源而被封锁,它们都无法向前推进,称这种现象为死锁现象。
产生死锁的四个必要条件是资源互斥使用、保持和等待、非剥夺性、循环等待。
8、操作系统为什么要引入进程?
进程与程序的关系是怎样的?
答:
现代计算机系统中程序并发执行和资源共享的需要,使得系统的工作情况变得非常复杂,而程序作为机器指令集合,这一静态概念已经不能如实反映程序并发执行过程的动态性,因此,引入进程的概念来描述程序的动态执行过程。
这对于我们理解、描述和设计操作系统具有重要意义。
进程定义为程序在并发环境中的执行过程,它与程序是完全不同的概念。
主要区别是:
(1)程序是静态概念,是永久性软件资源;而进程是动态概念,是动态生亡的暂存性资源。
(2)进程是一个能独立运行的单位,能与其他进程并发执行,系统是以进程为单位分配CPU的;而程序则不能作为一个能独立运行单位。
(3)程序和进程没有一一对应关系。
一个程序在工作时可以由多个进程工作,一个进程在工作时至少对应有一个程序。
(4)各个进程在并发执行时会产生制约关系,使各自推进的速度不可预测;而程序作为静态概念,不存在这种异步特征。
进程和程序关系类似生活中的炒菜与菜谱。
菜谱相同,而各人炒出来的菜的味道却差别很大。
原因是菜谱基本上是一种静态描述,它不可能把所有执行的动态过程中,涉及的时空、环境等因素一一用指令描述清楚。
9、如何理解进程的顺序性与并发性?
答:
进程的顺序性与并发性:
1、顺序性顺序性包括两层含义:
(1)内部顺序性,对于一个进程来说,它的所有指令是按序执行的;
(2)外部顺序性,对于多个进程来说,所有进程是依次执行的。
例如,假如有P1和P2两个进程,其活动分别为:
P1活动:
A1A2A3A4P2活动:
B1B2B3B4顺序执行时,有如下两种情形:
情形1:
A1A2A3A4B1B2B3B4情形2:
B1B2B3B4A1A2A3A42、并发性并发性包括如下两层含义:
(1)内部顺序性,对于一个进程来说,它的所有指令是按序执行的;
(2)外部并发性,对于多个进程来说,所有进程是交叉执行的。
例如,对于上面P1和P2两个进程来说,并发执行有许多情形,如:
情形1:
A1B1B2A2A3B3A4B4情形2:
B1B2A1A2A3B3B4A4并发进程在其执行过程中,出现哪种交叉情形是不可预知的,这就是并发进程的不确定性,操作系统应当保证:
无论出现何种交叉情形,每个进程运行的结果都应当是唯一的,正确的。
10、什么是进程的同步与互斥?
答:
进程的同步与互斥是指进程在推进时的相互制约关系。
在多道程序系统中,由于进程合作与资源共享,这种进程间的制约称为可能。
我们把前者称为进程同步,后者称为进程互斥。
进程同步是进程间共同完成一项任务时直接发生相互作用的关系。
为进程之间的直接制约关系。
在多道环境下,这种进程间在执行次序上的协调是必不可少的。
同步进程之间的关系如同接力赛跑中的运动员,或生产流水线的每一道工序。
进程互斥是进程之间的间接制约关系。
在多道系统中,每次只允许一个进程访问的资源称为临界资源,进程互斥就是保证每次只有一个进程使用临界资源。
互斥进程之间的关系如同汽车在交叉路口争用车道,篮球比赛中双方争抢篮板球。
11、什么叫原语?
答:
在操作系统中,往往设计一些完成特定功能的、不可中断的过程,这些不可中断的过程称为原语。
如P、V操作原语。
12、什么是线程?
它与进程有什么关系?
答:
线程是进程中执行运算的最小单位,即处理机调度的基本单位。
它与进程的关系是:
一个线程只能属于一个进程,而一个进程可以有多个线程;资源分配给进程,同一进程的所有线程共享该进程的所有资源;处理机分给线程,即真正在处理机上运行的是线程;线程在运行过程中,需要协作同步,不同进程的线程间要利用消息通信的办法实现同步。
特别注意的是:
传统操作系统中的进程概念与现代操作系统中的进程概念不同简单说,传统操作系统中进程具有分配资源、调度运行两大功能,而现代操作系统中进程只作为分配资源单位,线程才作为调度运行单位。
13、试以生产者消费者问题说明进程同步问题的实质。
答:
一个生产者,一个消费者和一个产品之间关系是典型的进程同步问题。
设信号量S为仓库内产品,P-V操作配对进行缺一不可。
生产者进程将产品放入仓库后通知消费者可用;消费者进程在得知仓库有产品时取走,然后告诉生产者可继续生产。
14、用PV操作实现进程间的同步与互斥应该注意什么?
答:
用PV操作实现进程间的同步与互斥,应该注意以下四个方面:
对每一个共享资源都要设立信号量。
互斥时对一个共享资源设立一个信号量;同步时对一个共享资源可能要设立两个或多个信号量,要视由几个进程来使用该共享变量而定;互斥时信号量的初值一般为1;同步时至少有一个信号量的初值大于等于1;PV操作一定要成对调用。
互斥时在临界区前后对同一信号量作PV操作;同步时则对不同的信号量作PV操作,PV操作的位置一定要正确。
对互斥和同步混合问题,PV操作可能会嵌套,一般同步的PV操作在外,互斥的PV操作在内。
五、综合题1、某系统的进程状态转换图如下图所示,请回答:
引起各种状态转换的典型事件有哪些?
答:
1,就绪运行:
CPU空闲,就绪态进程被调度程序选中。
2,运行就绪:
正在运行的进程用完了本次分配给它的CPU时间片。
3,运行阻塞:
运行态进程因某种条件未满足而放弃对CPU的占用,如等待读文件。
4,阻塞就绪:
阻塞态进程所等待的事件发生了,例如读数据的操作完成。
当我们观察系统中某些进程时,能够看到某一进程产生的一次状态转换能引起另一个进程作一次状态转换。
在什么情况下,当一个进程发生转换3时,能立即引起另一进程发生转换1?
试说明是否会发生这些因果转换:
21;32;41。
答:
21:
可以。
运行进程用完了本次分配给它的时间片,让出CPU,从就绪队列中选一个进程投入运行。
32:
不可以。
任何时候一个进程只能处于一种状态,它既然由运行态变为阻塞态,就不能再变为就绪态。
41:
可以。
某一阻塞态进程等待的事件出现了,而且此时就绪队列为空,该进程进入就绪队列后马上又被调度运行。
2、某分时系统的进程出现如上图所示的状态变化。
试问你认为该系统采用的是何种进程调度算法?
答:
该分时系统采用的进程调度算法是时间片轮转法。
把图中所示的每一个状态变化的原因填写在下表中。
变化原因进程被选中,变成运行态时间片到,运行的进程排入就绪队列尾部运行的进程启动打印机,等待打印打印工作结束,等待的进程排入就绪队列尾部等待磁盘读文件工作磁盘传输信息结束,等待的进程排入就绪队列尾部3、四个进程A、B、C、D都要读一个共享文件F,系统允许多个进程同时读文件F。
但限制是进程A和进程C不能同时读文件F,进程B和进程D也不能同时读文件F。
为了使这四个进程并发执行时能按系统要求使用文件,现用PV操作进行管理,请回答下面的问题:
如何定义信号量及初值;答:
两个信号量m和s,s和m的初值均为1。
在下列的程序中填上适当的P、V操作,以保证它们能正确并发工作:
进程A进程B进程C进程D1357readFreadFreadFreadF2468答:
进程A进程B进程C进程DP(m)P(s)P(m)P(s)readFreadFreadFreadFV(m)V(s)V(m)V(s)4、判断下面的同步问题的算法是否正确?
若有错,请指出错误原因并予以改正。
设A、B两进程共用一个缓冲区Q,A向Q写入信息,B则从Q读出信息,算法框图如图所示。
设A、B为两个并发进程,它们共享一临界资源。
其运行临界区的算法框图如图所示。
答:
这个算法不对。
因为A、B两进程共用一个缓冲区Q,如果A先运行,且信息数量足够多,那么缓冲区Q中的信息就会发生后面的冲掉前面的,造成信息丢失,B就不能从Q中读出完整的信息。
进行改正:
A、B两进程要同步使用缓冲区Q。
为此,设立两个信号量:
empty表示缓冲区Q为空,初值为1;full表示缓冲区Q为满,初值为0。
算法框图如图所示。
A进程B进程P(empty)P(full)向Q写入信息从Q中读出信息V(full)V(empty)5、设有一台计算机,有两条I/O通道,分别接一台输入机和一台打印机。
输入机把一批数据逐一输入到缓冲区B1中,加工处理后再搬到B2中,并在打印机上打印,请问:
系统要设几个进程来完成这个任务?
各自的工作是什么?
这些进程间有什么样的相互制约关系?
用P、V操作写出这些进程同步算法。
答:
(1)系统可设三个进程来完成这个任务:
R进程负责从卡片输入机上读入卡片信息,输入到缓冲区B1中;C进程负责从缓冲区B1中取出信息,进行加工处理,之后将结果送到缓冲区B2中;P进程负责从缓冲区B2中取出信息,并在打印机上印出。
R进程受