- 1、本文档共82页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 进程管理 操作系统课程组 内容回顾 一、进程的定义 曾经的定义 进程是程序的一次执行; 进程是可以和别的计算并发执行的计算; 进程是程序在一个数据集合上运行的过程,它是系统进行资源分配和调度的一个独立单位。 …… 教材中的定义 进程是程序的一次执行,该进程可与其它进程并发执行;它是一个动态的实体,在传统的操作系统设计中,进程既是资源的基本分配单元,也是基本的执行单元。 二、为什么要引入进程的概念? 顺序执行程序 指的是在有多个程序需要执行的情况下,处理器严格按照某一顺序按序执行,每次只执行一个程序。其实质是单道程序系统。 特点 顺序性 资源独占性 可再现性 不足 效率低下 二、为什么要引入进程的概念? 多道程序设计 同一时刻内存中存放了多个作业,处理器交替运行不同的作业。提高了系统的效率,尤其是资源利用率。 特点 多道 宏观上并行 微观上串行 问题 系统管理复杂化 二、为什么要引入进程的概念? 程序并发执行带来的新特征 资源共享性; 独立性和制约性; 程序执行的间断性; 结果不可再现。 二、为什么要引入进程的概念? 与时间有关的错误 二、为什么要引入进程的概念? 结论: 程序的并发执行使得程序的执行情况不可预见,其结果不再唯一,成为一个动态的过程。而程序是一个静态的概念,不再能切实反映程序执行的各种特征(独立性、并发性、动态性)。 三、进程的定义与控制 进程与程序的区别和联系 三、进程的定义与控制 进程的组成 三、进程的定义与控制 进程控制块(PCB) 定义:是操作系统用来记录进程详细状态和相关信息的基本数据结构,它和进程是一一对应的,是进程存在的唯一标识。 作用:提供进程的各种信息,以便操作系统控制和管理。 三、进程的定义与控制 三、进程的定义与控制 操作系统对PCB的管理:集中统一管理 三、进程的定义与控制 进程的创建 操作系统为进程创建进程控制块和分配地址空间的过程就是进程创建的过程。 三、进程的定义与控制 进程的执行 三、进程的定义与控制 进程状态转换及原因 三、进程的定义与控制 三、进程的定义与控制 三、进程的定义与控制 进程的组织管理——队列 三、进程的定义与控制 进程控制 进程控制的主要任务是:创建和撤销进程以及进行进程间的状态转换。这包括: 创建一个进程 撤销一个进程 改变进程状态 实现进程间的通信 这些由操作系统内核通过执行各种原语完成。 三、进程的定义与控制 原语(primitive) 由若干条机器指令构成的可完成特定功能的程序段,它是一个 “原子操作(atomic operation)”过程,作为一个整体而不可分割--要么全都完成,要么全都不做(类似数据库中的“事务”)。原语主要是通过屏蔽各种中断和固化技术保证其原子性的。 分类 进程控制原语 进程通信原语 进程管理原语 其他方面的原语 三、进程的定义与控制 进程的特征 并发性:执行时间可以重叠; 动态性:有生命周期,存在不同的状态; 独立性:独立执行,是资源分配和调度的独立单位; 制约性:虽然独立执行,但可能存在相互制约关系; 异步性:各进程执行时间相对独立,不确定; 结构性:拥有固定结构。 四、进程调度 四、进程调度 确定进程调度算法原则 进程调度的任务是:有效的选择占用CPU的进程,控制协调系统安全、高效的工作。 四、进程调度 进程调度算法 先来先服务调度算法 (FCFS, First Come First Served) 特点: 简单、可靠; 容易理解、实现方便; 非抢占式的。 缺点: 作业的平均等待时间过长,系统效率低下; 不适合于分时系统。 四、进程调度 基于优先数的调度算法 (Priority Scheduling Algorithm) 思想:给每一个进程设置一个优先数(优先级),系统在调度时优先选择具有高优先级的进程占用CPU。具有相同优先数的进程按照FCFS算法执行。 优先数的确定: 运行前:可根据外设的使用情况,运行时间的长短,紧急程度,重要程度等因素确定。 运行中: 1)静态优先数法:进程创建时就规定好它的优先 数,这个数值在进程运行时不变。 2)动态优先数法:进程的优先数在执行过程中可以根据情况变化而改变(UNIX中采用的方法)。 四、进程调度 优点: 灵活。通过不同的优先级设置策略,可以强调不同的性能。 实现也较为方便。 通过优先级的动态调整,可以平衡系统性能。 问题: 静态优先数法——无穷阻塞 (Indefinite Blocking) 进程占用CPU的方式 非抢占式 (不可剥夺式)——FCFS。 抢占式 (可剥夺式)——会使进程频繁调度,在设计时还应考虑进程切换的时间开销。 四、进程调度 时间片轮转法 (RR, Round Robin) 特点:专门为分时系统设计。
文档评论(0)