3-2009-进程线程模型 操作系统高级 教学课件.ppt

3-2009-进程线程模型 操作系统高级 教学课件.ppt

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

北京大学软件与微电子学院 2009春季 第三讲 进程线程模型 多道程序设计 进程管理 进程控制 线程 进程(线程)调度(CPU调度) 一、多道程序设计 顺序程序 并发程序 多道程序设计 1.顺序程序(1/2) 程序: 指令或语句序列,体现了某种算法 所有程序是顺序的 顺序环境: 计算机系统中 只有一个程序在运行 该程序独占系统中所有资源 其执行不受外界影响 顺序程序(2/2) 特征: 程序执行的顺序性 程序执行的封闭性 独占资源,执行过程中不受外界影响 程序执行结果的确定性 即:程序结果的可再现性 程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同 2.并发程序(1/4) 并发环境: 一定时间内,物理机器上有两个或两个以上的程序同时处于开始运行但尚未结束的状态,并且次序不是事先确定的 在顺序环境下,A先执行,B再执行 CPU利用率= 40/80 = 50% DEV1利用率= 15/80 =18.75% DEV2利用率= 25/80 =31.25% 并发程序(3/4) 在并发环境下 CPU利用 = 89% DEV1并发环境下利用 = 33% DEV2并发环境下利用 = 66% 并发程序(4/4) 特征: (1)程序执行结果的不可再现性 并发程序执行的结果与其执行的相对速度有关,是不确定的 (2)在并发环境下程序的执行是间断性的 执行——停——执行 (3)资源共享 系统中资源被多个程序使用 (4)独立性和制约性 独立的相对速度、起始时间 程序之间可相互作用(相互制约) 可分为直接作用和间接作用 (5)程序和计算不再一一对应 (计算:一个程序的执行) 3.多道程序设计(Multiprogramming) 多道程序设计:允许多个程序同时进入内存并运行,其目的是为了提高系统效率 二、进程的基本概念 进程的概念 进程的状态及其转换 进程控制块(Process Control Block) 进程的特征 1.进程的概念 定义:Process 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位 又称任务(Task) 为了描述程序在并发执行时对系统资源的共享,所需的一个描述程序执行时动态特征的概念 程序与进程的区别 进程更能真实地描述并发(程序不能) 进程是由程序和数据两部分组成的 程序是静态的,进程是动态的 进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的 一个程序可对应多个进程 进程具有创建其他进程的功能 生活中类比例子 进程分类 进程的分类: 系统进程 用户进程 系统进程优先于用户进程 daemon: 守护进程/精灵进程 2.进程的基本状态及其转换 进程的三种基本状态: 运行态、就绪态、等待态 进程在消亡前处于且仅处于三种基本状态之一 不同系统设置的进程状态数目不同 进程的基本状态 运行态(Running): 进程占有CPU,并在CPU上运行 就绪态(Ready): 一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态(当调度给其CPU时,立即可以运行) 等待态(Blocked):阻塞态、封锁态、睡眠态 指进程因等待某种事件的发生而暂时不能运行的状态(即使CPU空闲,该进程也不可运行) 进程状态转换的原因 就绪 -- 运行 调度程序选择一个新的进程运行 运行 -- 就绪 运行进程用完了时间片 一个高优先级进程处于就绪状态,中断正在运行的进程 运行 -- 等待 当一个进程必须等待时 OS尚未完成服务 对一资源的访问尚不能进行 初始化I/O 且必须等待结果 等待某一进程提供输入 (IPC) 等待 -- 就绪 当所等待的事件发生时 进程的其他状态 创建状态,终止状态 挂起(suspend)状态 进程没有占用内存空间 处在挂起状态的进程映像在磁盘上 (调节负载,对换) 五状态进程模型 七状态进程模型(1/4) 就绪状态(Ready):进程在内存且可立即进入运行状态 阻塞状态(Blocked):进程在内存并等待某事件的出现 阻塞挂起状态(Blocked, suspend):进程在外存并等待某事件的出现 就绪挂起状态(Ready, suspend):进程在外存,但只要进入内存,即可运行 七状态进程模型(2/4) 挂起(Suspend):把一个进程从内存转到外存;可能有以下几种情况: 阻塞→阻塞挂起:没有进程处于就绪状态或就绪进程要求更多内存资源时,发生这种转换,以提交新进程或运行就绪进程 就绪→就绪挂起:当有高优先级阻塞(系统认为会很快就绪的)进程和低优先级就绪进程时,系统会选

文档评论(0)

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

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

1亿VIP精品文档

相关文档