操作系统CPU调度知识点

1、进程基本概念:进程是程序的一次执行, 是系统进程资源分配和调度的基本单位。

2、进程三态:执行状态、就绪状态、阻塞状态;三态转换规则,就绪状态的进程由于调度进程执行状态执行状态由于时间片用完而进入就绪状态,由于I/O请求而进入阻塞状态,I/O完成后进入就绪状态。

创建完成直接进入就绪状态,等待处理机调度。

3、挂起状态引入原因:1)终端用户请求,2)父进程请求,3)负荷调节需要,4)操作系统需要。

原三态进一步可以分为:执行状态、活动就绪状态、静止就绪状态、活动阻塞状态、静止阻塞状态;处于活动态的进程由于挂起请求而进行静止状态。

进程创建完成可直接进入活动就绪状态和静止就绪状态,程序执行结束即可进入终止状态。

4、进程控制块(PCB):进程标识符、处理机状态、进程调度信息、进程控制信息(程序、数据、资源清单等)。PCB是进程存在的唯一标志。

5、创建进程

创建进程的可能原因:用户登录、作业调度、提供服务、应用请求等。

创建进程过程:1)申请空白PCB,2)为进程分配资源,3)初始化PCB,4)将新进程插入到就绪队列。

6、终止进程

终止进程原因:正常结束、异常结束、外界干预等。

终止进程过程:1)根据进程标识符,在PCB集合中找到目标进程,2)终止该进程的执行,3)撤销其子进程,4)归还系统资源,5)撤销PCB。

7、进程同步概念:对于多个进程在执行次序上进程协调,使并发进程之间能够相互合作,有效利用系统资源,从而使程序的执行具有可再现性。

8、临界资源与临界区:临界资源是指进程间需要互斥访问的资源,临界区是进程中访问临界资源的代码。

9、进程同步规则:空闲让进、忙则等待、有限等待、让权等待。

10、进程同步方法

1)信号量:维护一代表资源数目的整形变量S,S<0时,资源分配完毕,且目前有进程在等待该资源,S>0时,说明该资源可分配。

包括以下几种:整型信号量(进程一直处于等待过程中,反复申请该资源,违反了让权等待原则)、记录型信号量(除了整型信号的功能外,还维护一个等待进程列表,资源数目小于零时,放弃处理机,等待)、AND型信号量(当进程同时需要多种资源时,当所有资源都可获取到时才将所有资源一次性分配给该进程)。

缺点:将大量wait,Signal分散在各进程当中,不利于管理。

2)管程机制:相当于对某一资源的管理程序,所有进程访问该资源时都需要通过该管理程序。而管程每次只允许一个进程访问该资源。

管程与进程的区别:从功能上说,进程主要目的是实现系统的并发性,而管程为了各进程互斥访问某一资源;从调度角度说,进程可以并发执行,而管程不可以,且管程是供各进程调用,所以也不可能与调用者并发;从结构上说,进程定义的是私的数据结构(PCB),而管程定义的公有数据结构,供其他进程访问。

11、进程间通信:各进程间信息交换;主要通信方式,共享存储器系统(包括共享数据结构和共享存储区)、消息传递机制、管道通信(和Linux下的管理通信属于同一概念)。

12、线程:轻型进程,系统独立调度的基本单位。

13、引入线程原因:进程作为资源拥有者,在创建、撤销、切换过程都会引起较大的时空开销,所以系统中并发进程的数量不能过多,切换也不能太频繁,从而限制了并发程度的提高。

14、进程与线程区别:从调度角度:进程是资源分配的基本单位,线程是系统调度的基本单位;从资源拥有角度看:进程拥有系统资源,而线程只拥有少量系统资源,但它可以共享所属进程的资源;从系统开销上看:线程不独立拥有系统资源,所以线程切换的系统开销远小于进程,除非线程切换会引起进程切换;从并发角度看:线程和进程一样,都可以并发执行,不仅同一个进程的线程可以并发执行,不同进程的线程也同样可以并发执行。

