📜  带有优先图的并发程序

📅  最后修改于: 2021-08-27 07:42:49             🧑  作者: Mango

在本文中,我们将介绍操作系统中的并发程序,并为该程序制作一个优先级图,并介绍该程序的程序执行。

在并发编程中,可以在多处理器系统上执行Real并发程序。如果满足以下条件,则可以同时或并行执行任意两个语句Si和Sj。

Read set(Si) ∩ Write set(Sj) = ϕ
Write set(Si) ∩ Read set(Sj) = ϕ
Write set(Si) ∩ Write set(Sj) = ϕ

在并发编程中, “并发”一词具有不同的含义。

  • 它们可以同时执行或并行执行。
  • 他们没有任何依赖性。
  • 任何人都可以先开始。

例子 –
让我们考虑以下表达式–

S1: p = q+r;
S2: s = t×u;
S3: v = w/x;
S4: y = z×a;

上面的表达式的读取集和写入集如下所示–

Read Set = {q, r, t, u, w, x, z, a}
Write Set ={p, s, v, y}

读写集的优先级图如下-

在并发编程中,将通过使用下面给出的以下语句来完成或返回它–

par begin - par end
or 
Co begin - Co end 

优先级图的并行程序:

让我们考虑下面给出的以下优先级图–

给定优先级图的并发程序如下:

begin 
    S1:
    par begin 
        begin
            S2;
            S6;
        end
        begin
            S3;
            S7;
        end
            S4;
            S5;
    par end
            S8;
end