OS8(管程通信线程).pptVIP

  • 7
  • 0
  • 约8.65千字
  • 约 34页
  • 2017-05-30 发布于北京
  • 举报
3.3.4 管程 ( P55) 1、管程的基本概念 2、利用管程解决PC问题 3、管程和进程的异同点 1、管程的概念 1)管程的引入 互斥手段(测试和设置命令,P,V操作)的不足: 由用户编写控制代码:加重了用户负担! P,V操作分散在用户程序中,系统无法有效地控制和管理; 用户编程时若使用P,V操作不当,后果严重(死锁) 基于以上情况,1971年DIjkstra提出了秘书“进程”机制。1973年Hansan和Hoare又将“秘书”进程思想发展为“管程”概念,把并发进程间的同步操作分别集中在相应的管程中。 2)管程概念 管程由若干公共变量及其说明和所有访问这些变量的过程组成. 管程把分散在各个进程中互斥地访问公共变量的那些临界区集中起来管理,管程的局部变量只能由该管程的过程存取. 进程只能互斥地调用管程中的过程 管程基本形式: (P56 管程由三部分构成) 3)条件变量 在管程机制中,引起进程等待的原因可能很多,为了区别他们,又引入了条件变量condition。 管程中对每个条件变量的说明形式为:Var x, y:condition。 X.wait:表示由于某种资源被占用而等待; X.signal:重新启动一个被阻塞的进程 问题: 当一个进入管程的进程执行等待操作时,它应当释放管程的互斥权;当一个进入管程的进程执行唤醒操作时(如P唤醒Q),管程中便存在两个同时处于活动

文档评论(0)

1亿VIP精品文档

相关文档