已阅读5页,还剩36页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
操作系统进程管理张其亮 1 OutLine 进程调度 本节内容 2 Introduction 3 Program 程序概念一组有序的操作序列有序 指操作必须按照严格的先后顺序操作 指由机器指令 高级语言语句实现的某种特定功能程序执行方式顺序执行并发执行 4 Sequence 程序的顺序执行 5 Features 顺序程序特点 顺序性 封闭性 程序运行时独占全部资源 只有该程序才能改变资源的状态 一旦开始运行 其执行结果不受外界因素的影响 可再现性 如果程序在不同时间重复运行 只要初始条件相同 结果就相同 voidmain inti 1 i printf d i 6 7 PrecedenceGraph 前驱图是一个有向无循环图 简称DAG DirectedAcyclicGraph 图中每个结点表示一个语句 一段程序或一个进程 从结点Si到结点Sj的有向边表示它们的前趋关系 记为Si Sj 即Si和Sj应顺序执行 Sj仅在Si执行完成后才能开始执行 8 Concurrency 程序的并发执行出现多道系统后 处理机可以同时运行多个用户的程序 程序的执行方式也发生了改变 从顺序执行到并发执行 并发执行概念若干个程序或程序段可以使用处理机同时执行 它们在执行时时间可以重叠 9 10 Features 并发执行特点 并发行开放性程序运行环境开放 运行时要受到外界的影响 因为并发程序共享系统资源间断性不可再现性由资源的开放性引起的 11 不可再现性举例 有两个循环程序A和B 它们共享一个变量N 程序A每执行一次时都要做N N 1操作 程序B每执行一次时 都要做print N 操作 然后再将N置成 0 程序A和B以不同的速度运行 假定某时刻变量N的值为5 1 N N 1在print N 和N 0之前 此时得到的N值分别为 6 6 0 2 N N 1在print N 和N 0之后 此时得到的N值分别为5 0 1 3 N N 1在print N 和N 0之间 此时得到的N值分别为5 6 0 12 Process 程序本身是一个静态的内容 不能表现其运行过程 一个程序在运行时 可能有多个过程 单靠程序的概念无法对多个过程进行描述 当我们打开2个qq时会看到windows进程中会存在2个qq exe进程 但它们都运行的是同一个qq程序 用程序如何描述呢 引入进程描述程序在执行过程中的动态行为 13 Definition 进程的定义进程特性 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动 它是系统进行资源分配和调度的一个独立单位 动态性 并发性 独立性 异步性 结构性 14 Processstates 15 Processstates 进程是动态的概念 进程的状态也是在不断的变化 就绪状态 该进程运行所需的一切条件都得到满足 但因处理机资源个数少于进程个数 所以该进程不能运行 而必须等待分配处理机资源 一旦获得处理机就立即投入运行 运行状态 进程正在处理机上运行的状态 该进程已获得必要的资源 也获得了处理机 用户程序正在处理机上运行 阻塞状态 进程等待某种事件完成 例如 等待输入 输出操作的完成 而暂时不能运行的状态 处于该状态的进程不能参加竞争处理机 此时 即使分配给它处理机 它也不能运行 16 Processstates 17 Otherstates 挂起状态 暂停程序的执行 创建状态 1 创建PCB并填入信息 2 将进程插入到就绪队列 终止状态 清除PCB 18 19 系统会有一个就绪队列多个等待队列 20 PCB 进程实体进程是一个实际存在的概念 是一个实际存在的实体 进程实体由3部分组成 程序 决定了要完成的功能数据 执行时的操作对象进程控制块 ProcessControlBlock PCB 进程的状态和占用资源以及进程之间的关系是不断变化的 为了便于对进程进行管理 系统通过进程控制块管理这些信息 21 PCB 22 PCB 当系统或父进程创建一个进程时 实际上就是为其建立一个进程控制块 当进程执行过程中状态发生变化时修改PCB 当进程被撤销时 系统收回PCB 系统通过PCB感知进程 23 PCB 在进程控制块中 主要包括下述4方面的信息 1 进程描述信息进程标识符 每个进程都有惟一的进程标识符 用以识别不同的进程 用户名或用户标识号 每个进程都隶属于某个用户 有利于资源共享与保护 家族关系 标识进程之间的家族关系 24 PCB 2 处理机状态信息通用寄存器 指令计数器 程序状态字 PSW 用户栈指 3 进程调度信息进程状态 指明进程的当前状态 以作为进程调度和进程对换时的依据 进程优先级 用于描述进程使用处理机的优先级别的一个整数 优先级别高的进程先获得处理机 进程调度所需的其他信息 如进程已等待CPU的时间总和 进程已执行的时间总和等 事件 指进程被阻塞的原因 25 PCB 4 进程控制信息程序和数据的地址 指出该进程的程序和数据所在的内存或外存地址 以便再调度到该进程执行时 能从中找到其程序和数据 进程同步和通信机制 指实现进程同步和进程通信时所必须的机制 如消息队列指针 信号量等 这些数据应全部或部分地存放在PCB中 资源清单 它是一张列出了除CPU之外的进程所需的全部资源和已经分配给该进程的资源清单 链接指针 它给出了本进程 PCB 所在队列的下一个进程的PCB首地址 26 PCB 在一个系统中 通常拥有数十个 数百个乃至数千个PCB 为了对PCB进行有效地管理 系统应把所有的PCB用适当的方式组织起来 27 ProcessControl 对系统中全部进程进行管理 包括创建 终止及实现进程状态转换等 进程控制是由操作系统提供的一组系统调用实现的 这组系统调用直接控制进程 为了防止被其他进程中断 引进原语概念 原语 用以完成特定功能的 执行时不可分割的或不可中断的程序或系统调用 进程控制原语 创建原语 终止原语 阻塞原语 唤醒原语 28 CreateProcess 创建原语 1 申请空白PCB 2 为新进程分配资源 3 初始化PCB 标识 状态等 4 将新进程插入到就绪队列 进程刚产生时处于什么状态 29 Exitprocess 终止原语 1 根据PID 找到进程PCB 读出其状态 2 终止进程的执行 3 若有子进程 予以终止 4 释放进程占有的资源 5 释放PCB 30 BlockProcess 阻塞原语 1 在阻塞一个进程时 由于该进程正处于执行状态 故应先中断处理机和保存该进程的CPU现场 2 将被阻塞进程置 阻塞 状态后插入等待队列中 3 再转进程调度程序选择新的就绪进程投入运行 阻塞原语在一个进程期待某一事件 例如键盘输入数据 写盘 其它进程发来的数据等 发生 但发生条件尚不具备时 被该进程自己调用来阻塞自己 31 WakeUpProcess 唤醒原语 1 将被唤醒进程从相应的等待队列中摘下 2 将被唤醒进程置为就绪状态之后 送入就绪队列 3 在把被唤醒进程送入就绪队列之后 唤醒原语既可以返回原调用程序 也可以转向进程调度 以便让调度程序有机会选择一个合适的进程执行 当等待队列中的进程所等待的事件发生时 等待该事件的所有进程都将被唤醒 32 Suspend ActiveProcess 1 检查挂起进程的状态 若是Readya Readys 若Blockeda Blockes 2 将该进程的PCB复制到某指定的内存区 3 如被挂起的进程正在执行 则转调度程序重新执行 1 激活原语先将进程从外存调入内存 并检查进程的现行状态 2 若处于Readys Readya 若处于Blockes Blockeda 挂起原语 激活原语 当进程请求将自己挂起或父进程请求将自己的某个子进程挂起时 系统利用挂起原语将指定进程或阻塞的进程挂起 33 Practice 1 进程和程序的本质区别是 A 存储在内存和外存B 顺序和非顺序执行机器指令C 分时使用和独占使用计算机资源D 动态和静态特征2 进程控制块是描述进程状态和特性的数据结构 一个进程 A 可以有多个进程控制块B 可以和其他进程共用一个进程控制C 可以没有进程控制块D 只能有惟一的进程控制块 34 Practice 3 一个进程被唤醒 意味着 A该进程重新占有了CPUB进程状态变为就绪C它的优先权变为最大D其PCB移至就绪队列的队首4 进程创建原语的任务是A为进程编制程序B为进程建立PCB表C为进程分配CPUD为进程分配所需的各种资源 35 Practice 5 下列进程状态的转换中 不正确的是 A从就绪到阻塞B从运行到就绪C从就绪到运行D从阻塞到运行6 当一个进程处于这样的状态 时 称其为等待状态 A它正等着输入一批数据 B它正等着协作进程的一个消息 C它正等分给它一个时间片 D它正等着进入内存 36 Practice 7 进程的属性包括 A 进程就是程序 或者说 进程是程序的另一种叫法 B 一个被创建了的进程 在它消灭之前 在任何时刻总是处于3种基本状态之一 C 多个不同的进程可以包含相同的程序 D 一个处于等待队列中的进程 即使进入其他状态 仍然被放在等待队列之中 E 无论何种情况下两个进程可以同时处于运行状态 8 一个单CPU的操作系统共有n个进程 不考虑进程状态过渡的情况 给出运行进程的个数 给出就绪进程的个数 给出等待进程的个数 37 Practice 9 为了实现进程由等待状态转换成就绪状态的状态变化 操作系统应提供 原语 A创建B阻塞C唤醒D等待10 并发进程失去了封闭性是指 A 多个相对独立的进程以各自的速度向前推进B 并发进程的执行结果与速度无关C 并发进程执行时 在不同时刻发生的错误D 并发进程共享变量 其执行结果与速度有关 38 Practice 11 下类各项步骤中 不是创建进程所必需的 A 建立一个进程控制
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026版高三一轮总复习(语文)专项对点练13据类及篇悟神解读文本特征类题(含答案)
- 2025年注册会计师《财务成本管理》真题及答案
- 2025年加油站人员面试题及答案
- 职业暴露防护知识培训考试题及答案
- 英语练习试题附答案
- 高级育婴师考试题(附答案)
- 安全知识考试试题及答案
- 《油漆工》中级试课题及答案
- GCP培训考试题库及参考答案
- 广东教师招聘考试试题及答案2025年
- 护理酒精性肝病课件
- 纪委委员工作职责
- 口腔执业医师助理资格考试模拟试卷带答案
- 关于成立公司双重预防体系领导小组的通知
- 中小学教师职称评审讲课答辩英语学科全英答辩题目汇编(带汉语翻译)
- 【公开课课件】二年级下册写话《彩虹色的花》绘本写话
- 12345职能部门培训
- 房屋招租招标文件
- 北师大版五年级数学上册《第二单元》测试卷及答案
- 2024年网络安全知识竞赛考试题库500题(含答案)
- 短视频与直播电商(全彩微课版) 教学大纲
评论
0/150
提交评论