网站大量收购闲置独家精品文档,联系QQ:2885784924

4进程管理a.ppt

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

59 第四章 进程管理 多道程序设计 进程 进程间的同步与互斥 进程间的通信 进程(线程)调度(CPU调度) 系统核心 线程 一、多道程序设计(p102) 顺序程序 并发程序 多道程序设计 1.顺序程序 程序: 指令或语句序列,体现了某种算法 所有程序是顺序的 顺序环境: 计算机系统中 只有一个程序在运行 该程序独占系统中所有资源 其执行不受外界影响 顺序程序(续) 特征: 程序执行的顺序性 程序执行的封闭性 独占资源,执行过程中不受外界影响 程序执行结果的确定性 即:程序结果的可再现性 程序运行结果与程序执行速度无关,只要初始状态相同,结果应相同 2.并发程序(p105) 并发环境: 一定时间内,物理机器上有两个或两个以上的程序同处于开始运行但尚未结束的状态,并且次序不是事先确定的 并发程序(续1) 特征: (1)程序执行结果的不可再现性 并发程序执行的结果与其执行的相对速度有关,是不确定的 (2)在并发环境下程序的执行是间断性的 执行——停——执行 并发程序(续3) 引入并发的目的: 引入并发是为了提高资源利用率,从而提高系统效率 并发与并行概念的区别: Concurrency,parallel 在顺序环境下,A先执行,B再执行 CPU利用率= 40/80 = 50% DEV1利用率= 15/80 =18.75% DEV2利用率= 25/80 =31.25% 并发程序(续5) 在并发环境下 CPU利用 = 89% DEV1并发环境下利用 = 33% DEV2并发环境下利用 = 66% 3.多道程序设计(p104) 多道程序设计是指允许多个程序同时进入内存并运行,引入目的是为了提高系统效率 多道程序设计(续) 如何管理其他资源 当各用户对资源使用上发生冲突时,如何处理竞争 对CPU只能通过调度来解决竞争问题,而对于其他资源通过申请—分配—使用—回收的办法进行管理,当且仅当占有CPU的时候才可以申请,否则要排队等候 二、进程 进程的概念 进程的状态及其转换 进程控制块(Process Control Block) 进程的特征 1.进程的概念(p105) 定义:Process 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位 又称任务(Task) 进程:为了描述程序在并发执行时对系统资源的共享,所需的一个描述程序执行时动态特征的概念 OS必须交替执行多个进程,以便最大程度的使用CPU,同时提供合理的响应时间 OS 必须将资源分配给进程,同时避免死锁 OS必须支持用户创建进程 OS必须支持进程间通信 进程何时创建? 用户登录 提交一个程序执行 由OS创建,以向用户提供服务( 如:打印文件) 由已存在的一进程创建 一个用户程序可创建成多个进程 进程何时中止? 程序执行Halt指令 用户退出登录 进程执行一个中止服务请求 出错及失败因素 进程中止的原因 正常结束 给定时限到 缺少内存 存储器出界 保护性出错 例子: 写只读文件 算术错 超出时间 进程等待超过对某事件的最大值 进程中止的原因(续1) I/O 失败 无效指令 如试图执行数据 特权指令 操作系统干预 如当死锁发生时 父进程请求中止某一子进程 父进程中止,所以子进程也中止 程序与进程之间的区别(p106) 进程更能真实地描述并发,而程序不能 进程是由程序和数据两部分组成的 程序是静态的,进程是动态的 进程有生命周期,有诞生有消亡,短暂的;而程序是相对长久的 一个程序可对应多个进程,反之亦然 进程具有创建其他进程的功能,而程序没有 生活中类比例子: 进程的分类: 系统进程 用户进程 系统进程优先于用户进程 daemon: 守护进程/精灵进程 2.进程的基本状态及其转换 进程的三种基本状态: (p106) 进程在生命消亡前处于且仅处于三种基本状态之一 不同系统设置的进程状态数目不同 运行态(Running): 进程占有CPU,并在CPU上运行 就绪态(Ready): 一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态(当调度给其CPU时,立即可以运行) 等待态(Blocked):阻塞态、封锁态、睡眠态 指进程因等待某种事件的发生而暂时不能运行的状态(即使CPU空闲,该进程也不可运行) 进程状态转换: 在进程运行过程中,由于进程自身进展情况及外界环境的变化,这三种基本状态可以依据一定的条件相互转换 ? 就绪—运行 ? 运行—就绪 ? 运行—等待 ? 等待—就绪 进程转换(p107) 就绪 -- 运行 调度程序选择一个新的进程运行 运行 -- 就绪

文档评论(0)

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

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

1亿VIP精品文档

相关文档