操作系统原理课件 第四章 并发处理 2 进程概念 进程控制

上传人:我*** 文档编号:141782869 上传时间:2020-08-12 格式:PPT 页数:35 大小:207.50KB
返回 下载 相关 举报
操作系统原理课件 第四章 并发处理 2 进程概念 进程控制_第1页
第1页 / 共35页
操作系统原理课件 第四章 并发处理 2 进程概念 进程控制_第2页
第2页 / 共35页
操作系统原理课件 第四章 并发处理 2 进程概念 进程控制_第3页
第3页 / 共35页
操作系统原理课件 第四章 并发处理 2 进程概念 进程控制_第4页
第4页 / 共35页
操作系统原理课件 第四章 并发处理 2 进程概念 进程控制_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《操作系统原理课件 第四章 并发处理 2 进程概念 进程控制》由会员分享,可在线阅读,更多相关《操作系统原理课件 第四章 并发处理 2 进程概念 进程控制(35页珍藏版)》请在金锄头文库上搜索。

1、第四章 并发处理,4.2 进程概念(process) 4.2.1 进程的定义,在多道程序设计的环境下,为了描述程序在计算机系统内的执行情况,必须引入新的概念进程。,4.2 进程概念(process) 4.2.1 进程的定义,行为的一个规则叫做程序,程序在处理机上执行时所发生的活动称为进程(Dijkstra)。 进程是这样的计算部分,它是可以和其它计算并行的一个计算。(Donovan) 进程(有时称为任务)是一个程序与其数据一道通过处理机的执行所发生的活动。(Alan.C. Shaw) 进程是执行中的程序。(Ken Thompson and Dennis Ritchie ) 教材上给出的进程的定

2、义: 进程,即是一个具有一定独立功能的程序关于某个数据集合的一次活动。,4.2 进程概念(process) 4.2.1 进程的定义,进程与程序的区别与联系: 1、程序是指令的集合,是静态的概念。 进程是程序在处理机上的一次执行的过程,是动态的概念。程序可以作为软件资料长期保存。进程是有生命周期的。 2、进程是一个独立的运行单位,能与其它进程并行(并发)活动。 3、进程是竞争计算机系统有限资源的基本单位,也是进行处理机调度的基本单位。 4、同一个程序可以对应于多个进程。,4.2 进程概念(process) 4.2.2 进程的类型,在系统中同时有多个进程存在,但归纳起来有两大类: 1、系统进程 系

3、统进程起着资源管理和控制的作用。 或者:执行操作系统核心代码的进程。 2、用户进程 执行用户程序的进程。,4.2 进程概念(process) 4.2.2 进程的类型,系统进程与用户进程的区别: 1、系统进程被分配一个初始的资源集合,这些资源可以为它独占,也能以最高优先权的资格使用。用户进程通过系统服务请求的手段竞争使用系统资源; 2、用户进程不能直接做I/O操作,而系统进程可以做直接的I/O操作。 3、系统进程在管态下活动,而用户进程则在用户态下活动。 另一种分类:计算进程,I/O进程等,4.2 进程概念(process) 4.2.3 进程的状态,一、进程的基本状态 进程在系统中的活动规律是:

4、 执行 暂停 执行 进程的三种基本状态: 运行状态 就绪状态 等待状态(又称阻塞、挂起、睡眠),4.2 进程概念(process) 4.2.3 进程的状态,一、进程的基本状态 1、就绪状态(Ready) 存在于处理机调度队列中的那些进程,它们已经准备就绪,一旦得到CPU,就立即可以运行,这些进程所处的状态为就绪状态。(有多个进程处于此状态) 2、运行状态(Running) 当进程由调度/分派程序分派后,得到CPU控制权,它的程序正在运行,该进程所处的状态为运行状态。(在系统中,总只有一个进程处于此状态) 3、等待状态(Wait) 若一个进程正在等待某个事件的发生(如等待I/O的完成),而暂停执

5、行,这时,即使给它CPU时间,它也无法执行,则称该进程处于等待状态。,4.2 进程概念(process) 4.2.3 进程的状态,二、进程状态变迁图 进程的状态不是固定不变的,而是在不断变换。,4.2 进程概念(process) 4.2.3 进程的状态,运行 等待 等待某事件的发生(如等待I/O完成) 等待 就绪 事件已经发生(如I/O完成) 运行 就绪 时间片到 新建进程 就绪 新创建的进程进入就绪状态 就绪 运行 当处理机空闲时,由调度(分派)程序从就绪进程队列中选择一个进程占用CPU。,4.2 进程概念(process) 4.2.4 进程描述,在系统中一个进程存在: 进程控制块(数据结构

6、) 进程的执行程序(一个可执行文件) 进程总是位于某个队列(就绪、等待某事件队列) 处于某种状态(运行、就绪、等待) 占用某些系统资源(内存,打开某些文件、处理机、外设),4.2 进程概念(process) 4.2.4 进程描述,进程控制块 PCB (Process Control Block) 存放进程的管理和控制信息的数据结构称为进程控制块。它是进程管理和控制的最重要的数据结构,在创建时,建立PCB,并伴随进程运行的全过程,直到进程撤消而撤消。PCB就象我们的户口。,4.2 进程概念(process) 4.2.4 进程描述,进程控制块 PCB 1、进程标识符 name 每个进程都必须有一个

