第二讲 进程的基本概念.ppt

  1. 1、本文档共47页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第二讲 进程的基本概念

第二讲 进程 程序的顺序执行:具有独立功能的程序独占CPU直至得到最终结果的过程(如:单道批处理系统) 顺序环境: 计算机系统中 只有一个程序在运行 该程序独占系统中所有资源 其执行不受外界影响 顺序执行的特征 顺序性:按照程序结构所指定的次序(可能有分支或循环) 封闭性:独占全部资源,计算机的状态只由于该程序的控制逻辑所决定,不受外界影响。 可再现性:初始条件相同则结果相同。如:可通过空指令控制时间关系。(程序执行结果的确定性,程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同) 程序顺序执行时的特性,为程序员检测和校正程序的错误带来了很大的方便。 2.程序的并发执行 程序的并发执行:指一组在逻辑上互相独立的程序或程序段在执行时间上客观上互相重叠,即一个程序或程序段的执行尚未结束,另一个程(段)的执行已经开始的方式。(两个或两个以上程序在计算机系统中同处于已开始执行且尚未结束的状态。) 并发执行的特征 间断(异步)性:“走走停停”,一个程序可能走到中途停下来,失去原有的时序关系; 失去封闭性:共享资源,受其他程序的控制逻辑的影响。如:一个程序写到存储器中的数据可能被另一个程序修改,失去原有的不变特征。 失去可再现性:失去封闭性 -失去可再现性;外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。并发程序执行的结果与其执行的相对速度有关,是不确定的。 案例分析 假设现在有两个循环程序A 和B,它们共享一个变量N。程序A 每执行一次时,都要做N:=N+1 操作;程序B每执行一次时,都要执行Print(N)操作,然后再将N 置成“0”。程序A和B以不同的速度并发运行。会出现什么情况? 出现下述三种情况(假定某时刻变量N 的值为n): (1) N:=N+1 在Print(N)和N:=0之前,此时得到的N值分别为n+1,n+1,0。 (2) N:=N+1 在Print(N)和N:=0之后,此时得到的N值分别为n,0,1。 (3) N:=N+1 在Print(N)和N:=0之间,此时得到的N值分别为n,n+1,0。 上述情况说明,程序在并发执行时,由于失去了封闭性,其计算结果已与并发程序的执行速度有关,从而使程序的执行失去了可再现性,亦即,程序经过多次执行后,虽然它们执行时的环境和初始条件相同,但得到的结果却各不相同。 操作系统负责创建进程、为进程分配资源、调度进程占用处理机等。 进程描述了程序的动态执行过程; 反映系统中程序执行的并发性、随机性和资源共享 多进程,提高了对硬件资源的利用率,但又带来额外的空间和时间开销,增加了OS 的复杂性; 2 、进程特征 动态性: 进程对应程序的执行 进程是动态产生,动态消亡的 进程在其生命周期内,在基本状态之间转换 独立性: 独立运行的单位 独立分配资源,独立接受调度的基本单位 2 进程特征 并发性: 多个进程同时存在于内存中,能在一段时间内并发运行。 (并发性是进程的重要特性,也是操作系统的重要特性,引入进程的目的也是为了程序能和其他程序并发执行) 异步性: 进程按各自独立的,不可预知的速度推进。也就是说,在不考虑资源共享的情况下,各进程的执行是独立的,执行速度是异步的。 3、进程与程序的区别 进程是动态的,程序是静态的:程序是有序代码的集合;通常对应着文件、静态和可以复制。进程是程序的执行。 进程是暂时的,程序是永久的:进程是一个状态变化的过程,程序可长久保存。 进程与程序的组成不同:进程的组成包括程序、数据和PCB(process control block 进程控制块)。 进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。 举例:正在运行的Web浏览器是一个进程,正在运行的Windows资源管理器是一个进程,正在运行的Visual C++编程环境也是一个进程 1、 进程的状态 新建状态(new):刚刚创建的进程,辅存中。 就绪态(Ready) :一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态,当调度给其CPU时,立即可以运行。既一个进程获得了除处理机之外的一切所需资源。位于“就绪队列”中 执行态(Running) :进程占有了包括CPU在内的全部资源,正在CPU上运行。在单机环境下,每一时刻最多只有一个进程处于运行状态。 等待态(阻塞态)(waiting,Blocked) :指进程因等待某种事件的发生而暂停运行的状态(暂停时不占用处理机。即使CPU空闲,该进程也不可运行)。位于“等待队列”中。 终止(退出状态,Exit):终止后进程移入该状态,它不再有执行资格。终止可能是正常结束也可能是中途终止。 2、导致进程状态转换的事件类型 状态转换:在进程运行

文档评论(0)

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

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

1亿VIP精品文档

相关文档