美文网首页网络规划设计师考试知识点
网络规划设计师知识点——网络基础篇 操作系统——PV操作

网络规划设计师知识点——网络基础篇 操作系统——PV操作

作者: 不想相交线 | 来源:发表于2020-06-06 19:18 被阅读0次

    PV操作分为P操作和V操作,是为了解决进程的同步与互斥问题。

    P操作:使信号量S=S- 1,若S>=0,则该进程继续执行,否则进程进入等待队列。

    V操作:使信号量S=S+1,若S小于等于0,则唤醒等待队列中的一个进程。

    例如:

    有甲,乙两个资源;A,B,C三个进程。有甲乙两资源,所以信号量S=2。

    第一步:当A进程请求使用甲资源,系统进行P操作使S-1,S=2-1=1>=0,甲资源给A使用。

    第二布:又当B进程请求使用乙资源,系统进行P操作使S-1,S=1-1=0>=0,乙资源给B使用。

    第三步:又当C进程请求使用资源,系统由于甲乙资源还被占用,这时进行P操作使S-1,S=0-1=-1,C进入等待队列。

    第四步:当A使用甲资源完毕,系统进行V操作使S+1,S=-1+1=0>=0,则唤醒C使用资源。

    1.互斥模型:多个进程(互斥)共享一台打印机。

          PV编码为

            P(S);

            使用打印机;

            V(S);

          这里由于只有一台打印机 所以S=1。这里的S在一个进程中成对出现就是互斥信号量。

    2.同步模型:单仓库、生产者与消费者问题。

    生产者生产出商品,放商品进入仓库,消费者进入仓库取商品并消费。这里生存者与消费者并不能同时对仓库进行存取,仓库中有商品消费者才能取,没有商品只能等待,他们之间是间接的制约关系,是同步模型。

    设S1为仓库空位,初始S1=1;S2为商品数量,初始无商品S2=0。

    PV编码为

    生存者:

    生产一个产品;

    P(S1);

    送产品到仓库;

    V(S2);

    消费者:

    P(S2);

    从仓库取产品;

    V(S1);

    消费商品;

    在这里S1,S2在两个进程中成对出现,所以它们是同步信号量。

    相关文章

      网友评论

        本文标题:网络规划设计师知识点——网络基础篇 操作系统——PV操作

        本文链接:https://www.haomeiwen.com/subject/cbdftktx.html