问答题假定计算机系统有R1设备3台,R2设备4台,它们被P1、P2、P3和P4这4个进程所共享,且已知这4个进程均以下面所示的顺序使用现有设备。
→申请R1→申请R2→申请R1→释放R1→释放R2→释放R1→假定当前处于非抢占调度策略,进程只有两种方式可以放弃CPU:一个是主动调用系统调度函数sysnc(),此时进程主动放弃CPU;另一个方式是当进程执行I/O操作时,系统将调度下一个进程。试分析以下3种进程对,何时会出现不符合下列原则,并说明原因:
1)空闲则入。
2)有限等待。
3)保证互斥。
第一种:
Thread1(){
sysnc();
----critical section----
g=g+b;
f=g-a;
----critical section----
}
Thread2(){
----critical section----
g=g+b;
f=g-a;
----critical section----
}
第二种:
Thread1(){
sysnc();
----critical section----
g=g+b;
f=g-a;
----critical section----
}
Thread2(){
----critical section----
g=g+b;
f=g-a;
----critical section----
sysnc();
}
第三种:
Thread1(){
sysnc();
----critical section----
g=g+b;
fstring=printf(…); //调用I/O
f=g-a;
----critical section----
}
Thread2(){
sysnc();
----critical section----
g=g+b;
f=g-a;
----critical section----
}
本文发布于:2024-01-30 14:30:42,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/170659624520671.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |