进程管理--4.ppt





《进程管理--4.ppt》由会员分享,可在线阅读,更多相关《进程管理--4.ppt(86页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1操作系统进程管理操作系统进程管理张其亮张其亮 Email:2内内 容容l进程概念进程概念l进程状态和控制进程状态和控制l进程调度进程调度l进程互斥与同步进程互斥与同步l死锁死锁3概概 要要目前的计算机系统基本是多道系统,而系统中一般只有一个处理目前的计算机系统基本是多道系统,而系统中一般只有一个处理机。多机。多个程序竞争个程序竞争使用处理机,所以有效的管理分配处理机非常使用处理机,所以有效的管理分配处理机非常重要。重要。为了准确描述多道系统中多为了准确描述多道系统中多个程序的个程序的运行状况,以及资源的管理运行状况,以及资源的管理分配情况,引入了进程的概念。分配情况,引入了进程的概念。4程序
2、的执行程序的执行l程序的执行程序的执行u程序概念程序概念 一组一组有序有序的的操作操作序列序列 有序:指操作必须按照严格的先后顺序有序:指操作必须按照严格的先后顺序 操作:指由机器指令、高级语言语句实现的某种特定功能操作:指由机器指令、高级语言语句实现的某种特定功能l程序执行方式程序执行方式顺序执行顺序执行并发执行并发执行5l程序的顺序执行程序的顺序执行早期的计算机是单道系统,每次只能执行一个用户作业,该作业早期的计算机是单道系统,每次只能执行一个用户作业,该作业独占资源。独占资源。u若有多个用户作业需要在系统中运行时,只能执行完一个作业后若有多个用户作业需要在系统中运行时,只能执行完一个作业
3、后再运行另外一个作业。再运行另外一个作业。u当一个作业由多个程序或程序段组成,则必须执行完一个程序或当一个作业由多个程序或程序段组成,则必须执行完一个程序或程序段后在执行另外一个。程序段后在执行另外一个。6l单道系统中的顺序执行单道系统中的顺序执行程序本身操作必须按照顺序执行程序本身操作必须按照顺序执行多个程序或程序段只能使用处理机依次顺序执行,而不能同时执多个程序或程序段只能使用处理机依次顺序执行,而不能同时执行。行。I1C1P1P2I2C27l顺序程序特点:顺序程序特点:顺序性。顺序性。封闭性。封闭性。程序程序 运行时独占全部资源,只有该程序才能改变资源的状态运行时独占全部资源,只有该程序
4、才能改变资源的状态,一旦一旦开始运行,其执行结果不受外界因素的影响。开始运行,其执行结果不受外界因素的影响。可再现性。可再现性。如果程序在不同时间重复运行,只要初始条件相同,结果就相同如果程序在不同时间重复运行,只要初始条件相同,结果就相同8l程序的并发执行程序的并发执行 出现多道系统后,处理机可以同时运行多个用户的程序,程序的执出现多道系统后,处理机可以同时运行多个用户的程序,程序的执行方式也发生了改变,从顺序执行到并发执行。行方式也发生了改变,从顺序执行到并发执行。并发执行概念并发执行概念 若干个程序或程序段可以使用处理机同时执行,它们在执行时时若干个程序或程序段可以使用处理机同时执行,它
5、们在执行时时间可以重叠。间可以重叠。9程序1程序2程序3I1I3I2P1C1C2P2C3P3时间10l并发执行特点:并发执行特点:并发行并发行 一个程序或程序段的执行尚未结束,另一个程序或程序段的执行一个程序或程序段的执行尚未结束,另一个程序或程序段的执行已经开始已经开始开放性开放性 程序运行环境开放,运行时要受到外界的影响,因为并发程序共享程序运行环境开放,运行时要受到外界的影响,因为并发程序共享系统资源系统资源间断性间断性不可再现性不可再现性 由资源的开放性引起的由资源的开放性引起的11例如:有两个循环程序例如:有两个循环程序A和和B,它们共享一个变量,它们共享一个变量N。程序。程序A每执
6、每执行一次时都要做行一次时都要做N:N1操作;程序操作;程序B每执行一次时,都要每执行一次时,都要做做print(N)操作,然后再将)操作,然后再将N置成置成“0”,程序,程序A和和B以不同以不同的速度运行。(假定某时刻变量的速度运行。(假定某时刻变量N的值为的值为n)l(1 1)N:N1在在print(N)和)和N:0之前,此时得到的之前,此时得到的N值分别为值分别为n1,n1,0(2)N:N1在在print(N)和)和N:0之后,此时得到的之后,此时得到的N N值分别为值分别为n,0,1(3)N:N1在在print(N)和)和N:0之间,此时得到之间,此时得到的的N N值分别为值分别为n,
7、n1,012进进 程程l为什么要引入进程?为什么要引入进程?程序本身是一个静态的内容,不能表现其运行过程。程序本身是一个静态的内容,不能表现其运行过程。一个程序在运行时,可能有多个过程,单靠程序的概念无法对多一个程序在运行时,可能有多个过程,单靠程序的概念无法对多个过程进行描述个过程进行描述(当我们打开(当我们打开2个个qq时会看到时会看到windows进程中会存在进程中会存在2个个qq.exe进程,进程,但它们都运行的是同一个但它们都运行的是同一个qq程序,用程序如何描述呢?)程序,用程序如何描述呢?)*引入进程描述程序在执行过程中的动态行为。引入进程描述程序在执行过程中的动态行为。13进程
8、概念进程概念 l进程的定义和特性进程的定义和特性u进程的定义进程的定义 进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活进程是一个具有一定独立功能的程序关于某个数据集合的一次运行活动,它是系统进行资源分配和调度的一个独立单位动,它是系统进行资源分配和调度的一个独立单位进程是程序的一次执行过程进程是程序的一次执行过程u进程特性进程特性动态性动态性并发性并发性内存中可同时存在多个进程,能在一段时间内同时执行。内存中可同时存在多个进程,能在一段时间内同时执行。异步性:它们按照不可预知的速度各自独立的前行。异步性:它们按照不可预知的速度各自独立的前行。独立性:独立性:资源分配的独立单位,能
9、独立运行的基本单位资源分配的独立单位,能独立运行的基本单位结构性:结构性:进程实体进程实体 (PCB)描述进程运行过程中的各种状态信息)描述进程运行过程中的各种状态信息14程序与进程的区别程序与进程的区别程序程序是一组指令的有序集合,本身无运行的含义。进程是程序执是一组指令的有序集合,本身无运行的含义。进程是程序执行的动态活动过程,随程序的执行而行的动态活动过程,随程序的执行而 诞生,随程序的结束而消亡诞生,随程序的结束而消亡独立性,是指进程是一个能独立运行、独立分配资源和独立调度独立性,是指进程是一个能独立运行、独立分配资源和独立调度的基本单位;凡未建立进程的程序,都不能作为一个独立的单位的
10、基本单位;凡未建立进程的程序,都不能作为一个独立的单位参加运行。参加运行。程序和进程无一一对应关系。一个程序运行过程中可以产生多个程序和进程无一一对应关系。一个程序运行过程中可以产生多个进程,一个进程在运行过程中又可以顺序地执行多个程序。进程,一个进程在运行过程中又可以顺序地执行多个程序。(在分时系统中多个终端用户同时进行(在分时系统中多个终端用户同时进行c程序编译,这样一个程序编译,这样一个c编译编译程序对应多个用户进程,而对每个用户进程来说,编译过程中会程序对应多个用户进程,而对每个用户进程来说,编译过程中会用到预处理、语法分析、优化等多个进程)用到预处理、语法分析、优化等多个进程)15进
11、程状态及转换进程状态及转换思考:进程在运行过程中会存在多种状态,为什么?思考:进程在运行过程中会存在多种状态,为什么?16进程状态及转换进程状态及转换u进程的状态进程的状态 进程是动态的概念,进程的状态也是在不断的变化。进程是动态的概念,进程的状态也是在不断的变化。就就绪绪状状态态:该该进进程程运运行行所所需需的的一一切切条条件件都都得得到到满满足足,但但因因处处理理机机资资源源个个数数少少于于进进程程个个数数,所所以以该该进进程程不不能能运运行行,而而必必须须等等待待分分配配处理机资源,一旦获得处理机就立即投入运行。处理机资源,一旦获得处理机就立即投入运行。运运行行状状态态:进进程程正正在在
12、处处理理机机上上运运行行的的状状态态,该该进进程程已已获获得得必必要要的的资源,也获得了处理机,用户程序正在处理机上运行。资源,也获得了处理机,用户程序正在处理机上运行。阻阻塞塞状状态态:进进程程等等待待某某种种事事件件完完成成(例例如如,等等待待输输入入/输输出出操操作作的的完完成成)而而暂暂时时不不能能运运行行的的状状态态,处处于于该该状状态态的的进进程程不不能能参参加加竞竞争争处理机,此时,即使分配给它处理机,它也不能运行。处理机,此时,即使分配给它处理机,它也不能运行。*系统一般有一个就绪队列;多个阻塞队列。系统一般有一个就绪队列;多个阻塞队列。17进程的转换关系进程的转换关系18进程
13、结构进程结构l进程实体进程实体 进程是一个实际存在的概念,是一个实际存在的实体。进程实体进程是一个实际存在的概念,是一个实际存在的实体。进程实体由由3部分组成:部分组成:程序:决定了要完成的功能程序:决定了要完成的功能数据:执行时的操作对象数据:执行时的操作对象进程控制块(进程控制块(PCB):进程的状态和占用资源以及进程之间的关):进程的状态和占用资源以及进程之间的关系是不断变化的,为了便于对进程进行管理,系统通过进程控制系是不断变化的,为了便于对进程进行管理,系统通过进程控制块管理这些信息块管理这些信息1920进程控制块进程控制块进程控制块是进程进程控制块是进程存在唯一的标志。当存在唯一的
14、标志。当系统或父进程创建一个进系统或父进程创建一个进程时,实际上就是为其建立一个进程程时,实际上就是为其建立一个进程控制块,当进程执行过程中控制块,当进程执行过程中状态发生变化时修改状态发生变化时修改PCB,当进程被撤销时,系统收回,当进程被撤销时,系统收回PCB。进进程程控控制制块块既既能能标标识识进进程程的的存存在在,又又能能刻刻画画出出进进程程的的动动态态特特征征,它它是是一一个个进进程程仅仅有有的的被被系系统统真真正正感感知知的的部部分分。对对操操作作系系统统而而言言,所有进程控制块将构成并发执行控制和维护系统工作的依据。所有进程控制块将构成并发执行控制和维护系统工作的依据。21l在进
15、程控制块中,主要包括下述在进程控制块中,主要包括下述4方面的信息。方面的信息。(1)进程描述信息)进程描述信息 进程标识符。每个进程都有惟一的进程标识符,用以识别不同的进程标识符。每个进程都有惟一的进程标识符,用以识别不同的进程。进程。用户名或用户标识号。每个进程都隶属于某个用户,有利于资源用户名或用户标识号。每个进程都隶属于某个用户,有利于资源共享与保护。共享与保护。家族关系。标识进程之间的家族关系。家族关系。标识进程之间的家族关系。22 (2)处理机状态信息)处理机状态信息 通用寄存器通用寄存器、指令计数器、程序状态字(、指令计数器、程序状态字(PSW)、)、用户栈指用户栈指 (3)进程调
16、度信息)进程调度信息 进进程程状状态态。指指明明进进程程的的当当前前状状态态,以以作作为为进进程程调调度度和和进进程程对对换换时时的依据。的依据。23进程优先级。用于描述进程使用处理机的优先级别的一个整数,进程优先级。用于描述进程使用处理机的优先级别的一个整数,优先级别高的进程先获得处理机。优先级别高的进程先获得处理机。进程调度所需的其他信息。如进程已等待进程调度所需的其他信息。如进程已等待CPU的时间总和、进程的时间总和、进程已执行的时间总已执行的时间总 和等。和等。事件。指进程被阻塞的原因。事件。指进程被阻塞的原因。24(4)进程控制信息)进程控制信息程程 序和数据的地址。指出该进程的程序
17、和数据所在的内存或外存序和数据的地址。指出该进程的程序和数据所在的内存或外存地址,以便再调度到该进程执行时,能从中找到其程序和数据。地址,以便再调度到该进程执行时,能从中找到其程序和数据。进程同步和通信机制。指实现进程同步和进程通信时所必须的机进程同步和通信机制。指实现进程同步和进程通信时所必须的机制,如消息队列指针、信号量等。这些数据应全部或部分地存放制,如消息队列指针、信号量等。这些数据应全部或部分地存放在在PCB中。中。25资源清单。它是一张列出了除资源清单。它是一张列出了除CPU之外的进程所需的全部资源和之外的进程所需的全部资源和已经分配给该进程的资源清单。已经分配给该进程的资源清单。
18、链接指针。它给出了本进程(链接指针。它给出了本进程(PCB)所在队列的下一个进程的)所在队列的下一个进程的PCB首地址。首地址。在一个系统中,通常拥有数十个、数百个乃至数千个在一个系统中,通常拥有数十个、数百个乃至数千个PCB。为了。为了对对PCB进行有效地管理,系统应把所有的进行有效地管理,系统应把所有的PCB用适当的方式组织用适当的方式组织起来。起来。26进程控制进程控制 对系统中全部进程进行管理,包括创建、撤销及实现进程状态转换对系统中全部进程进行管理,包括创建、撤销及实现进程状态转换等。等。进程进程控制是由操作系统提供的一组系统调用实现的。这组系统调控制是由操作系统提供的一组系统调用实
19、现的。这组系统调用直接控制进程,为了防止被其他进程中断,引进用直接控制进程,为了防止被其他进程中断,引进原语原语概念。概念。原语:用以完成特定功能的原语:用以完成特定功能的、执行时不可分割的或不可中断的程、执行时不可分割的或不可中断的程序或系统调用。序或系统调用。进程控制原语:创建原语、撤消原语、阻塞原语、唤醒原语进程控制原语:创建原语、撤消原语、阻塞原语、唤醒原语27进程调度进程调度l进程调度的任务进程调度的任务:为多个进程合理的分配处理机资源。为多个进程合理的分配处理机资源。l进程调度的职能:进程调度的职能:记录系统中所有进程的有关情况。(通过记录系统中所有进程的有关情况。(通过PCB来掌
20、握进程情况)来掌握进程情况)确定分配处理机原则。确定分配处理机原则。分配处理机给进程。分配处理机给进程。从进程收回处理机。从进程收回处理机。28进程调度进程调度l进程调度方式进程调度方式 指把处理机分配给一个进程使用时,让该进程如何占用处理机,指把处理机分配给一个进程使用时,让该进程如何占用处理机,它能占用多长时间等。它能占用多长时间等。剥夺调度(抢占式调度):u 一个进程占有处理机,这时有更紧迫的进程需要执行,则立即停止正在执行的进程,而执行更紧迫的进程u当前进程时间片用完,系统终止该进程执行,执行其他进程。非剥夺调度(不可抢占式调度)指一旦某个进程占用处理机后,则一直占用处理机运行下去。不
21、管有没有更紧迫的进程,直到它完成或者遇到某种外部事件不能执行下去。29调度算法调度算法l进程调度算法进程调度算法 指在就绪态的进程中按照什么原则选择一个进程并把处理机指在就绪态的进程中按照什么原则选择一个进程并把处理机分给它使用。分给它使用。u几种常用调度算法几种常用调度算法先来先服务(先来先服务(FCFS)时间片轮转调度时间片轮转调度优先级法优先级法短作业优先短作业优先30先来先服务算法先来先服务算法先来先服务(先来先服务(FIFO)算法)算法按照进入就绪队列的先后顺序调度并分配处理机执行。按照进入就绪队列的先后顺序调度并分配处理机执行。FIFO算法利于长作业,算法利于长作业,不利于短作业,
22、不利于短作业,而大多数的作业是而大多数的作业是I/O繁忙的短作业。繁忙的短作业。以以FIFO作为主调度算法是不常用的。作为主调度算法是不常用的。31作业名作业名到达次序到达次序运行时间运行时间A12B260C31D4232时间片法时间片法时间片轮转调度时间片轮转调度轮轮转转调调度度算算法法是是系系统统把把所所有有就就绪绪进进程程按按先先后后次次序序排排队队,处处理理机机总总是是优优先先分分配配给给就就绪绪队队列列中中的的第第一一个个就就绪绪进进程程,并并分分配配它它一一个个固固定定的的时时间间片片(如如100毫毫秒秒)。当当该该运运行行进进程程用用完完规规定定的的时时间间片片时时,被被迫迫释释
23、放放处处理理机机给给下下一一个个处处于于就就绪绪队队列列中中的的第第一一个个进进程程,分分给给这这个个进进程程相相同同的的时时间间片片,每每个个运运行行完完时时间间片片的的进进程程,当当未未遇遇到到任任何何阻阻塞塞时时,就就回回到到就就绪绪队队列列的的尾尾部部,并并等等待待下下次次转转到到它它时时再再投投入入运运行。行。l时间片轮转调度关键要设置合适的时间片,太小则频繁调度,影时间片轮转调度关键要设置合适的时间片,太小则频繁调度,影响系统效率;太大则影响响应时间响系统效率;太大则影响响应时间33优先数法优先数法优先数法优先数法 按照某种原则对就绪队列中的进程赋予优先级,根据优先级确按照某种原则
24、对就绪队列中的进程赋予优先级,根据优先级确定选择哪个进程运行。(静态优先级和动态优先级)定选择哪个进程运行。(静态优先级和动态优先级)l非抢占式优先级非抢占式优先级l抢占式优先级抢占式优先级34算法的衡量标准算法的衡量标准一般用周转时间和带权周转时间来衡量算法的优劣。一般用周转时间和带权周转时间来衡量算法的优劣。周转时间周转时间=完成时间完成时间-提交时间。提交时间。带权周转时间带权周转时间=周转时间周转时间/执行时间。执行时间。平均周转时间平均周转时间=周转时间周转时间/进程数。进程数。平均带权周转时间平均带权周转时间=带权周转时间带权周转时间/进程数。进程数。举例举例35A的周转时间的周转
25、时间=2.0A的带权周转时间的带权周转时间=1.0B、C、D的周转时间分别为的周转时间分别为4.8 5.8 6.0平均周转时间平均周转时间=(2+4.8+5.8+6)/4进程名进程名提交时间提交时间执行时间执行时间开始时间开始时间完成时间完成时间A1.02.01.03.0B1.23.03.06.0C1.41.26.07.2D1.50.37.27.536进程的互斥与同步进程的互斥与同步l进程间关系进程间关系多个进程并发执行,共享系统资源,进程之间存在一种制约多个进程并发执行,共享系统资源,进程之间存在一种制约和依赖关系。和依赖关系。直接制约关系:直接制约关系:【同步(合作)同步(合作)】由于并发
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 进程 管理

限制150内