15、线程同样是三态:就绪状态、执行状态、阻塞状态。

16、线程间同步和通信:互斥锁,对临界资源互斥访问;条件变量;信号量。

17、内核支持线程与用户线程,内核态与用户态;

18、处理机三级调度:作业调度(高级调度)、进程调度(低级调度)、中程调度;

19、作业调度:把外存上处于后备队列中的作业调入内存。

作业调度主要用于批处理系统,分时系统或实时系统中,由于对响应速度要求较高,输入命令会直接送入内存。

作业选择:先来先服务、短作业优先、优先级调度

20、进程调度

主要功能:1)保存处理机的现场信息,2)选取进程,3)将处理机分配给进程;

调度方式:1)非抢占方式:直至当前进程完成,自愿释放处理机;

2)抢占方式:优先权原则、短作业优先原则、时间片原则;

21、中程调度实际上就是存储器管理的对换功能,将暂时不能运行的进程暂时调制外存。

21、调度算法:

原则:1)面向用户,时间短、响应快;2)面向系统,系统吞吐量高、处理机利用率高、资源平衡使用;

主要调度算法:

1)先来先服务原则:对短作业不公平,长作业耗时太长;

2)短作业优先原则:对长作业不公平,等待时间过长;

3)优先权调度算法:抢占式优先权(只要有优先权高的出现,立即切换进程)和非抢占式优先权

优先权类型:静态优先权、动态优先权(优先权随时间推进而改变)

4)时间片轮转调度算法:按先来先服务原则排列,每次调度时执行一个时间片,然后将处理机让给下一进程;

5)多级反馈调度算法:实质是时间片轮转和优先权的结合;设置多个队列,每个队列的优先级不同且时间片长度也不同,优先级越低,时间片越长;进程刚进来时优先级最高,执行完一个时间片后优先级降一级,只有当前一优先级没有任务时才会执行下一优先级。

22、实时调度基本条件:提供必要的信息(就绪时间、截止时间)、系统处理能力强、采用抢占式方式(大部分)、切换效率高。

调度方法:最早截止时间优先权调度算法、最低松弛度优先算法(根据任务紧急程度设置相应优先级)。

时间: 2024-10-07 18:09:26

操作系统CPU调度知识点的相关文章

操作系统概念学习笔记 10 CPU调度

操作系统概念学习笔记 10 CPU调度 多道程序操作系统的基础.通过在进程之间切换CPU,操作系统可以提高计算机的吞吐率. 对于单处理器系统,每次只允许一个进程运行:任何其他进程必须等待,直到CPU空闲能被调度为止. 多道程序的目标是在任何时候都有某些进程在运行,以使CPU的使用率最大化.多道程序的思想较为简单,当一个进程必须等待时,操作系统会从该进程拿走CPU的使用权,而将CPU交给其他进程. CPU-I/O 区间周期 CPU的成功调度依赖于进程的如下属性: 进程执行由CPU执行周期和I/O等

SMP CPU调度 &nbsp; 用于多道程序

SMP CPU调度   用于多道程序 SMP(Symmetric Multi-Processor) :对称多处理器SMP 服务器的主要特征是共享,系统中所有资源 (CPU .内存. I/O 等 ) 都是共享的.也正是由于这种特征,导致了 SMP 服务器的主要问题,那就是它的扩展能力非常有限.对于 SMP 服务器而言,每一个共享的环节都可能造成 SMP 服务器扩展时的瓶颈,而最受限制的则是内存.由于每个 CPU 必须通过相同的内存总线访问相同的内存资源,因此随着 CPU 数量的增加,内存访问冲突将

【转】CPU调度

转自:http://blog.csdn.net/xiazdong/article/details/6280345 CPU调度   用于多道程序 以下先讨论对于单CPU的调度问题. 回顾多道程序,同时把多个进程导入内存,使得一个进程在CPU中执行I/O时,一个进程用来填补CPU的时间. 通常进程都是在CPU区间和I/O区间之间转换. CPU调度程序称为短期调度程序,从内存调度到CPU. 在内存中等待的就绪队列的节点是PCB.有许多不同的队列实现方法. 抢占调度和非抢占调度(协作):前者为一个进程还

