何谓死锁?产生死锁的原因和必要条件是什么?
答:所谓死锁,是指多个进程因竞争资源而造成的一种僵局,若无外力作用,这些进程都将永远不能再向前推进。 产生死锁的原因: (1)竞争资源,当系统中供多个进程所共享的资源,不足以同时满足它们的需要时,引起它们对资源的竞争而产生死锁; (2)进程推进顺序非法,进程在运行过程中,请求和释放资源的顺序不当,导致进程死锁。 产生死锁的必要条件: (2)互斥条件 进程对所分配到的资源进行排他性使用。如果此时还有其他进程请求该资源,请求者只能阻塞,直到占有该资源的进程释放该资源。 (2)请求和保持条件 进程已经保持了至少一个资源,但又提出了新的资源要求,而该资源又已被其他进程占有,此时请求进程阻塞,但请求进程又对已经获得的其他资源保持不放。 (3)不剥夺条件 进程已获得的资源,在未使用完之前,不能被剥夺,只能在使用完后由自己释放。 (4)环路等待条件 在发生死锁时,必然存在一个进程——资源的环形链。【解析】第三章 难易度:中
继续答题:下一题
更多操作系统原理试题
- 1实现后台打印时,SPOOLing系统中的输出进程,只为请求I/O的进程做两件事:(1)为之在输出井中申请一①,并将②送入其中;(2)为用户进程申请一张_③,并将_④_填入表中,再将该表排在⑤队列中。
- 2下列磁盘调度算法中,平均寻道时间较短,但容易产生饥饿现象的是(A);电梯调度算法是指(B);能避免磁臂粘着现象的算法是(C)。 A,B,C:(1) SSTF;(2)FCFS:(3)SCAN;(4)CSCAN;(5) FSCAN。
- 3在分时操作系统环境下运行的作业通常称为( )。
- 4在某系统中,从磁盘将一块数据输入到缓冲区需要花费的时间为T,CPU对一块数据进行处理的时间为C,将缓冲区的数据传送到用户区所花时间为M,那么在单缓冲和双缓冲情况下,系统处理大量数据时,一块数据的处理时间为多少?
- 5何为用户级线程和内核支持线程?
- 6进程的实质是程序的一次执行,所以进程有( )的基本特征,该特征还表现在进程由( )而产生,由( )而执行,由( )而消亡,即进程具有一定的生命期。