- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第三章 进 程 管 理 掌握 多道程序系统的特点 进程的引入和定义 进程的状态及状态变迁 进程的描述:PCB 了解 进程的控制 1、进程的引入 进程的概念是操作系统中最基本、最重要的概念。它是在多道程序系统出现以后,为了刻画系统内部出现的情况,描述系统内部各作业的活动规律而引进的一个新概念,它是对程序的抽象。 多道程序系统的特点 并行性 在主存中同时存放多道作业,充分利用系统资源。 制约性 各程序同时存在于主存,可能因为竞争同一资源(如处理器、外部设备)而相互制约。 动态性 各程序在系统中所处的状态在不变化。 2、进程的概念 定义:Process 进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立单位。 它对应处理机、存储器和外设等资源的分配和回收; 引入多进程,提高了对硬件资源的利用率,但又带来额外的空间和时间开销,增加了OS 的复杂性; 进程与程序的区别 进程是动态的,程序是静态的:程序是有序代码的集合;进程是程序的执行。通常进程不可在计算机之间迁移;而程序通常对应着文件、静态和可以复制。 进程是暂时的,程序的永久的:进程是一个状态变化的过程,程序可长久保存。 进程与程序的组成不同:进程的组成包括程序、数据和进程控制块(即进程状态信息)。 进程与程序的对应关系:通过多次执行,一个程序可对应多个进程;通过调用关系,一个进程可包括多个程序。 进程的性质 并行性:各进行按各自独立的,不可预知的速度并发推进。并发和异步特性会导致程序执行的不可再现性。 制约性:并发进程之间存在着制约性,在进行的关键点上需要相互等待或互通消息。 动态性:进程是程序在数据集合上的一次执行过程,是动态概念;而程序是一组有序指令序列,是静态概念。 进程有一个生命过程:创建、运行、等待等。 进程具有动态的地址空间(数量和内容),地址空间上包括: 代码(指令执行和CPU状态的改变) 数据(变量的生成和赋值) 系统控制信息(进程控制块的生成和删除) 进程的性质 结构性:包括数据集合和运行于其上的程序。 代码段、数据段和核心段(在地址空间中);程序文件中通常也划分了代码段和数据段,而核心段通常就是OS核心(由各个进程共享,包括各进程的PCB) 共享性:同一程序同时运行于不同数据集合上时,构成不同的进程。 独立性:是系统中资源分配和保护的基本单位,也是系统调度的独立单位(单线程进程)。每个进程的地址空间相互独立,除非采用进程间通信手段; 3、进程的状态 运行状态(Running):进程占有CPU,并在CPU上运行。处于此状态的进程的数目小于等于CPU的数目。 在没有其他进程可以执行时(如所有进程都在阻塞状态),通常会自动执行系统的idle进程(相当于空操作)。 就绪状态(Ready):进程已获得除处理机外的所需资源,等待分配处理机资源;只要分配CPU就可执行。 可以按多个优先级来划分队列,如:时间片用完-低优,I/O完成-中优,页面调入完成-高优 等待状态(Blocked):指进程因等待某种事件的发生而暂时不能运行的状态(即使CPU空闲,该进程也不可运行)。等待的事件可以为:I/O操作或进程同步等。 进程状态转换 在进程运行过程中,由于进程自身进展情况及外界环境的变化,这三种基本状态可以依据一定的条件相互转换。 ? 就绪—运行 ? 运行—就绪 ? 运行—等待 ? 等待—就绪 进程的状态转换 进程转换 就绪 -- 运行 调度:调度程序选择一个新的进程运行 该转换可以由其他转换引起 运行 -- 就绪 运行进程用完了时间片 运行进程被中断,因为一高优先级进程处 于就绪状态 该转换可以引起其他转换发生 进程转换(续) 运行 -- 等待 当一进程必须等待某事件发生, OS尚未完成服务 对一资源的访问尚不能进行 初始化I/O 且必须等待结果 等待某一进程提供输入 (IPC) 可以引起其他转换发生 等待 -- 就绪 当所等待的事件发生时 三状态进程模型(单队列结构) 进程的挂起和解挂 为了更好的管理和调度进程及适应系统的功能目标,许多系统都有“挂起”和“解挂”一个进程的功能,原因在于: 系统有时可能出故障或某些功能受到破坏,需要暂时将系统中的进程挂起,以便故障消除后再恢复。 用户在执行自己的作业过程中,要求挂起他的进程,以便进行某些检查和改正。 系统中负载过重,资源相对不足,造成系统效率下降,需要挂起一部分进程以调整系统负荷 具有挂起功能的进程状态变化 事件发生 挂起 解除挂起 时间片完成 被调度 挂起 时间发生 挂起 解除挂起 等待事件 状态 就绪状态(Readya):进程在内存且可立
文档评论(0)