软件技术基础 教学课件 ppt 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2

上传人:E**** 文档编号:89494484 上传时间:2019-05-25 格式:PPT 页数:68 大小:1.44MB
返回 下载 相关 举报
软件技术基础 教学课件 ppt 作者  张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2_第1页
第1页 / 共68页
软件技术基础 教学课件 ppt 作者  张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2_第2页
第2页 / 共68页
软件技术基础 教学课件 ppt 作者  张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2_第3页
第3页 / 共68页
软件技术基础 教学课件 ppt 作者  张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2_第4页
第4页 / 共68页
软件技术基础 教学课件 ppt 作者  张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2_第5页
第5页 / 共68页
点击查看更多>>
资源描述

《软件技术基础 教学课件 ppt 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2》由会员分享,可在线阅读,更多相关《软件技术基础 教学课件 ppt 作者 张选芳 傅茂洺 王欣 计算机软件技术基础(邮电)2-2(68页珍藏版)》请在金锄头文库上搜索。

1、1,计算机软件技术基础,课件,第一章 数据结构,第二章 操作系统,第三章 软件工程,第四章 数据库,制作者:张选芳 Email: 电话:5182508,2,第一单元,第二单元,第三单元,第四单元,第五单元,第二章 操作系统概论,第六单元,3,进 程,第二单元,第二章 计算机操作系统,4,2.2 处理机管理,2.2.1程序执行的基本特征 一、顺序程序 程序是指令或语句序列,它体现了某种算法。顺序程序是指程序中若干操作必须按照某种先后次序来执行,并且每次操作前和操作后的状态之间都有一定的关系。 程序顺序执行时对环境有一定的要求:在计算机系统中只要有一个程序在执行,这个程序就独占系统的所有资源,其执

2、行不受外界的影响。,5,二、并发程序 程序除了可以顺序执行,还可以并发执行,如果有多个程序段同时在系统中运行且执行时间是重叠的,我们称这几个程序或程序段是并发执行的。 程序并发执行时对环境也有一定的要求:在一定时间内物理机器上有两个或两个以上的程序同时处于开始运行但尚未结束的状态,并且次序不是事先确定的。 引入并发程序的目的: 主要是为了提高资源利用率,从而提高系统效率。,6,2.2.2 进程的定义及特征 进程 从理论角度看,进程是对正在运行的程序的抽象;从实现角度看,则是一种数据结构,目的在于清晰地刻划系统的内在规律,有效管理和调度进入计算机系统主存储器运行的程序。 进程的定义 进程是一个具

3、有一定独立功能的程序关于某个数据集合的一次运行活动。从操作系统管理的角度出发,进程由数据结构以及在其上执行的程序组成,是程序在这个数据集合上的运行过程,也是操作系统进行资源分配和保护的基本单位。,7, 进程的基本特征 结构性:进程包含了数据集合和运行于其上的程序。 共享性:同一程序同时运行于不同数据集合上时,构成不同的进程。或者说,多个不同的进程可以共享相同的程序。 动态性: 进程是程序在数据集合上的一次执行过程,是动态概念,同时,它还有生命周期,“由创建而产生,由撤销而消亡”。 独立性: 进程既是系统中资源分配和保护的基本单位,也是系统调度的独立单位。,8,制约性: 并发进程之间存在着制约性

4、, 进程在运行的关键点上需要相互等待或互通消息,以保证程序执行的可再现性。 并发性: 进程可以并发地执行。对于一个单处理器的系统来说,m个进程P1,P2,Pm轮流占用处理器并发地执行。,同静态的程序相比较,进程依赖于处理器和主存储器资源,具有动态性和暂时性,进程随着一个程序模块进入主存储器并获得一个数据块和一个进程控制块而创建,随着运行的结束退出主存储器而消亡。 从进程的定义和属性看出它是并发程序设计的一种有力工具,操作系统中引入进程概念能较好地解决“并发性”。,9,2.2.3 进程的状态和转换 进程状态的转换 通常,一个进程不可能总是占据CPU,而是具有“执行暂停执行”的活动规律,这称为进程

