操作系统 信号量习题--实例(对上次笔记“经典同步问题”*补充)

本文探讨了操作系统中的进程概念、PCB的作用,重点解析了读者写者问题、黑白棋问题和嗜睡理发师问题。通过信号量解决同步问题,如在读者写者问题中引入写者优先策略,确保写者的优先权;在黑白棋问题中因初始值无法设定固定导致的挑战;以及在嗜睡理发师问题中如何通过信号量和状态控制实现理发师与顾客的有序交互。
摘要由CSDN通过智能技术生成

课前问题

1.什么是进程?
答:进程是进程实体的运行过程,是系统进行资源的分配与调度的一个单位。(进程实体=数据段+程序段+PCB)

2.理解PCB的作用?
答:进程控制块PCB,它是为了管理计算机中的进程而产生的,它是进程实体的一部分,用于描述进程的当前状况以及进程运行的信息。
系统通过PCB来感知进程的存在,对于中断来说,他可以保护现场,以及恢复现场都要用到PCB;PCB中保存了进程的状态信息,协助进程调度。

3.什么是同步?
答:多个相互合作的进程,在一些关键点上可能需要互相等待或互相交换信息,这种相互制约关系称为进程的同步关系,可以理解为有序

读者写者问题

写者优先方式

分析
读者有限的关键:
若读者先占有互斥信号量,只有当最后一个读者离开,计数降为0时才释放信号量,导致写者弱势

反之写者优先则是,写者先占有某信号量后,直到最后一个写完才释放信号量,读者才能进入

增加一个互斥信号量S,读者和写者都争抢该信号;
对写者也进行计数,第1个写者申请S,其他写者不需要申请S;最后一个写者离开时才释放信号量S.
一旦写者先申请到了S,则所有的读者只能等待写者都走完才可进入共享读。而多个写者通过S后,仍要争抢wmutex信号以完成互斥的写入。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值