江苏师范大学操作系统第2章课件.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《江苏师范大学操作系统第2章课件.ppt》由用户(晟晟文业)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 江苏 师范大学 操作系统 课件
- 资源描述:
-
1、v 2.1 进程的基本概念进程的基本概念v 2.2 进程控制进程控制v 2.3 进程的同步进程的同步v 2.4 经典进程的同步问题经典进程的同步问题v 2.5 进程通信进程通信 v 2.6 线程线程v程序之间程序之间 在计算机系统中只有一个程序在运行,这个程在计算机系统中只有一个程序在运行,这个程序独占系统中所有资源,其执行不受外界影响。序独占系统中所有资源,其执行不受外界影响。一道程序执行完后另一道才能开始。一道程序执行完后另一道才能开始。v程序内部程序内部 一个程序由若干个程序段组成,而这些程序段一个程序由若干个程序段组成,而这些程序段的执行必须是顺序的,这种程序执行的方式就的执行必须是顺
2、序的,这种程序执行的方式就称为程序的顺序执行。称为程序的顺序执行。v程序的顺序执行程序的顺序执行v语句的顺序执行语句的顺序执行I1C1P1I2C2P2 S1:a=x+y S2:b=a-5 S3:c=b+1S1S2S3v顺序性顺序性 处理机严格按照程序所规定的顺序执行,即每个操作处理机严格按照程序所规定的顺序执行,即每个操作必须在下一个操作开始之前结束必须在下一个操作开始之前结束。v封闭性封闭性 程序一旦开始执行,其计算结果不受外界因素影响。程序一旦开始执行,其计算结果不受外界因素影响。当程序的初始条件给定之后,其后的状态只能由程序本当程序的初始条件给定之后,其后的状态只能由程序本身确定,即只有
3、本程序才能改变它。身确定,即只有本程序才能改变它。资源独占资源独占v程序执行结果的可再现性程序执行结果的可再现性 程序的结果与它的执行速度无关(即与时间无关),程序的结果与它的执行速度无关(即与时间无关),只要给定相同的输入,一定会得到相同的结果。只要给定相同的输入,一定会得到相同的结果。与运行速度无关与运行速度无关 若干个程序同时在系统中运行,这些若干个程序同时在系统中运行,这些程序的执行在时间上是程序的执行在时间上是重迭重迭的,一个程序的,一个程序的执行尚未结束,另一个程序的执行已经的执行尚未结束,另一个程序的执行已经开始,即使这种重迭是很小的,也称这几开始,即使这种重迭是很小的,也称这几
4、个程序是并发执行的。个程序是并发执行的。在系统中有在系统中有3 3个程序,每个程序都有三个处理步骤,个程序,每个程序都有三个处理步骤,输入数据、处理、输出,即输入数据、处理、输出,即I Ii i,C,Ci i,P,Pi i(i=1,2,3)(i=1,2,3)。这些程序在系统中执行时是对时间的偏序,有些操这些程序在系统中执行时是对时间的偏序,有些操作必须在其它操作之前执行,这是有序的,但有些操作作必须在其它操作之前执行,这是有序的,但有些操作是可以同时执行的。例如是可以同时执行的。例如:I1:I1、C1C1、P1P1的执行必须严格的执行必须严格按照按照I1I1,C1C1,P1P1的顺序,而的顺序
5、,而P1P1与与I2I2,C1C1与与I2I2,I3I3与与P1P1是是可以同时执行的。可以同时执行的。I1I2I3C1C2C3P1P2P3若每个操作执行时间是若每个操作执行时间是1分钟,则顺序执行需分钟,则顺序执行需9分钟,并发执行需分钟,并发执行需5分钟分钟v间断性间断性 在并发环境下程序的执行是间断性的:在并发环境下程序的执行是间断性的:执行执行停停执行执行 v失去了程序的封闭性失去了程序的封闭性 由于并发程序共享系统中的资源,因而这些资源由于并发程序共享系统中的资源,因而这些资源的状态可以由多个程序来改变,程序在执行的过程中的状态可以由多个程序来改变,程序在执行的过程中必然会受到其他程
6、序必然会受到其他程序的影响。程序结果的不可再现性程序结果的不可再现性 程序经过多次执行后,虽然它们执行时的环境和程序经过多次执行后,虽然它们执行时的环境和初始条件相同,但得到的结果却各不相同。初始条件相同,但得到的结果却各不相同。count=100;count=100;P PA A S1:N=count;S1:N=count;S2:N=N+100;S2:N=N+100;S3:count=N S3:count=N;P PB B S4:M=count;S4:M=count;S5:M=M+200;S5:M=M+200;S6:count=M;S6:count=M;执行情况:执行情况:(1)P PA A
7、 P PB B,P,PB B P PA A count=400 count=400 (2)S1S1 P PB BS2S3 count=200 count=200(3)S4S4 P PA AS5S6 count=300 count=300 程序与计算不再一一对应程序与计算不再一一对应 在程序顺序执行时,一个程序总是对应一个具体的在程序顺序执行时,一个程序总是对应一个具体的计算,但在程序的并发执行时,可能有多用户共享使用计算,但在程序的并发执行时,可能有多用户共享使用同一个程序,但处理(计算)的对象却是不同的,同一个程序,但处理(计算)的对象却是不同的,例如,在多用户环境下,可能同时有多个用户调用
8、例如,在多用户环境下,可能同时有多个用户调用C C语言的编译程序,这就是典型的一个程序对应多个用户语言的编译程序,这就是典型的一个程序对应多个用户源程序的情况。源程序的情况。注:计算,一个程序的执行。注:计算,一个程序的执行。在多道程序设计的环境下,在多道程序设计的环境下,为了刻划系为了刻划系统内部出现的情况,描述系统内部各程序统内部出现的情况,描述系统内部各程序的活动规律,的活动规律,必须引人新的概念必须引人新的概念进程。进程。进程的概念来自于麻省理工的进程的概念来自于麻省理工的MULTICSMULTICS、IBMIBM的的 TSS/360TSS/360,在,在IBMIBM的的OS/360/
9、370OS/360/370系统系统中也曾叫过任务(中也曾叫过任务(task)task)。各式各样的定义,如:进程是这样的计算部分,它是可以和其它计算并行进程是这样的计算部分,它是可以和其它计算并行的一个计算。的一个计算。(Donovan)(Donovan)进程是执行中的程序。(进程是执行中的程序。(Ken Thompson and Ken Thompson and Dennis Ritchie)Dennis Ritchie)行为的一个规则叫做程序,程序在处理机上执行时行为的一个规则叫做程序,程序在处理机上执行时所发生的活动称为进程(所发生的活动称为进程(Dijkstra)进程是一个程序与其数据
10、一道通过处理机的执行所进程是一个程序与其数据一道通过处理机的执行所发生的活动发生的活动。(Alan.C.ShawAlan.C.Shaw)进程是具有独立功能的程序关于某个数据集合上的进程是具有独立功能的程序关于某个数据集合上的一次运行活动,是系统进行资源分配和调度的独立一次运行活动,是系统进行资源分配和调度的独立单位。单位。例例 板书板书v 进程更能真实地描述并发,而程序不能进程更能真实地描述并发,而程序不能。v 进程是动态的,程序是静态的进程是动态的,程序是静态的。程序是指令的有序集合,。程序是指令的有序集合,其本身没有任何运行的含义,是一个其本身没有任何运行的含义,是一个静态静态的概念。而进
11、程的概念。而进程是程序在处理机上的一次执行过程,它是一个是程序在处理机上的一次执行过程,它是一个动态动态的概念。的概念。v 进程的存在是暂时的,而程序的存在是相对长久的。进程的存在是暂时的,而程序的存在是相对长久的。程序程序可以作为一种软件资料长期存在,而进程是有一定生命期可以作为一种软件资料长期存在,而进程是有一定生命期的。程序是的。程序是永久永久的,进程是的,进程是暂时暂时的。的。v 进程进程=程序程序+数据数据+PCB+PCB。v 同一程序可以对应多个进程,一个进程只对应一个程序。同一程序可以对应多个进程,一个进程只对应一个程序。同一程序同时运行于若干个数据集合上,它将属于若干个同一程序
12、同时运行于若干个数据集合上,它将属于若干个不同的进程。不同的进程。v 进程具有创建其他进程的功能,而程序没有进程具有创建其他进程的功能,而程序没有。v结构性结构性 进程的组成:代码段数据段进程的组成:代码段数据段PCB 又称又称“进程映象进程映象”v动态性动态性 进程是程序执行的过程进程是程序执行的过程;进程有生命期进程有生命期:创建、执行、暂停、消亡创建、执行、暂停、消亡;说明:程序是静态的概念,在机内外都存在,而说明:程序是静态的概念,在机内外都存在,而 进程只存在于系统内部。进程只存在于系统内部。v 并发性并发性 指多个进程实体同时存在于内存中,能在一指多个进程实体同时存在于内存中,能在
13、一段时间内同时运行(并发)。段时间内同时运行(并发)。v 独立性独立性 进程是一个运行的独立单位进程是一个运行的独立单位 系统资源分配和保护的独立单位。系统资源分配和保护的独立单位。v 异步性异步性 进程以各自独立的、不可预知的速度向前推进。进程以各自独立的、不可预知的速度向前推进。v就绪状态(就绪状态(Ready)一个进程已经具备运行条件,但由于无一个进程已经具备运行条件,但由于无CPUCPU暂时不暂时不能运行的状态(当调度给其能运行的状态(当调度给其CPUCPU时,立即可以运行)。时,立即可以运行)。v运行状态(运行状态(Running)进程占有进程占有CPUCPU,并在,并在CPUCPU
14、上运行。上运行。v阻塞状态(阻塞状态(Wait/Blocked)指进程因等待某种事件的发生而暂时不能运行的状指进程因等待某种事件的发生而暂时不能运行的状态。(即使态。(即使CPUCPU空闲,该进程也不可运行)空闲,该进程也不可运行)在进程运行过程中,由于进程自身进展情况及在进程运行过程中,由于进程自身进展情况及外界环境的变化,这三种基本状态可以依据一定外界环境的变化,这三种基本状态可以依据一定的条件相互转换。的条件相互转换。v 就绪就绪 -运行运行 调度程序选择一个新的进程运行调度程序选择一个新的进程运行v 运行运行 -就绪就绪 运行进程用完了时间片运行进程用完了时间片 运行进程被中断,因为一
15、高优先级进程处于就运行进程被中断,因为一高优先级进程处于就绪状态绪状态v 运行运行 -阻塞阻塞 当一进程必须等待时当一进程必须等待时 OSOS尚未完成服务;尚未完成服务;对一资源的访问尚不能进行;对一资源的访问尚不能进行;初始化初始化I/O I/O 且必须等待结果;且必须等待结果;等待某一进程提供输入等待某一进程提供输入 v 阻塞阻塞-就绪就绪 当所等待的事件发生时当所等待的事件发生时运行运行阻塞阻塞就绪就绪1324进程调度进程调度时间片用完时间片用完等待消息或等待消息或I/O完成完成等待的事件等待的事件已发生已发生如果单如果单CPU系统中有系统中有N个进程,运行状态的进个进程,运行状态的进程
16、最多几个,最少几个?就绪状态的进程最多程最多几个,最少几个?就绪状态的进程最多几个,最少几个?阻塞状态的进程最多几个,几个,最少几个?阻塞状态的进程最多几个,最少几个?最少几个?有没有这样的状态转换有没有这样的状态转换 阻塞阻塞运行运行,就绪,就绪阻塞阻塞。一个状态转换的发生,是否一定导致另一个状一个状态转换的发生,是否一定导致另一个状态转换发生,列出所有的可能。态转换发生,列出所有的可能。由于进程的不断创建,系统资源已不能满由于进程的不断创建,系统资源已不能满足进程运行的要求,就必须把某些进程挂起足进程运行的要求,就必须把某些进程挂起(suspendsuspend),对换到磁盘镜像区中,暂时
17、不),对换到磁盘镜像区中,暂时不参与进程调度,起到平滑系统操作负荷的目的。参与进程调度,起到平滑系统操作负荷的目的。(1 1)终端用户的请求)终端用户的请求 (2 2)父进程的请求)父进程的请求 (3 3)负荷调节的需要)负荷调节的需要 (4 4)操作系统的需要)操作系统的需要 挂起就绪态(挂起就绪态(ready suspendready suspend)表明进程具备运行条件但目前在二级存储器中,表明进程具备运行条件但目前在二级存储器中,当它被对换到主存才能被调度执行。当它被对换到主存才能被调度执行。挂起阻塞态(挂起阻塞态(blocked suspendblocked suspend)表明进程
展开阅读全文