前驱图和程序执行

2、前驱图和程序执行

2.1前驱图

​ 前趋图是一个有向无循环图,记为DAG(Directed Acyclic Graph),用于描述进程之间执行的前后关系。

例:具有九个结点的前驱图

Snipaste_2020-09-26_09-46-33

前驱关系:

​ P1→P2, P1→P3, P1→P4, P2→P5, P3→P5, P4→P6, P4→P7, P5→P8, P6→P8, P7→P9, P8→P9

2.2、程序的顺序执行及其特征

程序:源代码程序、目标代码程序、可执行程序
程序执行:编辑、编译、链接、执行
程序的结构:顺序结构、分支结构、循环结构

程序顺序执行的特征:

  • 顺序性:处理机的操作严格按照程序结构所指定的次序执行。
  • 封闭性:程序一旦开始执行,其计算结果不受外界因素影响。
  • 可再现性:只要程序执行时的环境和初始条件相同,每次重复执行都将获得相同的结果。

2.3、程序的并发执行及其特征

1.程序的并发执行

Snipaste_2020-09-26_09-52-51

所谓程序的并发执行是指:若干个程序同时在系统中执行,这些程序的执行在时间上是重叠的,一个程序的执行尚未结束,另一个程序的执行已经开始。

程序并发执行的特征:

  • 间断性
    由于资源共享和相互合作,并发执行的程序间形成了相互制约关系,导致程序的运行过程出现“执行—暂停—执行”的现象。
  • 失去封闭性
    程序在并发执行时,是多个程序共享系统中的资源,因此这些资源的状态将由多个程序来改变。
  • 不可再现性
    由失去封闭性导致。同样的初始条件,一个程序的多次重复执行,可得到不同的结果。
原文地址:https://www.cnblogs.com/coderD/p/13733945.html