欢迎来到天天文库
浏览记录
ID:50145506
大小:246.50 KB
页数:63页
时间:2020-03-09
《操作系统教程教学课件彭德林第2章进程管理.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、2.1进程的基本概念2.2进程控制2.4进程调度2.3进程互斥、同步和通信2.5死锁2.6线程2.7WindowsServer2003进程管理第2章进程管理2.1进程的基本概念程序的执行与特征进程的概念与特征进程的状态及状态转换进程控制块2.1.1程序的执行与特征程序顺序执行程序顺序执行:一个较大的程序通常都由若干个程序段组成。程序在执行时,必须按照某种先后次序逐个执行,仅当前一操作执行完后,才能执行后继操作。程序顺序执行时的特征顺序性可再现性封闭性在早期的单道程序系统中,程序执行时独占系统资源,数据输入、数据处理、
2、结果输出这三个程序段只能严格按程序规定的顺序一个接一个地顺序执行。图2.1所示为程序的顺序执行,其中,I代表数据输入操作,C代表计算操作,P为打印操作。I1C1P1I2C2P2作业1作业2图2.1程序的顺序执行程序并发执行程序并发执行:是指各程序在执行时间上是可重叠的。我们把执行时间上有重叠的几个程序称为并发程序。程序并发执行时的特征间断性失去封闭性不可再现性如图2.2所示,对一个作业而言,其输入程序、计算程序和打印程序这三个操作必须顺序执行;但对一批作业而言,许多程序之间就有可能并发执行。例如,输入程序在输入第一个
3、程序后,在计算程序对该程序进行计算的同时,可由输入程序再输入第二个程序,从而使第一个程序的计算操作与第二个程序的输入操作并发执行。一般说,输入程序在输入第I+1个程序时,计算程序可能正在对第I个程序进行计算,而打印程序正在打印第I-1个程序的计算结果。I1I2I3I4C1C2C3C4P1P2P3P4图2.2程序并发执行图2.2表示出了输入、计算、打印三个程序对一批作业进行处理的情况。2.1.2进程的概念与特性进程的概念与特征进程的概念:可并发执行的程序在一个数据集合上的运行过程进程和程序是两个既有联系又有区别的概念,
4、它们的区别和联系可简述如下:进程是一个动态概念,而程序则是一个静态概念。程序是指令的有序集合,没有任何执行的含义;而进程则强调执行过程,它动态地被创建,并被调度执行后消亡。进程具有并行特征,而程序没有。由进程的定义可知,进程具有并行特征的两个方面,即独立性和异步性。也就是说,在不考虑资源共享的情况下,各进程的执行是独立的,执行速度是异步的。显然,由于程序不反映执行过程,所以不具有并行特征进程是竞争计算机系统资源的基本单位,从而其并行性受到系统自己的制约。这里,制约就是对进程独立性和异步性的限制。不同的进程可以包含同一
5、程序,只要该程序所对应的数据集不同。2.1.3进程的状态及状态转换进程的状态在进程的生命期内,一个进程至少具有三种基本状态,它们是:执行状态、等待状态和就绪状态。进程的状态转换进程的状态反映进程执行过程的变化。这些状态随着进程的执行和外界条件发生变化和转换。那么,是什么样的条件使得进程各状态发生转换呢?图2.3给出了三个基本状态,即就绪状态、执行状态与等待状态之间的转换关系。图2.3进程状态转换2.1.4进程控制块PCB从处理机的活动角度来看,如何识别、描述进程呢?显然,系统中需要有描述进程存在和能够反映其变化的物理
6、实体,即进程的静态描述。进程的静态描述由三部分组成:进程控制块PCB,有关程序段和该程序段对其进行操作的数据结构集。进程控制块包含了有关进程的描述信息、控制信息以及资源信息,是进程动态特征的集中反映。系统根据PCB感知进程的存在和通过PCB中所包含的各项变量的变化,掌握进程所处的状态以达到控制进程活动的目的。由于进程的PCB是系统感知进程的唯一实体,因此,在几乎所有的多道操作系统中,一个进程的PCB结构都是全部或部分常驻内存的。一般来说,根据操作系统的要求不同,进程的PCB所包含的内容会多少有所不同,但是下面所示基本
7、内容是必需的:(1)描述信息①进程名或进程标识号②用户名或用户标识号③家族关系(2)控制信息①进程当前状态进程在活动期间可分为就绪态、执行态和等待状态。②进程优先级进程优先级是选取进程占有处理机的重要依据。与进程优先级有关的PCB表项有:a.占有CPU时间;b.进程优先级偏移;c.占据内存时间等。③程序开始地址④各种计时信息给出进程占有和利用资源的有关情况。⑤通信信息通信信息用来说明该进程在执行过程中与别的进程所发生的信息交换情况。(3)资源管理信息PCB中包含最多的是资源管理信息,包括有关存储器的信息、使用输入输出
8、设备的信息、有关文件系统的信息等,这些信息有:①占用内存大小及其管理用数据结构指针,例如,后述内存管理中所用到的进程页表指针等。②在某些复杂系统中,还有对换或覆盖用的有关信息,如对换程序段长度,对换外存地址等,这些信息在进程申请、释放内存中使用。③共享程序段大小及起始地址。④输入输出设备的设备号,所要传送的数据长度、缓冲区地址、缓冲区长度及所用
此文档下载收益归作者所有