欢迎来到天天文库
浏览记录
ID:19743550
大小:1.19 MB
页数:177页
时间:2018-10-05
《第2章 进程的描述与控制》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2021年6月29日操作系统1第2章进程的描述与控制2021年6月29日第二章进程管理2主要内容2.1进程的基本概念2.2进程控制2.3进程同步2.4经典的同步问题2.5管程机制2.6进程通信2.7线程2.8例题选讲2021年6月29日第二章进程管理32.1进程的基本概念例如下面3个语句:1.程序的顺序执行S1:a:=x+yS2:b:=a-5S3:c:=b+1前趋图是一个有向无循环图DAG(DirectedAcyclicGraph)S1S2S3上面语句的前趋图可以表示为:S={S1,S2,S3}→={(S1,S2),
2、(S2,S3)}1.程序的顺序执行与特征S1S2S3eg2:S1:a:=x+yS2:b:=a-5S3:c:=b+1输入数据加工处理打印结果eg1:在早期的单道程序工作环境下,内存中只有一个作业的程序。一个作业完成了,后一个作业才进入内存,并得以执行。这样一来,机器执行程序的过程就严格按顺序方式执行。特征:(1)顺序性程序的执行是按照程序机构所指定的顺序执行,即每一操作必须在前一操作完成以后才能开始。(2)封闭性程序是在封闭的环境下运行的。即程序运行时独占全机资源,资源的状态完全由该程序的控制逻辑所决定,不受外界因素的
3、影响。(3)可再现性只要程序执行的初始条件相同,执行结果就完全相同。即程序执行结果与它的运行速度无关。2.程序的并发执行和特征程序的并发执行和资源共享使系统的工作情况变得复杂,产生了新的特征。(1)不可再现性并发程序的执行结果与它们的相对速度有关。...n:=0...n:=n+1...Ak1k2...打印n...Bs如图,两并发程序A和B互相独立运行,A中对变量n实现累加操作,B中打印n值,它们的相对执行速度是不确定的。若A执行到k1时,控制转到B,B执行过程中打印n的值为0。当B运行到s时,控制又转到A,则A在k1
4、点后继续执行。若A运行得快一些,当它执行到k2时,控制才转到B,则B执行时打印机出n得值为1。(2)制约性并发程序之间相互依赖和制约。如图I、C、O是三个相互合作的程序,当计算程序Ci-1处理后,若输入程序未完成对Ii的处理,计算程序便无法进行Ci的处理,致使它暂停运行。另外几个并发程序还可能因竞争同一资源而相互制约。I1I2I3I4P1C1P2P3C2C3P4C4(3)程序与计算不再一一对应“程序”是指令的有序集合,是静态的概念。而“计算”是指令系列在处理机上的执行过程,是动态的概念。在并发执行时,一个共享程序可被
5、多个用户作业调用,从而形成了多个计算。...CALLC...B...CALLC...A......C如图:A和B执行中都调用C。在A调用时C时,C是属于A的执行过程的一部分;在B调用C时,C是属于B的执行过程的一部分。C属于A、B的不同执行过程。(4)失去封闭性共69页第9页进程的概念操作系统用“进程”来描述系统中各并发活动进程(process)又叫做任务(task)进程是程序的一次执行过程定义:进程是具有独立功能的程序在一个数据集合上的一次动态执行过程。是系统进行资源分配和调度的一个独立单位。共69页第10页进程具
6、有的特性动态性。进程是程序的一次执行过程,是临时的,有生命期的。独立性。进程是系统进行资源分配和调度的一个独立单位。并发性。多个进程可在处理机上交替执行。结构性。系统为每个进程建立一个进程控制块。共69页第11页进程和程序进程是动态的,程序是静态的。程序是有序代码的集合,进程是程序的执行,没有程序就没有进程。通常,进程不可以在计算机之间迁移,而程序可以复制。进程是暂时的,程序是永久的。进程包括程序、数据和进程控制块。通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。进程可创建其他进程,而程序
7、不能形成新的程序。(2)进程的特征动态性进程是程序在并发系统内的一次执行,一个进程有一个从产生到消失的生命期;并发性正是为了描述程序在并发系统内执行的动态特性才引入了进程,没有并发就没有进程;独立性每个进程的程序都是相对独立的顺序程序,可以按照自己的方向和速度独立地向前推进;制约性进程之间的相互制约,主要表现在互斥地使用资源和相关进程之间必要的同步和通讯;结构性进程=PCB+程序+数据集合。2.1.2进程的状态和组成1.进程的状态及其转换(1)进程的基本状态:运行状态(Running)、就绪状态(Ready)、阻塞状
8、态(Blocked)、创建状态(New)、退出状态(Exit)。运行状态指当前进程已占有CPU,它的程序段正在执行。处于这种状态的进程的个数不能大于CPU的数目;就绪状态进程获得了除处理机外的一切资源。等待分配CPU资源,一旦得到CPU就可以运行;阻塞状态进程因等待某种事件发生而暂不能运行的状态;创建状态进程处于创建过程中,还不能运行;退出状态
此文档下载收益归作者所有