操作系统——进程的描述与控制(学习笔记)

目录

1.前趋图和程序执行

(1)前趋图

(2)程序的顺序执行

(3)程序的并发执行

2.进程的描述

(1)进程的定义与特征

进程的定义

进程的特征

进程与程序的区别

(2)进程控制块

操作系统中用于管理控制资源的数据结构

进程控制块

(3)PCB

PCB的作用

PCB的内容

PCB的组织方式

(4)进程的状态及转换

进程的三种基本状态

 创建状态和终止状态

挂起操作和进程状态的转换


1.前趋图和程序执行

(1)前趋图

前趋图(Precedence Graph) 是一个有向无循环图,可记为DAG,用于描述程序/进程之间执行的先后顺序。

 图中每个结点可用来表示一个进程或程序段,结点间的有向边表示两个结点之间存在的偏序前趋关系。如P1与 P2存在前趋关系,记作P1 -> P2,表示在P2开始执行之前P1必须完成,此时称P1是P2的直接前趋,P2是P1的直接后继。没有前趋的结点称为初始结点,没有后继的结点称为终止结点,每个结点还有一个重量,用于表示该结点所含有的程序量或程序的执行时间

(2)程序的顺序执行

在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响。 一道程序执行完后另一道才能开始。

程序顺序执行的特点

  • 顺序性:一个程序开始执行必须要等到前 一个程序已执行完成。
  • 封闭性:程序一旦开始执行,其计算结果不受外界因素影响。
  • 可再现性:程序的结果与它的执行速度无关(即与时间无关),只要给定相同的输入,一定会得到相同的结果。

(3)程序的并发执行

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

 只有在不存在前趋关系的程序之间才有可能并发执行,否则无法并发执行。

程序并发执行的特点

  • 间断性:在并发执行时由于共享系统资源以及相互合作,可能会导致程序在执行过程中互相制约,造成程序间断性的活动规律。
  • 失去程序的封闭性: 程序在并发执行时,是多个程序共享系统中的资源,因此这些资源的状态将由多个程序来改变。
  • 不可再现性:如循环程序A、B,共享变量N。 程序A执行N:=N+1;程序B执行Print(N),后将N置0。 两个程序以不同速度运行,可能出现三种情况:

             N:=N+1在Print(N)和N=0之前,此时N值分为N+1,N+1, 0

             N:=N+1在Print(N)和N=0之后,此时N值分为N, 0, 1

             N:=N+1在Print(N)和N=0之间,此时N值分为N, N+1, 0

程序在并发执行时,由于失去了封闭性,其计算结果必将与并发程序的执行速度有关,从而使程序的执行失去了可再现性。程序经过多次执行后,虽然它们执行时的环境和初始条件相同,但等到的结果却各不相同


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

〖雪月清〗

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值