第3章-进程管理与调度详解
- 格式:ppt
- 大小:1.35 MB
- 文档页数:40
进程管理与调度进程管理是操作系统中的一个重要概念,用于控制和协调系统中各个进程的执行顺序和资源分配。
调度是进程管理的核心组成部分,负责根据一定的算法和策略来决定运行哪个进程以及何时运行。
一、进程管理进程管理是操作系统中的基本任务之一,它负责创建、终止和调度进程,以及为进程分配和回收资源。
进程是程序的执行实例,一个程序可以有多个进程同时执行。
进程管理通过对进程的控制和调度,保证系统的正常运行。
进程管理包括以下几个主要方面:1. 进程创建:当用户启动一个程序时,操作系统会为该程序创建一个新的进程。
进程创建需要为进程分配内存空间,并初始化进程控制块。
2. 进程终止:当进程执行完毕或发生错误时,操作系统会终止该进程。
进程终止时需要释放其占用的资源,并从系统中删除相应的进程控制块。
3. 进程调度:通过进程调度算法和策略,决定系统中运行哪个进程以及何时运行。
进程调度的目标是提高系统的吞吐量和响应时间。
4. 进程间通信:多个进程之间需要进行通信和数据交换。
进程间通信机制可以通过共享内存、消息传递等方式来实现。
二、调度算法调度算法是操作系统中进行进程调度的核心部分,其决定了系统中进程的执行顺序。
常用的调度算法有以下几种:1. 先来先服务(FCFS)调度算法:按照进程到达的顺序进行调度,先到达的进程先执行,适用于长作业。
2. 最短作业优先(SJF)调度算法:根据进程对 CPU 的需求时间进行调度,执行时间最短的进程先执行,适用于短作业。
3. 优先级调度算法:为每个进程分配一个优先级,优先级高的进程先执行。
可以静态分配优先级,也可以动态调整优先级。
4. 时间片轮转调度算法:将 CPU 时间划分为若干个时间片,每个进程在一个时间片内执行。
时间片结束后,当前进程被暂停,下一个进程开始执行。
5. 多级反馈队列调度算法:将进程根据优先级划分为多个队列,每个进程初始时进入最高优先级的队列,根据执行情况可以升降队列。
三、调度策略调度策略是在调度算法基础上考虑的一些特殊需求和限制条件。
第三章进程管理第三章进程管理引言:在所有采用微内核结构的操作系统中,都涉及到了“进程”的概念。
“进程”犹如操作系统的灵魂伴随操作系统始终,对进程进行控制、调度、完成进程间通信,以及解决进程死锁问题等就构成了进程管理的主要内容。
进程还是操作系统中独立运行的基本单位,只有深刻理解了进程的概念,才能够更好地理解操作系统其他各部分的功能和工作流程。
§3.1 为什么要引入进程的概念§3.1.1 从顺序程序设计谈起(1)什么是顺序程序在计算机上运行的程序是众多指令有序的集合,每一个程序只能完成预先规定的任务和操作。
在早期的计算机系统中,只有单道程序执行的功能,也就是说,每次只允许一道程序独立运行。
在这个程序的运行过程中,将占用整个计算机系统资源,而且系统将按照程序步骤顺序执行,其他程序只能处于等待状态。
因此,从宏观上看,各个程序是以线性状态排列并顺序执行的。
(2)顺序程序的特征a. 顺序性CPU单步顺序地执行程序,无论程序下一步操作是否需要等待上一步操作的结果都必须等待上一步操作结束后才能开始,无法实现并发执行。
b. 封闭性资源独占:只有正在执行的程序本身所规定的动作才能改变当前资源状态。
结果封闭:一旦程序开始运行后,其输出结果就不受外因的干扰。
c. 可再现性程序不受外部条件的影响,只要系统资源充足,在给定相同初始条件的情况下,无论程序执行多少次,总能得到相同的执行结果。
§3.1.2 程序的并发执行和资源共享由于单道程序执行过程中浪费了很多系统资源,因此,人们设法在只有一个处理器的系统中让多个程序同时执行。
这里应注意并发执行和多个程序在多个处理器环境下的并行执行。
(1)程序并发执行的定义多道程序在计算机中交替执行,当一道程序不占用处理器时,另一道程序马上接管CPU处理权,大大提高了处理器的使用率。
尽管在每一时刻或者说某一时刻CPU中仍然只有一道程序在执行,但是由于主存中同时存放了多道程序,在同一时间间隔内,这些程序可以交替的进行,从而提高CPU的使用率。