7、唯一的标识符,可以是字符串,也可以是一个数字。UNIX系统中就是一个整型数。在进程创建时由系统赋予。 2、进程当前状态 status 说明进程当前所处的状态。 为了管理的方便,系统设计时会将相同的状态的进程组成一个队列,如就绪进程队列,等待进程则要根据等待的事件组成多个等待队列,如等待打印机队列、等待磁盘I/O完成队列等等。,4.2 进程概念(process) 4.2.4 进程描述,3、当前队列指针 next 登记与本进程处于同一队列的下一个进程的PCB的地址。,4.2 进程概念(process) 4.2.4 进程描述,4、总链指针 all-q-next 5、执行程序开始地址 start-ad

8、dr 6、进程优先级 priority 进程的优先级反映进程的紧迫程序,通常由用户指定和系统设置。UNIX系统采用用户设置和系统计算相结合的方式确定进程的优先级。,4.2 进程概念(process) 4.2.4 进程描述,7、CPU现场保护区 cpustatus 当进程因某种原因不能继续占用CPU时(等待打印机),释放CPU,这时就要将CPU的各种状态信息保护起来,为将来再次得到处理机恢复CPU的各种状态,继续运行。例如,我们下课,这时我要记住这次讲到什么地方,下次课接着讲。 8、通信信息 communication information 是指某个进程在运行的过程中要与其它进程进行通信,该区

9、记录有关进程通信方面的信息。,4.2 进程概念(process) 4.2.4 进程描述,9、家族联系 process family 有的系统允许一个进程可创建自已的子进程,子进程还可以创建,一个进程往往处在一个家族之中,就需要记录进程在家族中位置的信息。 10、占有资源清单 own-resource 进程占用系统资源的情况,不同的系统的处理差别很大,UNIX系统中就没有此项。,4.3 进程控制4.3.1 进程控制的概念,进程是有生命周期的,产生、运行、暂停、终止。对进程的这些操作叫进程控制。 进程控制的职责是对系统中全部进程实施有效的管理,它是处理机管理的部分(另一部分是进程调度),当系统允许

10、多进程并发执行时,为了实现共享、协调并发进程的关系,处理机管理必须提供对进程实行有效的管理。,4.3 进程控制4.3.1 进程控制的概念,进程控制包括: 进程创建、 进程撤消、 进程阻塞、 进程唤醒。 这些操作都要对应地执行一个特殊的程序段(操作系统核心程序),同时系统也通过系统调用给用户提供进程控制的功能。教材上叫原语(一种特殊的系统调用)。,4.3 进程控制4.3.1 进程控制的概念,运行状态 等待状态 进程阻塞 等待状态 就绪状态 进程唤醒 新建进程置为就绪状态 进程创建 进程终止(消亡) 进程撤消 就绪状态 运行状态 进程调度,4.3 进程控制4.3.2 进程创建,一个程序(可执行的)

11、如果可分成几个程序段,并且这些程序段可并发执行,用户程序可使用创建程序的系统调用创建多个进程,每个进程执行一个程序段。 进程创建类似于人出生后要到派出所报户口。,4.3 进程控制4.3.2 进程创建,进程创建系统调用: create(name,priority,start-addr),4.3 进程控制4.3.2 进程创建,4.3 进程控制4.3.3 进程撤消,进程完成其任务,希望终止时,调用撤消进程的系统调用(进程撤消原语)撤消进程。相当于一个人死亡后,家人要去派出所消户口。 在一般操作系统中进程撤消的系统调用是:kill,4.3 进程控制4.3.3 进程撤消,4.3 进程控制4.3.3 进程

12、撤消,4.3 进程控制4.3.4 进程挂起,当一个处在运行状态的进程,因等待某个事件的发生(如等待打印机)而不能继续运行时,将调用进程挂起系统调用,把进程的状态置为阻塞状态,并调用进程调度程序(等于让出处理机)。,4.3 进程控制4.3.4 进程挂起,进程从运行状态转换成阻塞状态是由进程挂起原语实现的,因此,调用进程挂起操作是在进程处于运行状态下执行的。它的执行将引起等待某事件的队列的改变。 例如,进程是因等待打印机而进入阻塞状态,则该进程将加入到等待打印机的队列。进程挂起系统调用的算法和队列变化如下。,4.3 进程控制4.3.4 进程挂起,进程挂起的内部调用形式(UNIX系统): sleep

13、(chan,pri) 其中:chan 进程挂起(睡眠)的原因; pri 进程被唤醒后的优先级 一般调用形式: susp(chan) 其中:chan 进程等待的原因,4.3 进程控制4.3.4 进程挂起,4.3 进程控制4.3.4 进程挂起,4.3 进程控制4.3.5 进程唤醒,一个正在运行的进程会因等待某事件(例如,等待打印机)的发生,由运行状态转换成阻塞状态,当它等待的事件发生后,这个进程将由阻塞状态转换成就绪状态。这种转换由进程唤醒操作完成。 调用进程唤醒操作一般在中断处理、进程通信等过程中。例如,打印机完成中断处理程序, 在完成了打印完成的操作后,就去检查等待打印机的队列,若不为空,则调

14、用进程唤醒操作,唤醒一个(或多个)等待打印机的进程。,4.3 进程控制4.3.5 进程唤醒,进程唤醒原语的形式: wakeup(chan) 其中:chan 唤醒进程阻塞的原因。,4.3 进程控制4.3.5 进程唤醒,算法:wakeup 输入:chan:等待的事件(阻塞原因) 输出:无 找到chan的等待队列的指针; for(该队列不为空) 从队列中移出一个进程; 置进程状态为“就绪”,并加入到就绪队列; ,4.3 进程控制4.3.5 进程唤醒,按此算法,是把等待在chan事件上的所有进程唤醒,也有的系统只唤醒一个等待chan事件的进程,若这样处理,等待队列就要按某种优先级排队。 进程唤醒操作会引起就绪队列和等待chan事件的等待队列发生变化。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号