操作系统-处理机调度

操作系统-处理机调度 调度的实质是资源的分配,而处理机的调度是对处理机资源的调度 调度的层次 高级调度 高级调度的调度对象是作业,只要用于多道批处理程序,在分时和实时系统中不设置高级调度 作业 作业是一个比程序更为广泛的概念,不仅包含了通常的程序和数据,还配有一份作业说明书,它和进程,线程一样有控制块,作业的叫做作业控制块JCB 任务 根据JCB中的信息检查系统中的资源能否满足作业对资源的需求,以及按照一定的调度算法,从外存的后备队列中选取作业调入内存,并未它们创建进程,分配资源,然后将新进程排

ds6000com+Linux的CPU调度19908836661服务器的性能

我们可以在文章的开始就列出一个列表,列出可能影响Linux操作系统性能的一些调优参数,但这样做其实并没有什么价值.因为性能调优是一个非常困难的任务,它要求对硬件.操作系统.和应用都有着相当深入的了解.如果性能调优非常简单的话,那些我们要列出的调优参数早就写入硬件的微码或者操作系统中了,我们就没有必要再继续读这篇文章了.正如下图所示,服务器的性能受到很多因素的影响. 当面对一个使用单独IDE硬盘的,有20000用户的数据库服务器时,即使我们使用数周时间去调整I/O子系统也是徒劳无功的,通常一个新的

操作系统常见面试知识点

1.请分别简单说一说进程和线程以及它们的区别. 进程是具有一定功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源调度和分配的一个独立单位. 线程是进程的实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位. 一个进程可以有多个线程,多个线程也可以并发执行 2.线程同步的方式有哪些 互斥量:采用互斥对象机制,只有拥有互斥对象的线程才有访问公共资源的权限.因为互斥对象只有一个,所以可以保证公共资源不会被多个线程同时访问. 信号量:它允许同一时刻多个线程访问同一资源,但

[OS] CPU调度

调度准则 为了比较CPU调度算法,分析员提供了许多准则,用于比较的特征对确定最佳算法有很大影响.这些准则包括: ·CPU使用率:需要使CPU尽可能忙. ·吞吐量:一个时间单元内完成进程的数量. ·周转时间:从进程提交到进程完成的时间. ·等待时间:进程在就绪队列中等待所花时间之和. ·响应时间:对于分时系统,从提交请求到第一次响应的时间. 调度算法 ·先来先服务调度(FCFS) 采用这种方案,先请求CPU的进程先分配到CPU.FCFS策略可以用FIFO队列来容易的实现. 缺点:1.周转时间与响应

进程与线程之间的关系和区别 及 CPU调度

进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位. 线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位. 进程和线程的关系: (1)一个线程只能属于一个进程,而一个进程可以有多个线程,但至少有一个线程. (2)资源分配给进程,同一进程的所有线程共享该进程的所有资源. (3)处理机分给线程,即真正在处理机上运行的是线程. (4)线程在执行过程中,需要协作同步.不同进程的线程间要利用消息通信的办法实现同步.

6.CPU调度

总论:所有的程序都是CPU和I/O等待交替执行 CPU调度器的操作时机 调用CPU调度器的时机,通常发生在 某一进程从执行状态转化为等待状态 某一进程从执行状态转化为就绪状态 某一进程从等待状态转为就绪状态 某一进程终止 注意,调度时机不限于此4种情况,有非抢占式调度,和抢占式调度 CPU调度器 决定了将CPU分配给谁 后续操作就是, CPU分配器将CPU控制权交给该进程,操作内容通常包括 上下文切换 从内核态转移至用户态 跳转至用户程序中PC寄存器所指示的位置 分配延迟 CPU分配暂停前一进程