【精品】c操作系统专题信号量基本概念题
- 格式:pdf
- 大小:942.28 KB
- 文档页数:8
操作系统试题及答案一、选择题1、操作系统的主要功能是管理计算机系统中的()。
A.程序库 B.数据 C.文件 D.资源2、在操作系统中,()是竞争和分配计算机系统资源的基本单位。
A.程序 B.进程 C.作业 D.用户3、在操作系统中,并发性是指若干个事件()发生。
A,在同一时刻 B。
一定在不同时刻C.某一时间间隔内 D。
依次在不同时间间隔内4、产生死锁的基本原因是()和进程推进顺序非法。
A.资源分配不当B.系统资源不足C.作业调度不当D.进程调度不当5、文件系统采用多级目录结构的目的是()A.系统开销B.节省存储空间C.解决命名冲突D.缩短传送时间6、位示图方法可用于()A.盘空间的管理 B.盘的驱动调度C.文件目录的查找 D.页式虚拟存储管理中的页面调度7、下列算法中用于磁盘移臂调度的是( )A.时间片轮转法B. LRU算法C.最短寻找时间优先算法D.优先级高者优先算法8、存放在磁盘上的文件,()。
A.即可随机访问,又可顺序访问 B。
只能随机访问C.只能顺序访问 D。
只能读/写不能访问9、一作业8:00到达系统,估计运行时间为1小时,若10:00开始执行该作业,其响应比是()A.2 B.1 C.3 D.0.510、进程和程序的本质区别是()。
A.内存和外存 B。
动态和静态特征C。
共享和独占使用计算机资源D。
顺序和非顺序执行机器指令11、对于硬盘上存放的信息,物理上读写的最小单位是一个()。
A.二进位 B。
字节 C。
物理块 D。
逻辑记录12、多道程序设计是指()A.在实时系统中并发运行多个程序B.在分布系统中同一时刻运行多个程序C.在一台处理机上同一时刻运行多个程序D.在一台处理机上并发运行多个程序13、进程从运行状态进入就绪状态的原因可能是()A.被选中占有处理机 B.等待某一事件C.等待的事件已发生 D.时间片用完14、由于系统无法预先知道一个作业未来访问页面的情况,所以()在实际上是无法实现的。
操作系统(三)——信号量、死锁1、信号量信号量机制:概念:其实就是⼀个变量,可以⽤⼀个信号量来表⽰系统中某种资源的数量、⽤户进程通过使⽤操作系统提供的⼀对原语来对信号量进⾏操作,从⽽⽅便的实现了进程互斥。
这⾥的⼀对原语是指wait(S)和signal(S),也简写为P(S)和V(S),即申请和释放资源。
P、V操作必须成对出现。
整数型信号量:⽤⼀个整数作为信号量,数值表⽰某种资源数。
对信号量的操作只有三种:初始化、P操作、V操作。
不满⾜让权等待原则。
记录型信号量:S.value表⽰某种资源数,S.L指向等待该资源的队列。
P操作中,先S.value++,之后可能执⾏block阻塞原语。
V操作中,先S.value--,之后可能执⾏wakeup唤醒原语。
可以⽤记录型信号量实现系统资源的申请和释放,申请S.value--,然后如果S.value<0说明资源分配完了,就阻塞;释放S.value++,然后如果S.value<=0说明还有进程在等待队列中等待,就唤醒。
记录型信号量可以实现进程互斥、进程同步。
实现进程互斥:划定临界区。
设置互斥信号量mytex,初值为1。
在临界区之前执⾏P(mutex),在临界区之后执⾏V(mutex)。
实现进程同步:分析那些地⽅是必须保证⼀前⼀后执⾏的两个操作。
设置同步信号量S,初始值为0。
在“前操作”之后执⾏V(S)。
在“后操作”之前执⾏P(S)。
实现前驱关系:每⼀对前驱关系都是⼀个进程同步问题。
为每⼀对前驱关系设置⼀个同步变量,初始值为0。
在“前操作”之后执⾏V操作。
在“后操作”之前执⾏P操作。
⽣产者消费者问题:⽣产者每次⽣产⼀个产品放⼊缓冲区,消费者每次从缓冲区取出⼀个产品使⽤。
缓冲区满⽣产者必须等待(同步关系1),缓冲区空消费者必须等待(同步关系2)。
缓冲区是临界资源,必须被互斥访问(互斥关系)。
问题中的P、V操作:⽣产者每次P⼀个缓冲区,V⼀个产品。
消费者每次V⼀个缓冲区,P⼀个产品。
操作系统信号量例题信号量是操作系统中用于同步和互斥的一种机制。
它可以用于进程间的通信和资源的管理。
下面我将从多个角度来回答关于操作系统信号量的例题。
1. 什么是信号量?信号量是一个整数变量,用于控制对共享资源的访问。
它可以是二进制信号量(取值为0或1)或计数信号量(取值大于等于0)。
二进制信号量用于互斥访问共享资源,计数信号量用于控制资源的数量。
2. 信号量的基本操作有哪些?常见的信号量操作有P操作(等待操作)和V操作(发送操作)。
P操作用于申请资源,如果资源不可用,则进程将被阻塞。
V操作用于释放资源,使得其他等待资源的进程可以继续执行。
3. 请举个例子说明信号量的使用场景。
假设有一个共享资源,比如打印机,多个进程需要使用它。
为了避免冲突,可以使用信号量来进行控制。
当一个进程要使用打印机时,它需要执行P操作来申请打印机资源,如果打印机正在被其他进程使用,则该进程将被阻塞。
当打印机空闲时,进程执行V操作释放打印机资源,其他等待资源的进程可以继续执行。
4. 信号量如何实现互斥?互斥是指只允许一个进程访问共享资源。
可以使用二进制信号量来实现互斥。
当一个进程要访问共享资源时,它执行P操作申请资源,如果资源已经被其他进程占用(信号量的值为0),则该进程被阻塞。
当资源被释放时,执行V操作使得等待资源的进程可以继续执行。
5. 信号量如何实现同步?同步是指多个进程按照一定的顺序执行。
可以使用计数信号量来实现同步。
例如,有两个进程A和B,进程A需要等待进程B完成某个操作后才能继续执行。
可以使用一个计数信号量来控制,初始值为0。
进程A执行P操作等待信号量,进程B完成操作后执行V 操作释放信号量,进程A才能继续执行。
6. 信号量的优缺点是什么?信号量的优点是可以实现进程间的同步和互斥,避免竞态条件和资源冲突。
它是一种简单而有效的机制。
然而,信号量也存在一些缺点。
例如,信号量的使用需要谨慎,如果使用不当可能导致死锁或活锁的发生。
第一部分:信号量基本概念1 What is the meaning of the term busy waiting? What other kinds of waiting are there in an operating system? Can busy waiting be avoided altogether? Explain your answer.答:忙等是整形信号量固有的问题。
当一个进程无法进入临界区时,仍然在就绪队列中,也可能占有CPU,浪费了CPU时间。
整形信号量也称自旋锁,有时在多处理器系统中也有用。
操作系统中其它种类的等待还有进程在等待队列中等待I/O完成、记录型信号量的阻塞式等待。
但这些等待不是“忙等”,因为他们在等待队列中,不可能占CPU。
采用了记录型信号量后,消除了“忙等”2 Show that, if the wait and signal operations are not executed atomically, then mutual exclusion may be violated答:假如信号量为S,P/V操作是两个并发的进程(或线程)。
这时可以看到:S既是信号量,也是P/V操作的共享变量!如果P/V操作不是原子的,那么P修改S 期间V操作可能插入,反之亦然。
这可能会使S的值出现错误。
3. 何谓与时间有关的错误 ? 举例说明之。
答:多个并发进程竟争使用同一个共享变量,可能会造成共享变量的值出错,这种错误与进程推进的时间有关。
这种错误不是必然会发生的,有很大偶然性。
一旦发生很难检侧出来,是并发程序设计的一个重大问题。
教材P48-48演示了这种错误,但没有明确指出这是“与时间有关的错误”4.试分析临界区的大小与系统并发性之间的关系。
答:关于同一组变量的临界区域是不能并发执行的代码(只能串行执行),临界区越大,并发性越差,因而编写并发程序应尽量减小临界区域的大小和执行时间。
1【单选题】用P、V操作管理临界区时,互斥信号量的初值应定义为( A)。
•A,1•B,0•C,-1•D,任意值2【单选题】在操作系统中,对信号量S的P原语操作定义中,使进程进入相应等待队列等待的条件是( )。
•A,S>0•B,S = 0•C,S<0•D,S<>0我的答案:C3【单选题】信号量S的初值为8,在S上执行了10次wait 操作,6次signal操作后,S的值为(D )。
•A,10•B,8•C,6•D,4P操作每执行一次,信号量减1;V操作每执行一次,信号量加1.所以答案为8-10+6 = 44【单选题】用V操作唤醒一个等待进程时,被唤醒进程的状态应变成( B)状态。
•A,执行•B,就绪•C,阻塞•D,挂起被唤醒的进程由等待状态变为就绪状态。
5【单选题】利用Wait和signal操作可以( )。
•A,实现进程互斥和同步•B,检测死锁•C,解除死锁•D,防止死锁我的答案:A6【单选题】两个并发进程,设互斥信号量mutex(初值为1),若信号量=0;则(B )•A,表示没有进程进入临界区•B,表示有一个进程进入临界区•C,表示有一个进程进入临界区,另一个进程等待进入•D,表示两个进程进入临界区临界区不允许两个进程同时进入,D选项明显错误。
mutex初值为1,表示允许一个进程进入临界区,当有一个进程进入临界区且没有进程等待进入时,mutex值减1,变为0。
7【单选题】V操作是对信号量执行加1操作,意味着释放一个单位资源,加1后如果信号量的值等于零,则从等待队列中唤醒一个进程,现进程变为等待状态,否则现进程继续进行。
•A,对•B,错我的答案:B8【单选题】有3个进程,两台打印机,用wait和sigual操作来实现互斥访问打印机,则信号量S的取值范围是( )•A,2,1,0,-1•B,3,2,1,0•C,2,1,0,-1,-2•D,1,0,-1,-2我的答案:如果n个进程共享两个打印机,信号量取值范围:-(n-2)~2;9【单选题】设与某资源相关的资源信号量K,初值为3,当前值为1,则可用资源个数为( ),等待资源的进程数为( )。
【关键字】精品第一章1. 操作系统的主要作用是()A 管理设备B 提供操作命令C 管理文件D 为用户提供使用计算机的接口,管理计算机的资源2. 对外部输入的信息能在规定时限内处理完毕并作出迅速反应的操作系统称为()A 分时操作系统B 批处理操作系统C 实时操作系统D 多处理机操作系统3. 操作系统的基本特征是、、、。
4. 什么是操作系统?第二章1 . 苹果桔子问题桌上有一只盘子,每次只能存放一个水果。
一家四口人各行其职,爸爸专向盘子中放苹果(apple),妈妈专向盘子中放桔子(orange),儿子专等吃盘子中的桔子,女儿专等吃盘子里的苹果。
请用PV操作来实现四人之间的同步算法。
2. 和尚取水问题寺庙里有老小和尚若干和一水缸,小和尚打水,老和尚饮水。
水缸容积为10桶水,水取自同一水井,每次只容一个桶打水,桶的总数为3个,每次往水缸倒水和从水缸取水仅为一桶。
3.有一座东西方向的独木桥,用P,V操作实现:(1)每次只允许一个人过桥;(2)当独木桥上有行人时,同方向的行人可以连续过桥,相反方向的人必须等待。
(3)当某一方向无人过桥时,另一方向的行人可以过桥。
4.上图描述的生产者-消费者问题中,如果其缓冲区部分为n个长度相等的有界缓冲区组成,且每次传输数据长度等于有界缓冲区长度以及生产者和消费者可对缓冲区同时操作。
试重新描述生产过程和消费过程。
5. 若信号量的初值为2,当前值为-3,则表示有()等待进程。
A 1个B 2个C 3个D 5个6. 在操作系统中,()是竞争和分配计算机系统资源的基本单位。
A 程序B 进程C 作业D 用户7. 下面哪一个不会引起进程创建()A 用户登录B 作业调度C 设备分配D 应用请求8. 进程和程序的本质区别是()A 内存和外存B 动态和静态特征C共享和独占使用计算机资源D顺序和非顺序执行机器指令9. 在多进程的系统中,为了保证公共变量的完整性,各进程应互斥进入临界区。
所谓临界区是()A 一个缓冲区B 一个数据区C 一种同步机构D 一段程序10. 在一辆公共汽车上,司机和售票员各行其职,司机负责开车和到站停车,售票员负责售票和开、关门,当售票员关好车门后,驾驶员才能继续开车行驶。
(一)图书馆有100个座位,每位进入图书馆的读者要在登记表上登记,退出时要在登记表上注销。
要几个程序?有多少个进程?(答:一个程序;为每个读者设一个进程)(1)当图书馆中没有座位时,后到的读者在图书馆为等待(阻塞)(2)当图书馆中没有座位时,后到的读者不等待,立即回家。
解(1 )设信号量:S=100; MUTEX=1P(S)P(MUTEX)登记V(MUTEX)阅读P(MUTEX)注销V(MUTEX)V(S)解(2)设整型变量COUNT=100; 信号量:MUTEX=1;P(MUTEX);IF (COUNT==0){ V(MUTEX);RETURN;}COUNT=COUNT-1;登记V(MUTEX);阅读P(MUTEX);COUNT=COUNT+1;V(MUTEX);RETURN;(二)有一座东西方向的独木桥;用P,V操作实现:(1)每次只允许一个人过桥;(2)当独木桥上有行人时,同方向的行人可以同时过桥,相反方向的人必须等待。
(3)当独木桥上有自东向西的行人时,同方向的行人可以同时过桥,从西向东的方向,只允许一个人单独过桥。
(此问题和读者与写者问题相同,东向西的为读者,西向东的为写者)。
(1)解设信号量MUTEX=1P (MUTEX)过桥V (MUTEX)(2)解设信号量:MUTEX=1 (东西方互斥)MD=1 (东向西使用计数变量互斥)设整型变量:CD=0 (东向西的已上桥人数) CX=0 (西向东的已上桥人数)从东向西:P (MD)IF (CD=0){P (MUTEX) }CD=CD+1V (MD)过桥P (MD)CD=CD-1IF (CD=0){V (MUTEX) }V (MD)从西向东:P (MX){P (MUTEX) }CX=CX+1V (MX)过桥P (MX)CX=CX-1IF (CX=0){V (MUTEX) }V (MX)(3) 解:从东向西的,和(2)相同;从西向东的和(1)相同。
一、判断题(×)1、分时系统中,时间片设置得越小,则平均响应时间越短。
(√)2、多个进程可以对应于同一个程序,且一个进程也可能会执行多个进程。
(×)3、一个进程的状态发生变化总会引起其它一些进程的状态发生变化。
(×)4、在引入线程的OS中,线程是资源分配和调度的基本单位。
(√)5、信号量的初值不能为负数。
(×)6、最佳适应算法比首次适应算法具有更好的内存利用率。
(×)7、为提高对换空间的利用率,一般对其使用离散的分配方式。
(×)8、设备独立性是指系统具有使用不同设备的能力。
(√)9、隐士链接结构可以提高文件存储空间的利用率,但不适合文件的随机存取。
(×)10、访问控制矩阵比访问控制表更节约空间。
(×)11、分时系统在响应时间、可靠性及交互作用能力等方面一般都比分时系统要求高。
(√)12、Window XP是一个多用户、多任务的操作系统。
(×)13、一个进程正在临界区中间执行时不能被中断。
(×)14、系统处于不安全状态必然导致系统死锁。
(√)15、请求分段存储管理中,分段的尺寸要受存储空间的限制。
(√)16、属于同一个进程的多个线程可共享进程的程序段、数据段。
(×)17、设备的独立性是指每类设备有自己的设备驱动程序。
(×)18、虚拟设备是指允许用户使用比系统中具有的物理设备更多的设备。
(√)19、对物理文件来说,顺序文件必须采用连续分配方式,而链接文件和索引文件可采用离散分配方式。
(×)20、在UNIX文件系统中,文件的路径和磁盘索引节点之间是一一对应的。
(×)21、在分时系统中,为使多个用户能够同时与系统交互,最关键的问题是系统能及时连接多个用户的输入。
(×)22、在进程对应的代码中使用wait、signal操作后,可以防止系统发生死锁。
(√)23、在只提供用户级线程的多处理机系统中,一个进程最多仍只能获得一个CPU。
《操作系统》考试练习题及参考答案一、单选题1. 在下列存储管理方案中,不适用于多道程序设计的是()。
A 、单一连续分配B 、固定式分区分配C 、可变式分区分配D 、段页式存储管理答案:A2. 若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许()个进程参于竞争,而不会发生死锁。
A 、5B 、2C 、3D 、4答案:D3. 主要由于()原因,使UNIX易于移植。
A 、UNIX是由机器指令书写的B 、UNIX大部分由汇编少部分用C语言编写C 、UNIX是用汇编语言编写的D 、UNIX小部分由汇编大部分用C语言编写答案:D4. 一个计算机系统有7台可互换的磁带机供N个进程竞争使用。
每个进程在一段时间内需要占用2台磁带机。
N最多为()不会发生死锁。
A 、5B 、12C 、6D 、2答案:C5. 虚拟设备是指()。
A 、允许用户使用比系统中具有的物理设备更多的设备B 、允许用户以标准化方式来使用物理设备C 、把一个物理设备变换成多个对应的逻辑设备D 、允许用户程序不必全部装入主存便可使用系统中的设备答案:C6. 位示图方法可用于( )A 、盘空间的管理B 、盘的驱动调度C 、文件目录的查找D 、页式虚拟存储管理中的页面调度答案:A7. 任何两个并发进程之间( )A 、一定存在互斥关系B 、一定存在同步关系C 、一定彼此独立无关D 、可能存在同步或互斥关系答案:D8. 在UNIX系统中,请求调用是采用()算法。
A 、LFUB 、FIFOC 、LRUD 、LIFO答案:C9. ()存储器管理方法可能使系统产生抖动。
A 、简单页式B 、请求页式C 、段式D 、可变连续分区答案:B10. 某系统采用固定分区分配存储管理,内存空间为640K,其中地址0到40K被系统占用,其他空间按分区大小相等的方法划为4个分区,则当有大小分别为7KB 、90KB 、30KB 、20KB的作业进入内存时,浪费的内存为()。
《操作系统》试题库3.(__)是操作系统提供的一种接口,为用户提供了一整套操作和使用文件的方法,其中最重要的功能是实现按文件名存取。
A.文件系统B.光盘系统C.磁盘系统D.存储系统二、判断题1.CPU和通道的关系是主从关系,CPU是主设备,通道是从设备。
2.Linux操作系统属于多用户多任务操作系统。
3.LRU页面淘汰算法会出现Belady异常现象。
4.LRU页面调度算法总是选择在主存中驻留时间最长的页面淘汰。
5.P、V操作是可以被中断的原语操作。
6.SPOOLing系统由专门负责I/O的的进程以及输入、输出井组成。
7.UNIX的最大特点是分时、多用户、多任务和倒树型文件结构。
8.按优先数调度算法,处于运行状态的进程的优先级是所有进程中最高的。
9.按最先适应算法分配的分区与作业要求的存储容量最接近。
10.并发性是指若干个事件在不同时刻发生。
11.并发性是指若干个事件在一定的时间段内交替发生。
12.不同的进程必然对应于不同的程序13.采用分页存储技术可以将逻辑上独立的代码装入一段连续的物理内存。
14.采用静态资源分配方法可以预防死锁的发生。
15.操作系统“生成”是指能产生最适合用户自己工作环境的操作系统内核。
16.操作系统对系统的资源的利用率越高,用户越满意。
17.操作系统是一种工具软件。
18.操作系统中的缓冲池主要是通过硬件来实现的。
19.操作系统中用于创建子进程的原语是在用户态下完成的。
20.程序的并发执行必然导致资源共享和资源竞争。
21.磁盘上的文件必须以记录单位进行读写。
22.磁盘上的文件都是以记录单位进行读写的。
23.磁盘上的文件以记录单位读写。
24.磁盘是共享设备,多个进程可在同一时刻对其访问。
25.磁盘是共享设备,每一个时刻可以有多个进程与磁盘交换信息。
26.磁盘移臂调度的目标是使磁盘的旋转周数尽可能小。
27.当进程数大于资源数时,进程竞争资源必然产生死锁。
28.当调度紧急或重要进程时,应采用FCFS调度算法。