操作系统第2章进程管理教材.ppt

  1. 1、本文档共168页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 进程管理;2.1 进程的基本概念 2.2 进程控制 2.3 进程的互斥与同步 2.4 进程的调度 2.5 进程通信 2.6 死锁 2.7 线程 2.8 Linux中的进程管理 ;2.1 进程的基本概念;2.1.1 程序的顺序执行和并发执行;在多道程序设计出现以前,程序的最大特性是“顺序性”,即程序的顺序执行。一个程序通常由若干个程序段组成,它们必须按照某种先后次序执行,前一个操作执行完后,才能执行后继操作,这种计算过程即程序的顺序执行过程。 ;程序顺序执行时的特性: (1) 顺序性 处理机严格按照程序所规定的顺序执行,即每个操作必须在下一个操作开始之前结束。 (2) 封闭性 独占全部资源,程序一旦开始执行,其计算结果不受外界的影响,当程序的初始条件给定之后,其后的状态只能由程序本身确定,即只有本程序才能改变它。 (3) 可再现性 程序执行的结果与初始条件有关,而与执行时间无关。即只要程序的初始条件相同,它的执行结果是相同的,不论它在什么时间执行,也不管计算机的运行速度。 ;2. 多道程序设计的引入;3. 程序的并发执行;程序的并发执行提高了系统的吞吐量,也产生了一些与顺序执行不同的新特点: 制约性 “走走停停”,原因:a、共享资源(硬件资源or软件资源,如同一自变量等);b、相互制约 失去封闭性 共享资源,受其他程序的控制逻辑的影响。 不可再现性 失去封闭性 -失去可再现性;外界环境在程序的两次执行期间发生变化,失去原有的可重复特征。;2.1.2 进程的定义与特征 ;此定义包含有如下的含义: (1)进程是一个动态的概念,而程序是静态的; (2)进程包含了一个数据集合和运行其上的程序; (3)同一程序运行于若干不同的数据集合上时,它将属于若干个不同的进程,或者说,两个不同的进程可包含相同的程序; (4)系统分配资源是以进程为单位的,所以只有进程才可能在不同的时刻处于几种不同的状态,即等待、就绪、运行。 (5)从微观上看,进程是轮换地占有处理机而运行的,从宏观上看,进程是并发地运行的。;2.进程的特征;3. 进程的结构;进程控制块;进程控制块的组成;(1) 进程标识符;(2) 处理机状态信息;(3) 进程调度信息;(4) 进程控制信息; 在一个系统中,通常存在许多进程,为了有效地进行管理,应该用适当的方法将PCB组织起来。目前常用的PCB组织方式有链接方式和索引方式。;;图2.4 PCB索引方式示意图 ;4. 进程和程序的区别;2.1.3 进程的状态及其转换;运行态(Running): 当进程由调度/分派程序(Dispatcher)分派后,进程占有CPU,并在CPU上运行。(注意:在系统中,总只有一个进程处于此状态) 就绪态(Ready): 一个进程已经具备运行条件,但由于无CPU暂时不能运行的状态(当调度给其CPU时,立即可以运行)。 阻塞态(Blocked): 指进程因等待某种事件的发生(请求I/O、申请缓冲空间等)而暂时不能运行的状态。;图2.5 进程状态之间的转换;就绪 -- 运行 调度程序选择一个新的进程运行 运行 -- 就绪 运行进程用完了时间片 运行进程被中断,因为一高优先级进程处于就绪状态 运行 -- 等待 当一进程必须等待时 OS尚未完成服务 对一资源的访问尚不能进行 初始化I/O 且必须等待结果 等待某一进程提供输入 (IPC) 等待 -- 就绪 当所等待的事件发生时;进程三状态模型的内存跟踪示意图;进程之间的状态转换并非都是可逆的,进程既不能从等待变为运行,也不能从就绪变为等待; 进程之间的状态转换并非都是主动的,在很多情况下是“它动的”,事实上,只有运行到等待的转换是进程的主动行为(主动调用调度管理程序),其它都是它动的,如,从执行到就绪,通常是时钟中断引起的,从等待到就绪,是一个进程把另一个进程唤醒。 ;2.2 进 程 控 制;基本概念;2、原语:primitive,是一种特殊的系统调用命令,是由若干条指令构成的用以完成特定功能的一段程序,必须在管态下执行,常驻内存,特点是原子性(不可中断性)。原语的作用是为了实现进程的通信和控制。 进程控制原语包括进程创建原语、进程撤销原语及进程阻塞与唤醒原语等。 ;1. 进程创建;创建原语完成以下工作: (1)建立一个PCB(申请一个空PCB)。 (2)为进程分配内存等必要资源(进程的工作区,存放程序处理的数据集)。 (3)初始化PCB中各项目,如,标识、初始状态为“就绪态”。 (4)PCB插入进程就绪队列。 ;2. 进程撤销;撤消原语的工作: (1)根据ID,从PCB链中查找对应PCB,并检查进程状态; (2)若处于执行态,则立即终止; (3)若还有子进程,则先终止

文档评论(0)

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

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

1亿VIP精品文档

相关文档