(简答题)
假设三个进程共享四个资源,每个进程一次只能预定或释放一个资源,每个进程最多需要两个资源,试证明这样做不会发生死锁。
正确答案
在最坏情况下,三个进程各占用一个资源,并同时请求第二个资源。由于系统中还有一个未用的资源,所以三个进程中的一个可以被满足。另外两个进程在这个进程结束以后可以获取需要的资源,然后继续执行。因此,不会出现死锁。
答案解析
略
相似试题
(简答题)
有相同类型的5个资源被4个进程所共享,且每个进程最多需要2个这样的资源就可以运行完毕。试问该系统是否会由于对这种资源的竞争而产生死锁。
(简答题)
系统有同类资源m个,被n个进程共享,问:当m>n和m≤n时,每个进程最多可以请求多少个这类资源时,使系统一定不会发生死锁?
(单选题)
若信号量S的初值为2,且有三个进程共享此信号量,则S的取值范围是()。
(简答题)
试从调度、并发性、拥有资源和系统开销四个方面对传统进程和线程进行比较。
(单选题)
若系统中有五台绘图仪,有多个进程均需要使用两台,规定每个进程一次仅允许申请一台,则至多允许()个进程参于竞争,而不会发生死锁。
(单选题)
若系统有三个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是()。
(简答题)
考虑由n个进程共享的具有m个同类资源的系统,证明:如果对i=1,2,…,n,有Need>0而且所有最大需求量之和小于m+n,那么该系统是死锁无关的。
(单选题)
一般来说,在多个并发线程正在执行的时候,如果有一个新的请求到来,Servlet容器将构造Servlet的一个实例,为每个用户请求建立一个新进程,这意味着,多个线程可能同时访问一些共享数据。如果要阻止这种多线程的访问,可以使Servlet实现哪个接口?()
(简答题)
在一个系统中,若进程之间除了信号量之外不能共享任何变量,进程之间能互相通信吗?