计算机操作系统——进程的描述与控制(学习记录)

2.1前驱图和程序执行

2.11 前驱图

为了更好的描述程序的顺序和并发情况,我们先介绍用于描述程序执行先后顺序的前驱图。前驱图,是指一个有向无循环图,可记为 DAG(Directed Acyclic Graph),它用于描述进程之间执行的先后顺序。

image
image.gif

具有节点的前驱图

image
image.gif

具有循环的前驱图

2.1.2 程序顺序执行

image
image.gif

1.程序的顺序执行

一个具有独立功能的程序独占处理机,直到得到最终的结果的过程

2.程序顺序执行时的特征

  • 顺序性
  • 封闭性
  • 可再性

2.1.3 程序的并发执行

程序顺序执行时,虽然很方便,但系统的资源利用率很低。为此,在系统上引入了多道程序技术,是程序或程序段间能并发执行。

1.程序的并发执行

image
image.gif

2.程序并发执行的特征

  1. 间断性
    1. 程序在并发执行时,由于他们共享系统资源,以及完成同一项任务而相互合作,致使在这些并发执行的程序之间形成了相互制约关系
    2. 相互制约将导致并发程序具有“执行——暂停——执行”这种间断性的活动规律
  2. 失去封闭性
    1. 当处理机已被分配给某个进程运行时,其他程序必须等待,显然,程序的运行已失去了封闭性
  3. 不可再现性
    1. 由于失去了封闭性,也将导致其又失去可再现性

上述情况说明,程序在并发执行时,由于失去了封闭性,其计算结果必将与并发程序的执行速度有关,从而使程序的执行失去了可再现性。换言之,程序经过多次执行后,虽然他们执行时的环境和除十条件相同,但得到的结果却各不相同。

你可能感兴趣的:(计算机操作系统——进程的描述与控制(学习记录))