摘要: 问题描述 问题分析 如何实现 生产者进程在把产品放入缓冲区之前,需要检查是否有空闲缓冲区,执行P(empty)消耗一个空闲缓冲区; 当生产者把产品放入缓冲区之后,对产品数量信号量执行V(full)操作,增加一个产品。 消费者进程需要先检查是产品数量,执行P(full)消耗一个产品(或是非空缓冲区); 阅读全文
posted @ 2021-08-01 17:09 毋纵年华 阅读(299) 评论(0) 推荐(0)
摘要: 信号量机制实现进程互斥 注意:对不同的临界资源需要设置不同的互斥信号量 信号量实现进程同步 信号量机制实现前驱关系 注意在进程在阻塞态时,挂载到不同信号量对应的等待队列当中 阅读全文
posted @ 2021-08-01 16:05 毋纵年华 阅读(176) 评论(0) 推荐(0)
摘要: 信号量机制 wait原语(P)、signal原语(V) 信号量机制 —— 整型信号量 信号量机制 —— 记录型信号量 等待队列(struct process *L)、 阻塞原语(block) 注意动画分析过程中,value值的变化 阅读全文
posted @ 2021-08-01 12:39 毋纵年华 阅读(64) 评论(0) 推荐(0)
摘要: 中断屏蔽方法 TestAndSetLock指令 注意:TSL指令是由硬件实现的,下面只是用C语言描述逻辑过程(在实际硬件执行过程中,lock值被储存在物理寄存器中) Swap指令 阅读全文
posted @ 2021-08-01 11:15 毋纵年华 阅读(167) 评论(0) 推荐(0)