典型的OS中用进程管理的数据结构和技术.ppt

典型的OS中用进程管理的数据结构和技术.ppt

  1. 1、本文档共67页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第4章 进程 典型的OS中用于进程管理的数据结构和技术 4.0.1 程序的顺序执行和并发执行(1) 程序的顺序执行:具有独立功能的程序独占CPU直至得到最终结果的过程 顺序环境: 计算机系统中 只有一个程序在运行 该程序独占系统中所有资源 其执行不受外界影响 现在的操作系统多为并发执行,具有许多新的特征。引入并发执行的目的是为了提高资源利用率。 4.0.1 程序的顺序执行和并发执行(1) 顺序执行的特征 顺序性:按照程序结构所指定的次序(可能有分支或循环) 封闭性:独占全部资源,计算机的状态只由于该程序的控制逻辑所决定,不受外界影响。 可再现性:初始条件相同则结果相同。如:可通过空指令控制时间关系。(程序执行结果的确定性,程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同) 现在的操作系统多为并发执行,具有许多新的特征。引入并发执行的目的是为了提高资源利用率。 4.0.1 程序的顺序执行和并发执行(2) 程序的并发执行:指一组在逻辑上互相独立的程序或程序段在执行时间上客观上互相重叠,即一个程序或程序段的执行尚未结束,另一个程序(段)的执行已经开始的方式。 并发执行的特征 间断(异步)性:“走走停停”,一个程序可能走到中途停下来,失去原有的时序关系; 失去封闭性:共享资源,受其他程序的控制逻辑的影响。如:一个程序写到存储器中的数据可能被另一个程序修改,失去原有的不变特征。 失去可再现性:失去封闭性 -失去可再现性;外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。并发程序执行的结果与其执行的相对速度有关,是不确定的。 并发程序 资源共享 系统中资源被多个程序使用 独立性和制约性 独立的相对速度、起始时间 程序之间可相互作用(相互制约) 可分为直接作用和间接作用 程序和计算不再一一对应 (计算:一个程序的执行) 并发程序(1/3) 并发环境: 一定时间内,物理机器上有两个或两个以上的程序同时处于开始运行但尚未结束的状态,并且次序不是事先确定的 在顺序环境下,A先执行,B再执行 CPU利用率= 40/80 = 50% DEV1利用率= 15/80 =18.75% DEV2利用率= 25/80 =31.25% 并发程序(3/3) 在并发环境下 CPU利用率 = 89% DEV1并发环境下利用率= 33% DEV2并发环境下利用率= 66% 4.1 进程-定义和特征(1) 进程描述了程序的动态执行过程; 它对应虚拟处理机、虚拟存储器和虚拟外设等资源的分配和回收; 反映系统中程序执行的并发性、随机性和资源共享 多进程,提高了对硬件资源的利用率,但又带来额外的空间和时间开销,增加了OS 的复杂性; 4.1 进程-定义和特征(2) 动态性: 进程对应程序的执行 进程是动态产生,动态消亡的 进程在其生命周期内,在三种基本状态之间转换 独立性:各进程的地址空间相互独立,除非采用进程间通信手段; 并发性:任何进程都可以同其他进程一起向前推进 异步性:每个进程都以其相对独立的不可预知的速度向前推进 结构化:进程 = 代码段 + 数据段 + PCB 4.1 进程-与程序的区别 进程是动态的,程序是静态的:程序是有序代码的集合;通常对应着文件、静态和可以复制。进程是程序的执行。 进程是暂时的,程序是永久的:进程是一个状态变化的过程,程序可长久保存。 进程与程序的组成不同:进程的组成包括程序、数据和PCB(进程控制块)。 进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。 举例:正在运行的Web浏览器是一个进程,正在运行的Windows资源管理器是一个进程,正在运行的Visual C++编程环境也是一个进程 4.1 进程-并发示例 3个进程并发执行的图示 单进程的轨迹 3进程并发执行的轨迹:理解处理器的行为,如何在三个进程间交替执行 4.2、进程状态 4.2、进程状态-五状态模型 就绪态(Ready) :一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态,当调度给其CPU时,立即可以运行。位于“就绪队列”中 执行态(Running) :进程占有了包括CPU在内的全部资源,并在CPU上运行 等待态(阻塞态)(waiting,Blocked) :指进程因等待某种事件的发生而暂时不能运行的状态(即使CPU空闲,该进程也不可运行)。位于“等待队列”中。 新建状态(new):刚刚创建的进程,辅存中。 终止(退出状态,Exit):终止后进程移入该状态,它不再有执行资格 4.2、进程状态-new和exit进一步理解 新建( 新new)状态: OS 已完成为创建一进程所必要的工作 已构

文档评论(0)

l215322 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档