




已阅读5页,还剩99页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第 3章 进程和处理机管理 目录3 1 进程的概念和定义3 2 进程的状态和进程控制块3. 3 进程控制3 4 进程的互斥与同步3. 5 进程通信3 6 进程调度3 7 死锁3 8 线程3 1 进程的概念和定义操作系统是一个动态系统,在持续的运动过程中完成各种使命、实现各项功能。因此,要了解操作系统各模块间的动态连接关系和相互制约关系就不能用静态的程序概念来刻画操作系统。因此引进一个新的观点 进程观点,以便钻进操作系统内部去观察操作系统各模块的动态变化情况。 3 1 1 为什么引入进程3 1 2 进程的定义3 1 1 为什么引入进程n 应该说,组织用户使用计算机的机制是随着计算机操作系统的发展而进化的。在监督程序时代是以作业形势表示程序运行的。那时,作业以同步方式串行地运行每个作业步。当操作系统发展到分时系统时,为了开发同一个作业中不同作业步之间的并发,作业机制已不能满足需要,因而引进了进程机制,让进程来实现作业步的执行。但随着多处理机计算机的出现,用户希望一个作业步中的程序还能够同时在多个处理机上运行,因此进程的机制得到了进一步发展,让一个进程同时拥有多个线程,让多个线程在不同处理机上运行。 n 1. 算法n 我们可以把算法定义为:问题求解步骤的精确描述。算法具有如下性质:n 解题算法是一个有穷动作序列;n 动作序列仅有一个初始动作;n 序列中每一个动作仅有一个后继动作;n 序列终止表示问题解决还是没有得到解决。n 2. 程序n 程序是对一个复杂的计算(问题)用一种形式化的语言对其初始数据与操作进行形式化描述的一个算法。 n 当一个程序在运行之际,可以区分出三个不同的实体。n (1) 用来描述过程的一组指令,即 “过程 ”;n (2) 处理机,即执行该过程的机构;n (3) 环境,即处理机能够直接感知或能够加以改造的那个外部世界。 “一切听从程序的指挥”。2. 程序n 因此 ,程序的主要特点是:n (1) 按 “过程 ”所规定的操作,以严格顺序来执行,每一步都应在下一步开始之前完成(不存在并行)。这一特点就是我们所说的程序的顺序性。n (2) 环境处在 “程序 ”的完全控制之下,它决不以任何方式变化,除非这种变化是程序所采取的步骤导致的结果。这个特点被称为程序的封闭性。n (3) 除了要求在合理的时间内获得结果外,任一操作所花费的时间对程序的运行而言是无关紧要的,即使在任一操作之间有一暂时间歇也没有关系。程序所产生的结果是其输入数据的函数而与时间无关。只要程序执行的初始条件相同,其结果是可以再现的 。3. 程序的并行执行和资源的共享n 为了合理地使用系统资源,充分发挥各种资源的作用,最大限度地提高系统的效率,引进多道程序设计技术。又由于计算机技术的不断发展而出现了中断技术、分时处理和各种新型结构,如多 CPU系统的出现,导致现代操作系统出现了许多诸如并发性、资源共享性等许多新的特征。n ( 1)并行操作 n ( 2)资源共享4. 程序并行执行的特征n 程序的并行执行虽然增加了系统的处理能力和机器的利用率,但也产生了与顺序程序不同的新特征。n ( 1)失去了程序的封闭性n ( 2)程序并行执行时的相互制约关系3 1 2 进程的定义n 通过上述分析可知,程序在并行执行时已不能描述不封闭性和 “执行 -暂停 -执行 ”活动规律,需要有一种新的概念工具来描述下列特征: n 能描述 “计算 ”这一现象;n 能描述 “执行 -暂停 -再执行 ”这一活动规律;n 能为并行执行的 “计算 ”的制约关系提供协调和共享资源的机构。n 这样的新概念称为进程或任务。 2. 进程与程序的主要区别n (1) 程序只是指令的有序集合,是静态的描述,没有运行的含义,所以程序是静止的;进程是程序的一次运行活动,是动态的概念。n (2) 进程是一个独立运行的单位,共享资源的实体,能与其他进程并发执行,而程序则不然。操作系统中以资源管理的中心思想来看,进程可以看成是资源的顾客和使用者。n (3) 一个程序可以对应多个进程,反过来,一个进程至少对应一段程序。逻辑上,每个进程有自己的处理机和程序,实际上两个进程可以共享同一段程序或同一个处理机,所以进程不等价于程序,也不等价于处理机,它是执行期间的 对。n (4) 静态地观察进程,其实体是由程序和数据两部分构成,与程序没有什么区别。3. 进程的特征n 进程具有如下的特征:n ( 1)动态特征n 进程的实质是并行程序的一次执行过程,因此,动态特征是进程的最基本的特征。其动态性表现在它可以由创建而产生、由调度而执行、由于得不到资源而暂停,由撤消而消亡。进程存在一个生命周期。n ( 2)并行特征n 引入进程的目的是使程序能并行执行,以提高资源的利用率。n ( 3)独立特征n 进程是独立运行的单位,也是系统进行资源分配和调度的独立单位。n ( 4)异步特征n 进程按照各自独立的,不可预知的速度向前推进,所以要求系统提供某种设施使进程间能协调操作和共享资源,保证它们协调运行。n ( 5)结构特征n 进程是有结构的,体现在每个进程有一个记录进程当前信息的进程控制块( PCB Process Control Block)。每个进程都是由一个程序段和相应数据集以及进程控制块三部分组成。在 UNIX操作系统中将这三部分称为 “进程映象 ”,它把进程定义为:进程映象的执行。n 引入进程这一概念后,就可以很方便地动态地描述操作系统了,但引入进程也有不利之处:n (1) 必须为设置进程付出一定的空间开销,因为并行执行的操作系统本身就复杂,如,必须设置进程管理并为并行执行的各进程之间的同步和协调建立某些机构,由于并行执行就必须考虑避免死锁等问题而使系统复杂化。另外,每个进程都必须有一个进程控制块( PCB),它也占用了一部分内存空间。n (2) 必须为设置进程付出一定的时间开销,因为运行一个复杂的系统软件将花费更多的处理机时间。3 2 进程的状态和进程控制块n 3 2 1 进程的状态n 进程是动态的,它存在着生命周期。它有诞生(创建)和灭亡(撤消)过程,在它的生命周期中又反映出它的执行 -暂停 -再执行的活动规律,进程最主要的特征是具有状态。进程在其活动期间具有两种状态:自由状态和等待状态。任一进程在任一时刻有且只有这两种状态之一。自由状态又可分为:运行状态和就绪状态。3 2 1 进程的状态n 就绪状态( Ready) 该进程已经获得了除了处理机以外的全部资源并准备好运行,但由于进程数多于处理机数目,所以此进程不能占用处理机执行,一旦为其分配到处理机该进程便立即执行。 3 2 1 进程的状态n 执行状态( Executive) 进程获得了处理机等必要的资源,该进程已占用处理机,其程序正在处理机上执行。3 2 1 进程的状态n 阻塞状态( Block) 正在执行中的进程,由于发生了某一事件而使之暂时无法执行下去(如,等待 I/O操作完成,或由于同步、互斥而等待)而处于暂停状态,即该进程的运行受到了阻塞(即等待状态或睡眠状态)。 进程的三种不同状态 就绪 阻 塞执 行进程的状态3 2 2 进程的状态演变n进程的状态不是一成不变的,它是随着自身的推进和外界条件的变化而变化的。下图为简单的进程状态演变图及演变事由。进程调度执 行就 绪 阻 塞事件结束时间片到图 3-5 简单的进程状态演变图n 应该说明的是 :n ( 1)在进程的生命周期中,处于执行状态的进程因为某一事件(如 I/O请求等事件)出现而变成阻塞状态,当该事件消除后,被阻塞的进程并不恢复到执行状态,而转变为就绪状态等待再一次重新被进程调度程序调度。这是因为当该进程被阻塞时,为了使处理机不空闲,进程调度程序立即将处理机分配给另一个处于就绪状态的进程。n ( 2)当进程从运行状态变为就绪或阻塞状态时,必须保留它的运行的现场信息,以便将来恢复运行。n ( 3)处于同一状态的进程可以构成队列,系统中可以有一个运行队列、但是在只有一个处理机的情况下,任一时刻处于运行状态的进程只能有一个。系统中可以有一个或多个就绪队列和若干个等待队列,由于同一个原因而等待的进程应该属于同一个等待队列,相应每个队列设有指针,指向相应队列的首部。相应队列指针名称 状态 现场 优先数 指针Proc2 Run 87 0Proc3 Block 78 5Proc4 Block 75 0Proc5 Block 65 0Proc6 Ready 51 8Proc7 Block 44 9Proc8 Ready 37 nProc9 Block 29 0Procn Ready 1 026137runningreadyC1C2C3CmProc1 Block 89 4进程队列 时间片到进程调度事件结束某一事件用户 提交 收容 就绪 阻塞完成用户执行进程状态模型进程调度发生某一事件时间片到 挂起唤醒执 行活动就绪静止就绪活动阻塞激活挂起唤醒激活挂起静止阻塞创建具有挂起状态的进程状态转换图3 2 3 进程控制块( Process control block)n 在进程的生命周期中,进程可以处于各种不同的状态,如何描述进程及其状态?进程控制块是表示进程存在的唯一实体。当创建一个进程时,必须为其设置一个进程控制块( PCB),由它对进程进行管理和控制。n 不同系统的进程控制块所包含的信息不尽相同,大体上都包括以下几项:n ( 1)进程标识符( Identification)n ( 2)现行状态( Status)n ( 3) CPU状态保护区n ( 4)进程程序的起始地址n ( 5)资源清单n ( 6)进程优先数n ( 7)队列指针或队列表n ( 8)进程的家族信息3. 3 进程控制进程控制的功能是对系统中的全部进程实施有效的管理,它有创建进程和撤消进程的能力。1 . 进程家族与分类2 . 进程控制的基本操作3 3 1 进程家族与分类n 1. 进程家族n 进程的家族结构有两种:一种是非结构系统;另一种是树型结构系统 。n 在非结构系统中管理程序直接对全部进程实施管理,它可以实施创建进程和撤消进程等操作。各进程之间的关系也是 “平等 ”的。 n 在树型结构的进程家族中,一个父进程可以创建一个子进程而形成一个进程家族。如图 3-9( a)给出了非结构系统进程家族示意图 ;图 3-9( b)给出了树型结构的进程家族的示意
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年学历类自考传播学概论-政治学概论参考题库含答案解析(5卷)
- 押题宝典教师招聘之《幼儿教师招聘》考试题库及答案详解【历年真题】
- 2025年学历类自考中国行政史-学前教育史参考题库含答案解析(5卷)
- 2025年学历类自考中国法制史-金融理论与实务参考题库含答案解析(5卷)
- 海运船期合同(标准版)
- 火锅供货合同(标准版)
- 2025统计师试题及答案
- 2025年学历类自考中国古代文学史(二)-公共关系学参考题库含答案解析(5卷)
- 2025年教师招聘之《幼儿教师招聘》通关题库附答案详解(基础题)
- 婚介服务合同(标准版)
- 职高数学公式与定理表
- 2024年四川遂宁川能水务有限公司招聘笔试参考题库含答案解析
- 射频同轴电缆组件市场需求分析报告
- 第1课 社会主义在中国的确立与探索【中职专用】高一思想政治《中国特色社会主义》(高教版2023基础模块)
- 传统建筑元素在现代建筑中应用
- 王道勇保障和改善民生
- 医疗法律法规知识培训
- 血友病课件完整版
- 临床职业素养
- 种子学-种子的化学成分课件
- 手术室无菌技术 课件
评论
0/150
提交评论