5、状态的转换。 进程的三种基本状态是: 运行状态、 就绪状态 和等待状态,,10,1、三态模型 运行态(running): 占有处理器正在运行的状态。 就绪态(ready): 具备运行条件,等待系统分配处理器以便运行的状态。 等待态(blocked):不具备运行条件,正在等待某个事件的完成,也称为阻塞态,如等待I/O操作。 一个进程在创建后将处于就绪状态。每个进程在执行过程中,任一时刻均处于上述三种状态之一。同时,在一个进程执行过程中,它的状态将会发生改变。,11,进程三状态图,就绪状态,执行状态,被调度而执行,等待事件而阻塞,事件发生,时间片到,图2-2 进程的状态转换,12,引起进程状态转换

6、的原因 (1)CPU调度:按照某种策略从就绪队列中调度一个进程到CPU上运行,该进程从就绪状态变为运行状态;原运行的进程从运行状态变为就绪状态。这两种状态的变化是同时发生的。 (2)进程在运行过程中需要等待某一事件,例如等待分配某一资源,或等待I/O操作完成时,这个进程则主动退出CPU,使自己处于等待状态,引起状态变化。 (3)如果进程所等待的事件发生。例如,一次I/O操作完成,于是进程被解除等待状态,变为就绪状态。,13,引起进程状态转换的具体原因 (1)运行态 等待态:等待使用资源;等待外设传输;等待人工干预。 (2) 等待态 就绪态:资源得到满足;外设传输结束;人工干预完成。 (3)运行

7、态 就绪态:运行时间到;出现有更高优先权进程。 (4)就绪态 运行态:CPU空闲时选择一个就绪进程。,14,2、五态模型 (1)新建态 创建一个进程一般要经过两个步骤: 为一个新进程创建PCB,并填写必要的管理信息; 把该进程转入就绪队列并插入就绪队列之中,当一个新进程被创建时,系统已为其分配了PCB,填写了进程标识符等信息,但创建工作尚未完成,进程还不能被调度执行,其所处的状态就是新建态。,15,(2)终止态 进程的终止也要经过两个步骤: 首先需等待操作系统进行善后处理, 然后将其PCB复位清空,并将PCB空间返回系统。 当一个进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所

8、终结,或是被其他有终止权的进程所终结,它将进入终止状态。一旦其他进程完成了对终止状态进程的信息提取之后,操作系统将删除该进程。,16,进程五状态图,就绪状态,执行状态,出现等待事件,等待事件结束,新建态,终止态,选中,落选,图2-3 进程五态模型及转换,17, 引起进程状态转换的具体原因 NULL新建态:执行一个程序,创建一个子进程。 新建态就绪态:操作系统完成了进程创建的必要操作,并且当前系统的性能和虚拟内存的容量均允许。 运行态终止态:当一个进程到达了自然结束点,或是出现了无法克服的错误,或是被操作系统所终结,或是被其他有终止权的进程所终结。 终止态NULL:完成善后操作。, 就绪态终止态

9、: 未在状态转换图中显示,但某些操作系统允许父进程终结子进程。 等待态终止态: 未在状态转换图中显示,但某些操作系统允许父进程终结子进程。,18,3、进程的挂起 引起进程挂起的原因 操作系统中的所有进程均处于等待状态,处理器空闲,此时需要把一些进程对换出去,以腾出足够的内存装入就绪进程运行,同时,让处于等待态的进程的需求尽快得到满足,便于转入就绪态被调度。 进程竞争资源,导致系统资源不足,负荷过重,此时需要挂起部分进程以调整系统负荷。,19, 把一些定期执行的进程(如审计程序、监控程序、记账程序)对换出去,以减轻系统负荷。 用户要求挂起自己的进程,以根据中间执行情况和中间结果进行某些调试、检查

10、和改正。 父进程要求挂起自己的后代进程,以进行某些检查和改正。 当系统出现故障或某些功能受到破坏时,需要挂起某些进程以排除故障。,20,进程七状态图,就绪状,运行状,出现等待事件,等待事件结束,新建态,终止态,选中,落选,图2-4 具有挂起功能的进程状态,挂起等待态,挂起就绪态,挂起,等待事件结束,挂起,解除 挂起,解除 挂起,挂起,提交,提交,21,引起进程状态转换的具体原因: 等待态挂起等待态:操作系统根据当前资源状况和性能要求,可以决定把等待态进程将被对换出去成为挂起等待态,以便让更少的进程参与资源的竞争,同时也让等待资源的进程尽快得到满足。 挂起等待态挂起就绪态:引起进程等待的事件发生

