实时调度算法可分为固定优先级的调度算法和动态优先级的调度算法

Xen的调度算法主要负责对各个客户虚拟机进行CPU时间片的分配,从而使
得硬件资源在各个客户虚拟机之间合理分配。在客户虚拟机启动之初,Xen会配
置其的CPU个数,这里的CPU称之为虚拟处理器,即VCPU。Xen的虚拟机调度
算法以VCPU为调度单位,而非以客户虚拟机为粒度进行调度,将VCPU动态的
分配到各个真实的物理CPU上执行,同一时间内只可能有物理CPU数量的VCPU
在执行。将调度算法粒度控制在VCPU级别的好处在于可以使得整个虚拟系统的
处理吞吐量增大,因为每个VCPU可以根据真实物理CPU的负载程度进行核间的
迁移,从而让系统的处理能力的利用率达到最大。如果以客户虚拟机为调度单位,
当遇到有多个VCPU的客户虚拟机时,需要同样多数目的物理CPU才能完成多
VCPU的同步调度,不仅降低了整体的性能,同时也不利于系统的扩展。

capacity CS,
replenishment period TS, and jitter JS.
 A server’s capacity is the maximum amount of execution time that may be consumed by the server in a single invocation. 
The replenishment period is the minimum time before the server’s capacity is available again.
The server’s jitter is the difference between the minimum and maximum time that can elapse between replenishment of the server’s capacity and that capacity starting to be consumed 
given no higher priority interference
a server’s worst-case response
 time RS, is the longest possible time from the server being replenished to its capacity being exhausted,given that there are tasks ready to use all of the server’s capacity.
 
   
System Idle Process" 中的 idle 是“空闲”的意思 "System Idle Process" 即“系统空闲进程“
实际上System Idle Process 是WIN2000/XP以及Vista/WIN7操作系统都有的一个进程,其作用都是一样的。就是在CPU空闲的时候,发出一个IDLE命令,使CPU挂起(暂时停止工作),可有效的降低CPU内核的温度,在操作系统服务里面,都没有禁止它的选项;默认它是占用除了当前应用程序所分配的处理器(CPU)百分比之外的所有占用率;一旦应用程序发出请求,处理器会立刻响应的。在这个进程里出现的CPU占用数值并不是真正的占用而是体现的CPU的空闲率,也就说这个数值越大CPU的空闲率就越高,反之就是CPU的占用率越高。如果在刚刚开机的情况下就发现System Idle Process的CPU占用值很低的话应该就注意后台有什么大的程序在运行或者感染病毒了。
  当“System Idle Process”进程占用资源为2%时,说明机器目前只有2%的资源是空闲的,即机器可能感染了病毒或被其他程序占用了98%的资源。换句话说,“System Idle Process”进程占用资源占用资源越大则系统可用资源越多,其字面意思是“系统空闲进程”


实时调度算法 可分为 固定优先级的调度算法和 动态优先级的调度算法
实时系统根据其对于实时性要求的不同,可以分为 软实时硬实时两种类型。
硬实时系统指系统要有确保的最坏情况下的服务时间,即对于事件的响应时间的截止期限是无论如何都必须得到满足。比如航天中的宇宙飞船的控制等就是现实中这样的系统。
其他的所有有实时特性的系统都可以称之为软实时系统。如果明确地来说,软实时系统就是那些从统计的角度来说,一个任务(在下面的论述中,我们将对任务和进程不作区分)能够得到有确保的处理时间,到达系统的事件也能够在截止期限到来之前得到处理,但违反截止期限并不会带来致命的错误,像实时多媒体系统就是一种软实时系统
根据建立调度表和可调度性分析是脱机还是联机实现分为 静态调度 动态调度

单处理器实时调度

RMS(Rate-Monotonic Scheduling)调度算法

任务按单调 速率优先级分配(RMPA)的调度算法,称为单调速率调度( RMS)。RMPA是指任务的优先级按任务周期T来分配。它根据任务的执行周期的长短来决定调度优先级,那些具有小的执行周期的任务具有较高的优先级,周期长的任务优先级低。

EDF

最早截止时间优先算法(EDF)也称为截止时间驱动调度算法(DDS),是一种动态调度算法。EDF指在调度时,任务的优先级根据任务的截止时间动态分配。截止时间越短,优先级越高。

LLF

最短空闲时间优先算法(LLF)也是一种动态调度算法。LLF指在调度时刻,任务的优先级根据任务的空闲时间动态分配。空闲时间越短,优先级越高。空闲时间=deadline-任务剩余执行时间。LLF可调度条件和EDF相同。
多处理器实时调度

静态调度

问题描述:一组具有优先级关系的任务在m个处理器上运行,任务 优先级关系用“<”表示,即如果两个任务(t1,t2)存在优先关系t1< t2,则t1必须在t2开始运行前完成。任务优先关系可用一个无环图来表示,称为计算图G,如图1.表示任务集S={t1,t2,t2,t4,t5}中任务存在优先关系<={(t1,t2),(t1,t3),(t1,t4),(t2,t6),(t3,t6),(t4,t5),(t5,t6)}。多处理其调度就是要找出长度最短的调度表。

动态调度

问题描述:到达时间不确定而计算时间c和截止时间D已知的n个任务,运行在m个处理器上,n不确定,动态调度的目标是使系统能够对变化的环境做出迅速的反应。

你可能感兴趣的:(随笔)