《计算机操作系统》课件OS-chapter 3.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《《计算机操作系统》课件OS-chapter 3.ppt》由用户(momomo)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机操作系统 计算机操作系统课件OS-chapter 计算机 操作系统 课件 OS chapter
- 资源描述:
-
1、第三章 进程管理 v进程的定义、特征、进程控制的基本概念。进程的定义、特征、进程控制的基本概念。v进程进程PCB基本结构,作用及基本结构,作用及进程的状态及转换进程的状态及转换。v进程同步与互斥的基本概念和解决方法。进程同步与互斥的基本概念和解决方法。v几个经典的进程同步与互斥问题及算法几个经典的进程同步与互斥问题及算法。v进程通信的类型及实现方法进程通信的类型及实现方法v线程的基本概念及状态。线程的基本概念及状态。v难点难点:v进程的同步与互斥进程的同步与互斥本章重点:本章重点:v进程的基本概念进程的基本概念 v进程进程的的描述描述v进程的状态及其转换进程的状态及其转换 v进程控制进程控制
2、v进程互斥进程互斥v进程同步进程同步v进程通信进程通信 v线程线程v小结小结 3.1进程的概念 一、程序的顺序执行与特征一、程序的顺序执行与特征 1.程序:程序:完成一定功能的、按前后顺序执行的指令集完成一定功能的、按前后顺序执行的指令集合,它可以分成若干指令串。合,它可以分成若干指令串。2.程序的执行过程:程序的执行过程:S1:a=513.程序的顺序执行:程序的顺序执行:一个具有独立功能的程序独占处理机一个具有独立功能的程序独占处理机直至最终结束的过程称为程序的顺序执行。直至最终结束的过程称为程序的顺序执行。Repeat IR pc Until CPU Halt 输入数据输入数据 输出结果输
3、出结果 计算计算ICPS2:b=a*5S4:d=a+b*b+c*2S3:c=a+bMpc pc+1 Execute(instruction IR)4.程序顺序执行的特征:程序顺序执行的特征:(1)顺序性:每一个操作都必须在上一个操作完成顺序性:每一个操作都必须在上一个操作完成之后开始之后开始内:语句之间、指令之间内:语句之间、指令之间外:程序之间外:程序之间(3)可再现性:可再现性:只要程序的运行环境及输入条件相只要程序的运行环境及输入条件相同,输出结果肯定相同。同,输出结果肯定相同。(2)封闭性:封闭性:资源独占,只有运行的程序能够改变资资源独占,只有运行的程序能够改变资源状态,每个程序的执
4、行不会受到外部因素的影响。源状态,每个程序的执行不会受到外部因素的影响。二、前趋图二、前趋图前趋图前趋图(Directed Acyclic Graph):):是一个有向非循环图,图中每个节点可以表示一条语句,是一个有向非循环图,图中每个节点可以表示一条语句,一个程序或进程,节点之间的有向边表示节点之间的前一个程序或进程,节点之间的有向边表示节点之间的前趋关系(趋关系(Precedence Relation)或半序关系()或半序关系(Partial Order)(Pi,Pj)没有前趋的节点称为初始节点没有前趋的节点称为初始节点。=“”|Pj必须在必须在Pi完成之后开始执行完成之后开始执行 Pi称
5、为称为Pj的的直接前趋直接前趋,Pj称为称为Pi的的直接后继直接后继。如果:(如果:(Pi,Pj),则,则,Pi Pj 如果:如果:Pi Pk Pj Pi称为称为Pj的的前趋前趋,Pj称称为为Pi的的后继后继。没有后继的节点称为终止节点没有后继的节点称为终止节点。S1:a=51S2:b=a*5S4:d=b*b+c*2S3:c=a+6该图是否为前趋图?该图是否为前趋图?为什么?为什么?该图是否为前趋图?该图是否为前趋图?为什么?为什么?三、多道程序的并发执行与特征三、多道程序的并发执行与特征。1多道程序并发执行的逻辑分析多道程序并发执行的逻辑分析但对于多个程序,并不一定存在关系:但对于多个程序,
6、并不一定存在关系:Pi Ii+1可以:第一个程序的输入结束并开始计算时,第二个程序可以:第一个程序的输入结束并开始计算时,第二个程序的输入工作开始进行,从而第一个计算和第二个输入可以的输入工作开始进行,从而第一个计算和第二个输入可以并行进行。并行进行。IiCiPiI1I2C1I3C2P1I4p2P3C3Ii CiIi Ii+1Ci Ci+1Ci PiPi Pi+12多道程序并发执行的系统实现多道程序并发执行的系统实现处理器的主要功能是执行驻留在内存中的指令,为了处理器的主要功能是执行驻留在内存中的指令,为了提高效率,处理器可以同时执行多道程序。对于处理提高效率,处理器可以同时执行多道程序。对于
7、处理器而言,对全部指令的执行是按一定顺序进行的,这器而言,对全部指令的执行是按一定顺序进行的,这个顺序的改变是通过改变程序计数器(个顺序的改变是通过改变程序计数器(PC)或称为指)或称为指令指示器令指示器(IP)的值来完成的。的值来完成的。例:程序例:程序A的起始地址为的起始地址为51200,共,共12条指令;程序条指令;程序B的起始地址为的起始地址为81920,共,共4条指令,其中第条指令,其中第4条指令包条指令包括括I/O指令;程序指令;程序C的起始地址为的起始地址为194560,共,共12条指条指令;分派程序的起始地址为令;分派程序的起始地址为20480,共,共6条指令;三个条指令;三个
8、程序以及分派程序均在内存,操作系统每次执行程序以及分派程序均在内存,操作系统每次执行6条条用用户程序指令后就会自动终止当前用户程序,转去执行户程序指令后就会自动终止当前用户程序,转去执行分派程序。每条指令需要一个指令周期,则程序的执分派程序。每条指令需要一个指令周期,则程序的执行过程如下:行过程如下:7 20480 8 204819 20482102048311204841220485 13 8192014 8192115 81922 16 81923 I/O请求请求 1.512002.512013.512024.512035.512046.51205 超时超时1720480182048119
9、20482202048321204842220485231945602419456125194562261945632719456428194565超时超时29 2048030 2048131 2048232 2048333 2048434 2048535 5120636 5120737 5120838 5120939 5121040 5121141 2048042 2048143 2048244 2048345 2048446 2048547 19456648 19456649 19456750 19456851 19456952 1945703多道程序并发执行的定义多道程序并发执行的定义并
10、发执行:为了增强计算机系统的处理能力和提高资源的并发执行:为了增强计算机系统的处理能力和提高资源的利用率所采用的一种同时操作技术。利用率所采用的一种同时操作技术。使若干进程都处于已使若干进程都处于已经开始执行和尚未执行完成的状态。经开始执行和尚未执行完成的状态。多道程序的并发执行分两种情况多道程序的并发执行分两种情况:多道程序系统的程序执行环境变化引起的多道程序的并多道程序系统的程序执行环境变化引起的多道程序的并发执行发执行(多道程序系统环境下,各道程序在逻辑上独立,(多道程序系统环境下,各道程序在逻辑上独立,具备了执行的条件)。具备了执行的条件)。在某道程序的几个程序段中,包含着一部分可以同
11、时执在某道程序的几个程序段中,包含着一部分可以同时执行或顺序颠倒执行的代码。行或顺序颠倒执行的代码。4.多道程序并发执行的特征:多道程序并发执行的特征:(2)间断性:间断性:程序并发执行时,由于(程序并发执行时,由于(a)它们共享)它们共享软、硬件资源软、硬件资源(b)程序之间相互合作完成一项共同任程序之间相互合作完成一项共同任务,因而使程序之间相互制约。这种制约导致并发程务,因而使程序之间相互制约。这种制约导致并发程序具有序具有“执行执行-暂停暂停-执行执行”这种间断活动的特点。这种间断活动的特点。(1)失去了封闭性:失去了封闭性:多道程序相互影响。多道程序相互影响。(3)独立性:独立性:系
12、统把每个程序作为一个独立单位来进系统把每个程序作为一个独立单位来进行分配,并发程序在运行过程中,既然是作为一个独立行分配,并发程序在运行过程中,既然是作为一个独立的运行实体,它也必然具有作为一个单位去获得资源的的运行实体,它也必然具有作为一个单位去获得资源的独立性。独立性。(4)随机性:随机性:有可能失去可再现性,由于公用变量的存有可能失去可再现性,由于公用变量的存在,使程序由于微观上的执行顺序不同而产生不同的结在,使程序由于微观上的执行顺序不同而产生不同的结果。果。四、四、Bernstain条件条件。程序的不可再现性是绝对不允许的,为此,应采取程序的不可再现性是绝对不允许的,为此,应采取某种
13、措施使并发程序保持其可再现性。某种措施使并发程序保持其可再现性。Si、Sj:程序段或语句。程序段或语句。R(Si):):Si所涉及的读变量的集合。所涉及的读变量的集合。W(Si):):Si所涉及的写变量的集合。所涉及的写变量的集合。Si与与Sj可并发执行的条件:可并发执行的条件:R(Si)W(Sj)=R(Sj)W(Si)=W(Sj)W(Si)=同时成立同时成立 例:S1:C=X+Y+Z S2:D=C+XR(S1)=X,Y,Z R(S2)=C,X W(S1)=C W(S2)=D S1:x=x1+x2 S2:y=x1*x2 S3:z=(x+y)/2S4:w=z+5S5:m=w+1S6:m=m+1不
14、能并发!五、进程的定义五、进程的定义进程:进程:一个具有独立功能的程序对某个数据集合在处一个具有独立功能的程序对某个数据集合在处理机上的一次执行过程。理机上的一次执行过程。它是操作系统进行它是操作系统进行资源分配资源分配的基本单位。的基本单位。操作系统所应满足的主要要求都与进程有关:操作系统所应满足的主要要求都与进程有关:操作系统必须能够同时执行多个进程以最大限度地操作系统必须能够同时执行多个进程以最大限度地利用处理器,并为每个进程提供合适的响应时间。利用处理器,并为每个进程提供合适的响应时间。操作系统必须按一定的策略为进程分配资源并避免死锁。操作系统必须按一定的策略为进程分配资源并避免死锁。
15、操作系统应支持进程间的通信并能创建用户进程。操作系统应支持进程间的通信并能创建用户进程。操作系统的操作系统的主要职责就是控制进程的执行主要职责就是控制进程的执行。六、进程的特征六、进程的特征动态性:动态性:进程是程序的一次执行过程。因此,进程是程序的一次执行过程。因此,动态特动态特征是进程的最重要特征征是进程的最重要特征 并发性:并发性:只有建立了进程的程序才能并发执行,引入只有建立了进程的程序才能并发执行,引入进程的目的就是为了使它所对应的程序和其他进程并发进程的目的就是为了使它所对应的程序和其他进程并发执行,以提高系统资源的利用率。执行,以提高系统资源的利用率。独立性:独立性:每个进程都有
16、各自独立的功能。进程是一个每个进程都有各自独立的功能。进程是一个能独立运行的单位,也就是竞争计算机资源和进行处理能独立运行的单位,也就是竞争计算机资源和进行处理机调度的基本单位。机调度的基本单位。结构特征:结构特征:每个进程都配有一个每个进程都配有一个PCB,每个进程都有程,每个进程都有程序段、数据段和序段、数据段和PCB三部分组成。三部分组成。异步性(异步性(相互制约性):由于进程之间的相互制约,使相互制约性):由于进程之间的相互制约,使其具有执行的间断性。既:进程按各自独立的不可预知的其具有执行的间断性。既:进程按各自独立的不可预知的速度向前推进。速度向前推进。七、进程与程序的比较七、进程
17、与程序的比较状状态态存在存在方式方式所需所需资源资源包含关系包含关系并发并发 性性进程进程程序程序动动静静生命生命期短期短永久永久内存、外内存、外存、存、CPU外存外存进程包进程包含程序含程序程序不程序不包含进程包含进程有有无无3.2进程的描述PCB进程包括:程序段、数据段、进程包括:程序段、数据段、PCB二、二、PCB的内容:的内容:1.描述信息:描述信息:进程标识符(进程标识符(PID)或进程名)或进程名:用来唯一标识进程。:用来唯一标识进程。家族信息(家族信息(Family):):进程所属家族,即:进程的父进程所属家族,即:进程的父进程和子进程等。进程和子进程等。用户标识符(用户标识符(
18、UID)或用户名)或用户名:进程所属用户,利于:进程所属用户,利于进行资源共享和信息保护。进行资源共享和信息保护。一、作用:一、作用:PCB中包含了进程的中包含了进程的控制信息和描述信息控制信息和描述信息,是进程动态特征的集中体现。是进程动态特征的集中体现。PCB是系统感知进是系统感知进程存在的唯一标志。程存在的唯一标志。处理机状态处理机状态(CPU):):处理机的各种寄存器的内容,处理机的各种寄存器的内容,包括:通用寄存器(用户可视寄存器)、指令计数器、包括:通用寄存器(用户可视寄存器)、指令计数器、程序状态字、用户栈指针。程序状态字、用户栈指针。2.控制信息控制信息进程的状态(进程的状态(
19、Status):进程所处的状态,就绪,:进程所处的状态,就绪,运行,等待。运行,等待。进程优先级(进程优先级(Priority):处理机调度的依据,其:处理机调度的依据,其值取决于进程执行的紧迫程度以及进程占用值取决于进程执行的紧迫程度以及进程占用CPU的时间,占据内存时间、占据其他资源等情况的时间,占据内存时间、占据其他资源等情况 程序程序和数据和数据的起始地址(的起始地址(Start):进程所对应的程:进程所对应的程序的起始地址。序的起始地址。通信信息(通信信息(Communication):该进程在运行过:该进程在运行过程中与其他进程交换信息的情况。消息队列指针、信程中与其他进程交换信息
20、的情况。消息队列指针、信号量等号量等记时信息(记时信息(TIME):记录进程等待:记录进程等待CPU的时间、已的时间、已占有占有CPU的时间等以及使用其他资源的时间的时间等以及使用其他资源的时间占内存大小,位置(占内存大小,位置(RAM)及其管理用数据结构。)及其管理用数据结构。外存交换区位置外存交换区位置(SWAP)共享区位置,大小共享区位置,大小(SHARE)打开文件情况打开文件情况(FILE)外设情况外设情况(DEVICE)PCB指针指针(PCBPtr)进程控制块进程控制块PCB是系统感知进程存在的唯一标志。是系统感知进程存在的唯一标志。系统对进程的各种操作通过对系统对进程的各种操作通过
21、对PCB的操作的操作实现。实现。三、三、进程进程组织:不同系统组织方式不同:组织:不同系统组织方式不同:链接、索引链接、索引四、四、存在区存在区:PCB的常用部分常驻内存系统区,其他的常用部分常驻内存系统区,其他部分放在外存。部分放在外存。执行指针执行指针就绪队列指针就绪队列指针阻塞队列指针阻塞队列指针空闲队列指针空闲队列指针PCB1 4PCB2 3PCB3 0PCB4 8PCB5 PCB6 7PCB7 9PCB8 0PCB9 3.3进程的状态及其转换进程的状态及其转换一、进程的基本状态进程的基本状态 1.就绪状态(就绪状态(READY):进程获得除处理机以外的所:进程获得除处理机以外的所 有
22、资源,等待处理机。有资源,等待处理机。2.运行状态(运行状态(RUNNING):进程正在占有处理机,其对:进程正在占有处理机,其对应的程序正在处理机上运行。单处理机系统中,只能应的程序正在处理机上运行。单处理机系统中,只能有一个进程处于运行状态。有一个进程处于运行状态。3.等待状态等待状态/阻塞状态(阻塞状态(WAITING/BLOCKED):进程:进程正在等待某件事情的发生无法继续运行下去而放弃正在等待某件事情的发生无法继续运行下去而放弃处理机。处理机。5.终止(终止(EXIT):进程已正常或异常结束,被:进程已正常或异常结束,被OS从可运从可运行进程队列中释放出来行进程队列中释放出来 4.
23、创建创建/初始初始(NEW):):进程刚刚创建,还没有被处理进程刚刚创建,还没有被处理机提交到可运行进程队列中。机提交到可运行进程队列中。二、进程的状态转换:二、进程的状态转换:1三种状态的进程状态转换图三种状态的进程状态转换图 就 绪就 绪阻塞阻塞运行运行创建创建 进程调度进程调度 时间片到时间片到 I/O请求请求 I/O完成完成终止终止 2五种状态的进程状态转换图五种状态的进程状态转换图 就 绪就 绪阻塞阻塞运行运行准许准许 进程调度进程调度 时间片到时间片到 I/O请求请求 I/O完成完成 完成完成 初 始初 始终止终止3具有挂起状态的进程状态转换图具有挂起状态的进程状态转换图 活动活动
24、就绪就绪活动活动阻塞阻塞运行运行准许准许 进程调度进程调度 时间片到时间片到 等待某件事情等待某件事情 完成完成 初 始初 始终止终止静静止止就就绪绪静止静止阻塞阻塞 挂起挂起 激活激活 挂起挂起 激活激活 等待的事情发生等待的事情发生 等待的事情发生等待的事情发生 挂起挂起 3进程状态间转换关系表进程状态间转换关系表原状态原状态转换后状态转换后状态创建创建运行运行就绪就绪阻塞阻塞终止终止OS根据作业控制请求,根据作业控制请求,分时系统用户登录,分时系统用户登录,进程创建子进程进程创建子进程创建创建OS准备运行准备运行新进程新进程运行运行时间片到,时间片到,OS响应更响应更高优先级高优先级的进
25、程的进程OS服务请求,服务请求,资源请求,资源请求,事件请求。事件请求。进程完成进程完成进程夭折进程夭折就绪就绪被分派程序被分派程序选中选中被父进程终止被父进程终止阻塞阻塞事件发生事件发生被父进程终止被父进程终止说明:一般的操作系统为了管理方便,根据等待的事件设置多个说明:一般的操作系统为了管理方便,根据等待的事件设置多个阻塞队列,将等待不同事件的进程放在不同的等待队列中。阻塞队列,将等待不同事件的进程放在不同的等待队列中。3.4进程控制进程控制 进程控制:系统使用一些具有特定功能的程序来进程控制:系统使用一些具有特定功能的程序来创建创建、撤撤消消进程以及进程以及完成进程各状态间的转换完成进程
展开阅读全文