操作系统-进程PV操作

进程是为了完成一项任务,执行一段程式代码,以及为完成这个任务而调用系统的一些资源如cpu、内存等资源,是独立存在的,与其它进程不能共享数据,而线程与进程很相似,颗粒度更小,在进程范围内着重关注cpu的运行状况。

一、进程的PV同步互斥操作:

P:主要特点 阻塞进程,如不需要阻塞那么就继续执行进程,通过P结合信号量,如P(S1), S1++,
S1<0那么就阻塞经常,否则继续执行进程。如S1初始值是1, P(S1)后,S1=S1-1 = -1,这时候就阻塞进程,1表示当前有一个进程正在执行,后续动作阻塞挂起,等待激活,如何进行激活,需要通过V进行控制,

V:主要特点,激活进程,但程序运行到V的时候,判断是否有激活的进程,如有激活的,就激活,这时分是否是抢占式的,如果是抢占式,被激活的进程先执行,非抢占式的则做V操作的当前进程先执行,没有激活的继续就继续执行当前进程。

因此P,V组合的算法必须结合在一起使用,才能实现进程的同步和互斥操作

P(S1)  S1++
V(S1)  S1--

S1是信号量,根据该信号变量的值判断后续具体执行什么操作。

举个去饭店吃菜的粒子,点了一份菜,只有厨师烧好菜,把菜盛到碗里,客人才有菜吃,否则客人吃不到菜
s1=1,s2=0

1.厨师烧菜进程


begin{

厨师烧菜 

p(s1)

盛到碗里

v(s2)

2.客人吃菜进程
begin{

p(s2)

从碗里取出菜到碗里

开始吃菜
v(s1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

weixin_43585822

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值