首页 理论教育 操作系统原理:程序顺序执行,节点I1、C、P按顺序执行

操作系统原理:程序顺序执行,节点I1、C、P按顺序执行

时间:2023-10-17 理论教育 版权反馈
【摘要】:由于每一个操作可对应一个程序段的执行,而整个计算工作可对应为一个程序的执行,因此,一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这个程序被称为顺序程序。显然,在早期的计算机中,输入、计算、打印这三个程序段的执行只能是一个一个地顺序执行。用节点代表各个程序段的操作,其中I1代表输入操作,C代表计算操作,P代表打印操作,箭头表示程序段执行的先后次序。上述程序段的执行可以表示为图4-1。

操作系统原理:程序顺序执行,节点I1、C、P按顺序执行

1.数据、操作

人们借助电子计算机来解决各类问题,人、机之间交换信息是通过某种语言来实现的,即通过一些符号和某些物理现象的约定,最终把人们的思想传递给机器的。比如,用程序设计语言编写了一个程序,这样,程序设计语言用符号记录了人们需要传递的信息。通过计算机的输入设备将信息表示为二进制的形式传递给计算机系统。又如,磁性介质的极性也能表达人们和机器之间需要传递的信息。这实质上是通过选定的某些物理现象来表示人们思维的对象。那些用来表示人们思维对象的抽象概念的物理表现叫作数据,而经过解释和处理以满足特定需要的数据叫作信息。数据是用来在人与人、人与计算机之间传递信息的,它可以存储起来以供将来使用,也可用来按某种规则予以处理以导出新的信息。

数据处理的规则叫作操作。每个操作都要有操作对象,一经启动就将在一段有限时间内操作完毕,并能根据状态的变化辨认出操作的结果。比如,一个操作可以将一组输入的数据变成另一组输出的数据。任何复杂的操作都是由简单的操作来定义的,所以简单的操作是基础。计算机所做的计算工作也是由许多操作组成的。前面曾把一个算法的实现叫作计算,现在要进一步具体化,即给计算下一个定义。

对某一有限数据的集合所施行的、目的在于解决某一问题的一组有限的操作的集合,称为一个计算。换言之,计算是由若干操作组成的。因为程序是算法的形式化描述,所以,一个程序的执行过程就是一个计算。

2.什么是程序的顺序执行

一个计算由若干个操作组成,而这些操作必须按照某种先后次序来执行,以保证操作的结果是正确的,则这类计算过程就是程序的顺序执行过程。最简单的一种先后次序是严格的顺序,每次执行一个操作,只有在前一个操作完成后,才能进行其后继的操作。由于每一个操作可对应一个程序段的执行,而整个计算工作可对应为一个程序的执行,因此,一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这个程序被称为顺序程序。

例如,在处理一个作业时,总是首先输入用户的程序和数据,然后进行计算,最后将所得的结果打印出来。显然,在早期的计算机中,输入、计算、打印这三个程序段的执行只能是一个一个地顺序执行(即使在现在,用户独占机器时也是这样)。用节点代表各个程序段的操作,其中I1代表输入操作,C代表计算操作,P代表打印操作,箭头表示程序段执行的先后次序。上述程序段的执行可以表示为图4-1。

图4-1 程序段的顺序执行

3.顺序程序的特点(www.xing528.com)

顺序程序的操作是一个接一个地以有限的速度进行的,并且每次操作前和操作后的数据、状态之间都有一定的关系。由此产生顺序程序的如下特点。

(1)顺序性

当顺序程序在处理机上执行时,处理机的操作是严格按照程序所规定的顺序执行的,即每个操作必须在下一个操作开始执行之前结束。

(2)封闭性

程序一旦开始执行,其计算结果不受外界因素的影响。因为是一道程序独占系统各种资源,所以当初始条件给定以后,这些资源的状态只能由程序本身确定,亦即只有本程序的操作才能改变它。

(3)可再现性

程序执行的结果与它的执行速度无关(即与时间无关),而只与初始条件有关。只要给定相同的输入条件,程序重复执行一定会得到相同的结果。

所谓与时间无关性,也就是说顺序程序的最后输出是与时间无关的、只与初始输入有关的函数。通俗地讲,顺序程序执行的结果与它的执行速度无关,即无论程序在执行过程中是连续地执行,还是间断地执行,都不会影响所得的最终结果。正是由于顺序程序具备与时间无关的性质,所以才具备可再现性。所谓可再现性,是指当初始条件相同时,程序多次执行,其结果必然重复出现。正是由于这个特点,给程序员检测和校正程序的错误带来了很大的方便。顺序程序具备与时间无关性的先决条件是:要求程序自身是封闭的,即一个程序执行时所用的变量指针值、各资源的状态不能被外界所改变。

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