用信号量机制实现进程互斥、同步、前驱关系
信号量机制实现进程互斥
分析并发进程的关键活动,划定临界区(如:对临界资源打印机的访问就应放在临界区)
设置互斥信号量mutex,初值为1
在临界区之前执行
P(mutex)
在临界区之后执行
V(mutex)
信号量机制实现进程同步
分析什么地方需要实现“同步关系”,即必须保证“一前一后”执行的两个操作(或两句代码)
设置同步信号量S,初始为0
在“前操作”之后执行V(S)
在“后操作”之前执行P(S)
信号量机制实现前驱关系
要为每一对前驱关系各设置一个同步变量
在“前操作”之后对相应的同步变量执行V操作
在“后操作”之前对相应的同步变量执行P操作
最后更新于