11、之后,相应的挂起等待态进程将转换为挂起就绪态。 挂起就绪态就绪态:当内存中没有就绪态进程,或者挂起就绪态进程具有比就绪态进程更高的优先级,系统将把挂起就绪态进程转换成就绪态。,22, 就绪态挂起就绪态:操作系统根据当前资源状况和性能要求,可以决定把就绪态进程将被对换出去成为挂起就绪态。 挂起等待态等待态:当一个进程等待一个事件时,原则上不需要把它调入内存。但是在下面一种情况下,这一状态变化时可能的。当一个进程退出后,主存已经有了一大块自由空间,而某个挂起等待态进程具有较高的优先级并且操作系统已经得知导致它阻塞的事件即将结束,此时便发生了这一状态变化。,23, 运行态挂起就绪态:当一个具有较高优

12、先级的挂起等待态进程的等待事件结束后,它进入就绪队列,会因为高优先权,抢占CPU,而此时主存空间有不够,从而可能导致正在运行的进程转化为挂起就绪态。另外处于运行态的进程也可以自己挂起自己。挂起等待事件结束出现等待事件解除挂起挂起落选选中运行态就绪态等待事件结束终止态新建态挂起就绪态解除挂起挂起挂起等待态等待态提交提交 新建态挂起就绪态:考虑到系统当前资源状况和性能要求,可以决定新建的进程将被对换出去成为挂起就绪态。,24,一个挂起进程具有如下特征 该进程不能立即被执行。 挂起进程可能会等待一个事件,但所等待的事件是独立于挂起条件的,事件结束并不能导致进程具备执行条件。 进程进入挂起状态是由于操

13、作系统、父进程或进程本身阻止它的运行。 结束进程挂起状态的命令只能通过操作系统或父进程发出。,25,2.2.4进程的描述 1、操作系统的控制结构 操作系统的控制表分为四类: 存储控制表 存储控制表用来管理一级(主)存储器和二级(虚拟)存储器, 主要内容包括: 主存储器的分配信息, 二级存储器的分配信息, 存储保护和分区共享信息, 虚拟存储器管理等信息。,26, I/O控制表, I/O控制表用来管理计算机系统的I/O设备和通道 主要内容包括: I/O设备和通道是否可用, I/O设备和通道的分配信息, I/O操作的状态和进展, I/O操作传输数据所在的主存区。 文件控制表 文件控制表用来管理文件,

14、 主要内容包括: 被打开文件的信息, 文件在主存储器和二级存储器中的位置信息, 被打开文件的状态和其他属性信息。 进程控制表。 进程控制表用来管理进程及其相关信息。,27,2、进程映像 进程程序块, 即被执行的程序,规定了进程一次运行应完成的功能。 进程数据块, 即程序运行时加工处理对象,常常为一个进程专用。 进程控制块(Process Control Block,PCB) 每一个进程都拥有进程控制块,用来存储进程的标志信息、状态信息和控制信息。进程创建时,建立一个PCB; 进程撤销时,回收PCB,它与进程一一对应。,28,例:用户进程在虚拟内存中的组织 如图2-5所示,进程标识信息,进程状态

15、信息,进程控制信息,共享地址空间,用户私有地址空间 (代码、数据),进程控制块,进程的三个要素,图2-5 用户进程在虚拟内存中的组织,控制块、 程序块、 数据块,29,3、进程控制块 每一个进程都有一个也只有一个进程控制块(Process Control Block,简称PCB或TCB) ,是操作系统用于记录和刻划进程状态及有关信息的数据结构。也是操作系统掌握进程的唯一数据结构,它包括了进程执行时的情况,以及进程让出处理器后所处的状态、断点等信息。 进程控制块包含三类信息: 标识信息 现场信息 控制信息,30, 标识信息 用于唯一地标识一个进程,常常分为由用户使用的外部标识符和被系统使用的内部标识号。几乎所有操作系统中进程都被赋予一个唯一的、内部使用的数值型的进程号,操作系统的其他控制表可以通过进程号来交叉引用进程控制表。 常用的标识信息包括 进程标识符、 父进程的标识符、 用户进程名等。,31, 现场信息 现场信息用于保留一个进程在运行时存放在处理器现场中的各种信息,任何一个进程在让出处理器时必须把此时的处理器现场信息保存到进程控制块中,而当该进程重新恢复运行时也应恢复处理器现场。 常用的现场信息包括 通用寄存器的内容、 控制寄存器(如PSW寄存器)的内容、 用户堆栈指针、 系统堆栈指针等。,32, 控制信息 用于管理和调度一个进程。 常用的控制信息包括:

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号