第2章进程管理(part5).pptVIP

  • 9
  • 0
  • 约1.12万字
  • 约 36页
  • 2017-07-16 发布于四川
  • 举报
* 读者: while (true) { P(w); P (readcount); V(w); 读 V(readcount); }; 写者: while (true) { P(w); for i:=1 to n do P(readcount); 写 for i:=1 to n do V(readcount); V(w); }; 第二类读写问题(解法2) 设2个信号量: W是读者和写者公用的互斥变量,用来互斥读写或者写写同时进行,初值为1 Readcount用来记录当前有多少个读者在访问数据,初值n * 信号量集 2. 利用信号量集机制解决读者-写者问题   在记录型信号量机制中,wait(S)或signal(S)操作仅能对信号量施以加1或减1操作,意味着每次只能获得或释放一个单位的临界资源。而当一次需要N个某类临界资源时,便要进行N次wait(S)操作,显然这是低效的。 此外,在有些情况下,当资源数量低于某一下限值时,便不予以分配。因而,在每次分配之前,都必须测试该资源的数量,看其是否大于其下限值。 基于上述两点,可以对AND信号量机制加以扩充,形成一般化的“信

文档评论(0)

1亿VIP精品文档

相关文档