3 进程间通信.pptVIP

  • 1
  • 0
  • 约8.67千字
  • 约 46页
  • 2018-06-19 发布于广东
  • 举报
3 进程间通信.ppt

回顾 进程的结构、类型 以多种方法启动新进程 父进程、子进程、僵进程 什么是信号以及如何使用它们 本章目标 信号量 消息队列 共享内存 信号量 Dijkstra提出的“信号量”概念是共发程序设计领域的一项重大进步 信号量是一种变量,它只能取正整数值,对这些正整数只能进行两种操作:等待和信号 用两种记号来表示信号量的这两种操作: P(semaphore variable) 代表等待 V(semaphore variable) 代表信号 信号量的分类 最简单的信号量是一个只能取“0”和“1”值的变量,也就是人们常说的“二进制信号量” 可以取多种正整数值的信号量叫做“通用信号量” pv操作的定义 假设我们有一个信号量变量sv,则pv操作的 定义如下 P(sv):如果sv的值大于零,就给它减去1;如果sv的值等于零,就挂起该进程的执行 V(sv): 如果有其他进程因等待sv变量而被挂起,就让它恢复执行;如果没有进程因等待sv变量而被挂起,就给它加1 pv操作工作情况(2-1) pv操作工作情况(2-2) 两个进程共享着sv信号量变量。如果其中之一执行了P(sv)操作,就等于它得到了信号量,也就能够进入关键代码部分了。 第二个进程将无法进入关键代码,因为当它尝试执行P(sv)操作的时候,它会被挂起等待一个进程离开关键代码并执行V(sv)操作释放这个信号量 信号量函数 每一个信号量函数都能

文档评论(0)

1亿VIP精品文档

相关文档