进程的描述与控制

目录

前趋图:

程序顺序执行:

程序顺序执行时的特征:

程序并发执行

程序并发执行时的特征:

进程的描述

PCB分类:

进程的状态与转换


前趋图:

        是指一个有向无循环图,可记为DAG,用于描述进程之间的先后顺序

        图中的每个结点可用来表示一个进程或程序段,乃至一条语句,结点间的有向边则表示两个结点之间存在的偏序前趋关系。

        进程(或程序)之间的前趋关系可用“→”来表示。

        如果进程PiPj存在着前趋关系,可表示为(PiPj)∈→,也可写成Pi→Pj,表示在Pj开始执行之前Pi 必须完成。

        此时称PiPj的直接前趋,而称PjPi的直接后继。

        在前趋图中,把没有前趋的结点称为初始结点,把没有后继的结点称为终止结点。

        此外,每个结点还具有一个重量,用于表示该结点所含有的程序量或程序的执行时间。

 程序顺序执行:

        一个应用程序若干个程序段组成,在执行时,都需要按照某种先后次序
 
  结点代表各程序段的操作,其中I代表输入操作C代表计算操作P为打印操作,用箭头指示操作的先后次序

 一个程序段也可能存在执行顺序问题:

S1:a=x+y;     S2:b=a-5;       S3:c=b+1;

前趋图:S1->S2->S3

程序顺序执行时的特征

       1. 顺序性指处理机严格地按照程序所规定的顺序执行,即每一操作必须在下一个操作开始之前结束

       2. 封闭性指程序在封闭的环境下运行,即程序运行时独占全机资源,资源的状态(除初始状态外)只有本程序才能改变它,程序一旦开始执行,其执行结果不受外界因素影响

       3. 可再现性指只要程序执行时的环境和初始条件相同,当程序重复执行时,不论它是从头到尾不停顿地执行,还是“停停走走”地执行,都可获得相同的结果。

(程序顺序执行为程序员检测校正程序错误提供方便)

程序并发执行

由上图(程序并发执行时的前趋图)可以看出,存在前趋关系Ii→CiIi→Ii+1Ci→PiCi→Ci+1Pi→Pi+1,而Ii+1CiPi-1是重叠的,即在Pi-1Ci以及Ii+1之间,不存在前趋关系,可以并发执行。

程序并发执行时的特征:

        1.间断性

        2.失去封闭性

        3.不可再现性两个程序AB共享变量NAN=N+1操作,BprintN)并清零操作。如AB以不同速度运行,则N的值会发生变化。

进程的描述

进程的定义

        在多道程序环境下,程序的执行属于并发执行,此时它们将失去其封闭性,并具有间断性,以及其运行结果不可再现性的特征。由此,决定了通常的程序是不能参与并发执行的,否则,程序的运行也就失去了意义。为了能使程序并发执行,并且可以对并发执行的程序加以描述和控制,人们引入了“进程”的概念。
程序段、相关数据段、PCB===进程实体,简称进程

进程与程序的区别:

1)进程是一次运行的过程,属于一种动态的概念而程序是指令的集合,是一个静态的概念。

2)进程可以并发执行;而程序不能。

3)进程是有生命期的;而程序是永久的。

4)进程是系统资源分配的独立单位,而程序则不行。

5) 一个程序可以对应多个进程。同一程序同时运行于若干个不同的数据集合上时,它将属于若干个不同的进程

程序就是一个指令序列,早期计算机只支持单道程序

进程是程序的一次执行过程是一个程序及其数据在处理机上顺序执行时所发生的活动是具有独立功能的程序在数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。

进程的定义:(动态)

        程序的代码他本身放在程序段内,程序运行过程处理的数据放在数据段内(如变量)

        cpu执行的时候,在低地址找指令,按顺序执行在高地址找变量(低地址上,高地址下)

进程的组成:

        程序段、数据段、PCB三部分组成了进程实体(进程映像)。

        一般情况下,我们把进程实体就简称为进程,例如,所谓创建进程,实质上是创建进程实体中的PCB;而撤销进程,实质上是撤销进程实体中的PCB

        PCB是进程存在的唯一标志!

进程是进程实体的运行过程,是系统进行资源分配调度的一个独立单位。

严格意义上:进程实体是静态的(是数据的集合,指的是数据本身),进程是动态的(是数据的的运行性的过程)。

进程的管理者(操作系统所需的数据都在PCB中)

程序本身的运行所需的数据在程序段、数据段中

PCB分类:

        进程标识符

        处理机状态

        进程调度信息

        进程控制信息

注: 进程的组成讨论的是一个进程内部由哪些部分构成的问题,而进程的组织讨论的是多个进程之间的组织方式问题 。

 链接方式,其实就是操作系统会持有一系列指针,指针会指向不同状态的进程队列。

 索引方式操作系统为不同状态的进程,创建不同的索引表,表项指向PCB

动态性是进程最基本的特征

异步性会导致并发程序执行结果的不确定性

进程是资源分配、接受调度的基本单位

进程的状态与转换

 进程的三种基本状态:

        运行态:占有cpu,并在cpu上运行

                单核处理机环境下,每一 时刻最多只有一个进程处于运行态。(双核环境下可以同时有两个进程处于运行态)

        就绪态:已经具备运行条件,但由于没有空闲cpu,而暂时不能运行

                进程已经拥有了除处理机之外所有需要的资源(比如打印机资源什么的),一旦获得处理机,即可立即进入运行态开始运行。即:万事俱备,只欠CPU

        阻塞态(等待态):因等待某一事件而暂时不能运行

                如:等待操作系统分配打印机、等待读磁盘操作的结果。CPU是计算机中最昂贵的部件,为了提高CPU的利用率,需要先将其他进程需要的资源分配到位,才能得到CPU的服务

创建态:所有初始化工作都做完以后,进程才可以正式的投入运行,在这个正式运行前的处理期间叫做创建态。

终止态:一个进程停止运行之后,还需要有一些后续的工作,这种期间的状态叫做终止态。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值