CN103049314A - 一种开放式系统实时调度方法 - Google Patents

一种开放式系统实时调度方法 Download PDF

Info

Publication number
CN103049314A
CN103049314A CN2012105448693A CN201210544869A CN103049314A CN 103049314 A CN103049314 A CN 103049314A CN 2012105448693 A CN2012105448693 A CN 2012105448693A CN 201210544869 A CN201210544869 A CN 201210544869A CN 103049314 A CN103049314 A CN 103049314A
Authority
CN
China
Prior art keywords
time
real
server
task
scheduler
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN2012105448693A
Other languages
English (en)
Inventor
谭朋柳
舒坚
吴振华
聂云峰
刘琳岚
谌业滨
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanchang Hangkong University
Original Assignee
Nanchang Hangkong University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanchang Hangkong University filed Critical Nanchang Hangkong University
Priority to CN2012105448693A priority Critical patent/CN103049314A/zh
Publication of CN103049314A publication Critical patent/CN103049314A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明提出了一种适用于开放式环境的实时调度方法,该方法采用二级层次调度架构,并且集成了可变利用率服务器技术、总带宽服务器技术以及EDF、RM和共享驱动的调度算法。该方法采用可变利用率服务器技术,不仅在有任务溢出的情况下也能在任务间提供很好的隔离作用,而且能改善系统性能,增加CPU利用率,提高系统的实时性,另外支持任务间共享资源,满足并行分布式实时系统的需求,提高了实用价值。该方法用可变利用率服务器执行硬实时任务,用总带宽服务器TBS执行软实时任务,不仅可以保证硬实时任务的时间限制,还可以使软实时任务具有更快的响应能力。

Description

一种开放式系统实时调度方法
技术领域
本发明涉及一种开放式系统实时调度方法。
背景技术
 随着计算机硬件技术的巨大进步,除了传统实时系统继续向前发展以外,出现了新型的实时系统,实时应用程序与非实时应用程序一起运行于快速、通用目的的工作站与个人计算机系统成为了可能。不同于传统实时系统专门针对某一特定类型的实时应用,而这种新型的实时系统要求能同时处理具有各种时间约束关系的实时应用,包括硬实时、软实时以及非实时应用程序,而且这些应用程序可以动态地进入或退出系统,这种系统就是所谓的开放式实时系统,它是目前研究最热的实时计算领域之一。具有开放式实时系统特点的分布式系统即为开放分布式实时系统。
开放式实时系统是相对于传统实时系统来讲的。传统封闭式实时系统中,任务模型单一,各实时应用程序在特定硬件上运行,预先知道它们详细的时间属性,它们的可调度性分析也能预先确定。而开放式实时系统不再针对特定硬件上的特定应用,它具有在通用目的的工作站或个人计算机上同时处理相互独立开发的硬实时、软实时及非实时应用程序的能力。开放式实时系统环境是一个动态环境,任务模型多样,各实时应用程序的时间属性,特别是最坏情况下的计算时间,会随着环境的变化而变化,并且各应用程序可以动态的进入/退出系统。这些新的特征对系统的设计与开发提出了新的更高要求,特别是任务调度。
开发式实时系统的特点:
(1)系统应该具有较强通用性,不是针对某一特定应用;
(2)系统应该具有较强的可重配性,针对不同的应用及QoS需求进行相应的配置;
(3)系统应该具有较强的扩展性,便于升级和增加新的功能,以满足新的需求;
(4)系统能接受动态提交的任务;
    针对开放式实时系统的特点,其调度器相应具有如下特征:
(1)调度机制与策略相分离,机制在内核中,策略由用户选择,用户可以根据需要为其应用程序随意独立地选择系统中实现了的调度策略;
(2)调度器具有可重配性,以满足不同的任务及Qos需求;
(3)调度器应该具有可扩展性,容易增加新的调度算法,适应新的任务模型需求;
(4)能调度动态提交的任务。
目前有关开放式实时系统调度方法主要有两种:基于常量利用率服务器调度方法和基于零星服务器调度方法。但这两种方法中每个应用程序只能在一个处理器上运行,因此不适合并行实时应用程序;另外,这两种方法中每个应用程序采用一种调度策略,因此也不适合包含实时部分和非实时部分的复杂应用程序,因为实际上这种复杂应用程序中实时部分和非实时部分应采用不同的调度策略。
零星服务器SS(Sporadic Server)
零星服务器算法用于调度实时系统中的非周期性软实时任务,它是对单调率(RM)算法的扩展,RM算法用于调度周期性硬实时任务。零星服务器可以提高软实时非周期性任务的响应性。在采用RM算法的实时系统中,零星服务器就好比一个周期性的硬实时任务,具有一定的执行时间预算e ss ,周期T ss ,和根据RM算法确定的优先级p ss 。当系统有非周期性软实时任务请求到来时,比较零星服务器的优先级p ss 与系统当前执行任务的优先级p s ,若前者高于后者,立即响应非周期性软实时任务请求,否则继续执行当前任务;当零星服务器正在执行非周期性软实时任务时,高于零星服务器优先级的任务反过来可以抢占CPU;当零星服务器的执行预算用完时,如果非周期性任务还没有完成,它要让出CPU,等待零星服务器的下一个服务周期到来;当系统没有非周期性软实时任务请求时,零星服务器则处于空闲状态。也就是说,在以RM作为调度算法的系统中,零星服务器就像一个周期性硬实时任务τss,具有执行时间预算e ss ,周期T ss ,和根据RM算法确定的优先级p ss ,如果有非周期性软实时任务τ到来,τ可以继承τss的时间属性和优先级,参与系统调度,从而提高非周期性软实时任务的响应能力。
 总带宽服务器TBS(Total Bandwidth Server)
为了提高非周期性软实时任务的响应性,给每个非周期性请求分配一个尽可能小的截止期限,并且保证所有非周期性任务总的处理器利用率不超过规定的最大值U S U S 就是总带宽服务器的带宽。总带宽服务器有三个参数:执行预算C s 、截止期限d s 及固定带宽U S
总带宽服务器的维护算法负责补偿执行预算并设置截至期限。当一个软实时任务请求在时刻r k 到来时,它得到一个绝对截止期限:
d k  = max(r k d k-1 )+                                                
Figure 991270DEST_PATH_IMAGE001
其中C k 是软实时任务请求的执行时间,U s 为服务器利用率因子(即带宽),d 0 等于0。然后,将该软实时任务插入到系统就绪队列,并按照EDF方式调度,就像系统在存在的其他周期与非周期任务一样。
常量利用率服务器CUS(Constant Utilization Server)
常量利用率服务器类似与常量带宽服务器,不同的是常量利用率服务器是基于所有服务的任务的执行时间不会超过他们最坏情况下的执行时间的假设基础上的,而常量带宽服务器允许任务的执行时间超过他们预期的执行时间,超过时延长他们的截至期限,即降低他们的优先级,以免影响其他任务的执行;零星服务器、延缓服务器和总带宽服务器是为了提高实时系统中非周期性软实时任务的响应能力而设计的。而常量带宽服务器和常量利用率服务器主要目的是为了任务间的隔离,保证硬实时任务的时限要求的满足不会受其他任务执行的影响。常量带宽服务器和常量利用率服务器的大小均为固定的,不适合任务具有可变执行时间的开放式实时系统。为此,本发明提出了更先进的可变利用率服务器算法。
 可变利用率服务器VUS (Variable Utilization Server)算法
可变利用率服务器是根据其可变服务器大小定义的,服务器大小是指分配给服务器的处理器利用率比例。跟常量利用率服务器一样,当操作系统分配给它一定量的可执行预算后,可变利用率服务器才具有可执行能力。可执行预算随着它的执行而消耗。当可执行预算变为0,即耗尽时,可变利用率服务器不再具有可执行能力。当操作系统重新分配给它一定量的可执行补偿后,可变利用率服务器才具有可执行能力。如果由服务器负责调度执行的任务负荷动态地变化,服务器的行为就像一个具有可变利用率的任务,因此称它为可变利用率服务器VUS。
发明内容
本发明的目的在于提供了一种开放式系统实时调度方法,它具有资源利用率高、使用灵活的优点。
本发明是这样来实现的,一种开放式系统实时调度方法,其特征在于它是基于可变利用率服务器和总带宽服务器的的二级层次调度架构的调度方法,该架构用可变利用率服务器VUS执行硬实时任务,用总带宽服务器TBS执行软实时任务;而在底层,是操作系统调度器,它有两个子调度器:EDF调度器与时间共享Time Sharing调度器,EDF调度器负责维护和调度上层VUS服务器与TBS服务器,而Time Sharing调度器负责调度所有的非实时任务;EDF调度器的优先级高于Time Sharing调度器,如果系统中没有任何运行的实时任务或等待运行的实时任务时,Time Sharing调度器才被激活,否则EDF调度器是活动的,这样可以保证实时任务总能被优先处理。所述的调度方法包括:1)初始化:(1)为每个实时调度策略建立一个专门的服务器;(2)设置所有服务器总大小U t U SD ;2)服务器维护;3)与可变利用率服务器VUS p 的调度器相互作用;4)按照EDF方式调度所有服务器;5)调度所有的非实时任务,当系统没有实时任务在运行或等待运行时,激活时间共享Time Sharing的调度器,处理非实时任务。
本发明的技术效果是:本发明不仅保证实时任务总能被优先处理,提高了资源利用率和系统的实时性能,还能有效地处理具有共享资源的任务,扩宽了应用领域,更具有实际应用价值。
附图说明
图1为本发明开放式系统二级层次调度架构原理方框图。
具体实施方式
如图1所示,本发明提出的实时调度方法采用二级层次调度架构,并且集成了可变利用率服务器技术、总带宽服务器技术以及EDF、RM和时间共享驱动的调度算法。该架构用可变利用率服务器VUS执行硬实时任务,用总带宽服务器TBS执行软实时任务,不仅可以保证硬实时任务的时间限制,还可以使软实时任务具有更快的响应能力。而在底层,是操作系统调度器,它有两个子调度器:EDF调度器与时间共享Time Sharing调度器,EDF调度器负责维护和调度上层VUS服务器与TBS服务器,而Time Sharing调度器负责调度所有的非实时任务。EDF调度器的优先级高于Time Sharing调度器,如果系统中没有任何运行的实时任务或等待运行的实时任务时,Time Sharing调度器才被激活,否则EDF调度器是活动的,这样可以保证实时任务总能被优先处理。
开放式实时系统中,可能有各种具有不同时间限制的任务,可能有硬实时,也可能有软实时,还可能有非实时任务,这几种任务类型可以同时运行于系统。在本发明提出的调度架构中,上层,每种硬实时调度策略使用一个可变利用率服务器VUS,根据该调度策略调度所有采用该调度策略的硬实时任务,如:EDF调度策略使用可变利用率服务器VUS EDF 用于调度所有采用EDF策略的硬实时任务,RM调度策略使用可变利用率服务器RM EDF 用于调度所有采用RM策略的硬实时任务,等等。所有软实时任务使用一个总带宽服务器TBS SD ,根据共享驱动SD策略进行调度。每个服务器S p 有一个调度器,叫做服务器调度器(server scheduler),采用调度策略p。每个服务器调度器有一个就绪队列,当服务器被底层EDF调度器选择执行时,服务器调度器选择队首的任务执行。
操作系统调度器的功能及运作机制如下:
1.初始化
(1)为每个实时调度策略建立一个专门的服务器,如:为SD策略建立一个总带宽服务器TBS SD ,用于调度所有软实时任务,其服务器大小U SD = U SD  (0<U SD
Figure 43016DEST_PATH_IMAGE002
1);为EDF策略建立一个可变利用率服务器VUS EDF ,用于调度所有采用EDF策略的硬实时任务,其服务器大小U EDF =0;为RM策略建立一个可变利用率服务器VUS RM ,用于调度所有采用RM策略的硬实时任务,其服务器大小U RM =0,等等;
(2)设置所有服务器总大小U t U SD
 2.服务器维护:根据服务器的类型补偿服务器的可执行预算,并设置服务器的截止期限;
3.与可变利用率服务器VUS p 的调度器相互作用:当一个具有最坏情况下执行时间e i 和相对截止期限d i 的任务τi 在时刻r i 到达时,激活与该任务τi具有相同调度算法p的可变利用率服务器VUS p 的调度器,将任务τi插入到服务器VUS p 的就绪队列,并将该服务器VUS p 的服务器大小U设置为U + e i  / d i ,并将系统中所有服务器的总大小U t 增加e i /d i ;当一个具有最坏情况下执行时间e i 、相对截止期限d i 和调度算法为p的任务τi终止运行时,将该服务器VUS p 的服务器大小U设置为U - e i  / d i ,并将系统中所有服务器的总大小U t 减少e i /d i
4.调度所有的服务器:按照EDF方式调度所有服务器;
5.调度所有的非实时任务:当系统没有实时任务在运行或等待运行时,激活时间共享Time Sharing的调度器,处理非实时任务。
根据总带宽服务器TBS算法,当服务器可执行预算变为0时,如果服务器就绪队列不为空,立即补偿服务器预算。根据常量利用率服务器CUS算法,服务器可执行预算的补偿时间不会早于当前服务器的截止期限。同时总带宽服务器TBS可以使用任何后台空闲时间,而常量利用率服务器CUS则不能使用任何空闲时间。而本发明采用的可变利用率服务器VUS算法,尽可能晚地补偿服务器可执行预算。可变利用率服务器算法首先试着在当前服务器截止期限d处补偿服务器可执行预算,并设置新的服务器截止期限,如果导致失败,即新的服务器截止期限不能得到满足,再试着在当前服务器可执行预算用完时补偿服务器预算,设置新的服务器截止期限,如果又导致失败,最后将在任务被释放的时刻补偿服务器可执行预算。
另外,在分配CPU带宽给服务器的方式上,可变利用率服务器算法VUS比常量利用率服务器CUS算法和总带宽服务器TBS算法更灵活,更具有适应性。VUS算法中服务器大小随负载的变化而变化。而且VUS算法引入了空闲带宽回收机制及任务的溢出控制机制,每个溢出的任务不仅可以使用系统分配给它的带宽,还可以使用系统的空闲带宽及其他任务的剩余带宽。即使在有任务溢出情况下,VUS不仅可以提供任务间有效的隔离,而且可以有效地回收空闲带宽并控制任务的溢出。这不仅提高了资源利用率,还提供了系统的实时性能。VUS通过引入带宽继承协议,可以有效地处理具有共享资源的任务,扩宽了应用领域,更具有实际应用价值。

Claims (2)

1.一种开放式系统实时调度方法,其特征在于它是基于可变利用率服务器和总带宽服务器的的二级层次调度架构的调度方法,该架构用可变利用率服务器VUS执行硬实时任务,用总带宽服务器TBS执行软实时任务;而在底层,是操作系统调度器,它有两个子调度器:EDF调度器与时间共享Time Sharing调度器,EDF调度器负责维护和调度上层VUS服务器与TBS服务器,而Time Sharing调度器负责调度所有的非实时任务;EDF调度器的优先级高于Time Sharing调度器,如果系统中没有任何运行的实时任务或等待运行的实时任务时,Time Sharing调度器才被激活,否则EDF调度器是活动的,这样可以保证实时任务总能被优先处理。
2.如权利要求1所述的一种开放式系统实时调度方法,其特征在于所述的调度方法包括
1)初始化:(1)为每个实时调度策略建立一个专门的服务器;(2)设置所有服务器总大小U t U SD
2)服务器维护;
3)与可变利用率服务器VUS p 的调度器相互作用;
4)按照EDF方式调度所有服务器;
5)调度所有的非实时任务,当系统没有实时任务在运行或等待运行时,激活时间共享Time Sharing的调度器,处理非实时任务。
CN2012105448693A 2012-12-17 2012-12-17 一种开放式系统实时调度方法 Pending CN103049314A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2012105448693A CN103049314A (zh) 2012-12-17 2012-12-17 一种开放式系统实时调度方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2012105448693A CN103049314A (zh) 2012-12-17 2012-12-17 一种开放式系统实时调度方法

Publications (1)

Publication Number Publication Date
CN103049314A true CN103049314A (zh) 2013-04-17

Family

ID=48061964

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2012105448693A Pending CN103049314A (zh) 2012-12-17 2012-12-17 一种开放式系统实时调度方法

Country Status (1)

Country Link
CN (1) CN103049314A (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630126A (zh) * 2014-11-05 2016-06-01 中国科学院沈阳计算技术研究所有限公司 一种基于常带宽服务器混合任务低功耗调度方法
CN107391244A (zh) * 2017-07-11 2017-11-24 重庆邮电大学 一种基于混合调度模型的物联网操作系统调度方法
CN107678840A (zh) * 2016-08-01 2018-02-09 百度在线网络技术(北京)有限公司 用于运行任务的系统、方法和装置
CN109558227A (zh) * 2018-11-12 2019-04-02 中国航空工业集团公司西安飞行自动控制研究所 一种基于任务执行预算的单调速率任务调度方法
CN110855793A (zh) * 2019-11-19 2020-02-28 南昌航空大学 一种分布式系统共识方法
CN114385340A (zh) * 2022-03-22 2022-04-22 长沙金维信息技术有限公司 eCos系统中CPU占用率的统计方法
CN115866054A (zh) * 2022-09-26 2023-03-28 哈尔滨工业大学 基于带宽服务器的非周期任务调度方法、装置及介质

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105630126A (zh) * 2014-11-05 2016-06-01 中国科学院沈阳计算技术研究所有限公司 一种基于常带宽服务器混合任务低功耗调度方法
CN105630126B (zh) * 2014-11-05 2018-05-25 中国科学院沈阳计算技术研究所有限公司 一种基于常带宽服务器混合任务低功耗调度方法
CN107678840A (zh) * 2016-08-01 2018-02-09 百度在线网络技术(北京)有限公司 用于运行任务的系统、方法和装置
CN107678840B (zh) * 2016-08-01 2021-08-24 百度在线网络技术(北京)有限公司 用于运行任务的系统、方法和装置
CN107391244A (zh) * 2017-07-11 2017-11-24 重庆邮电大学 一种基于混合调度模型的物联网操作系统调度方法
CN109558227A (zh) * 2018-11-12 2019-04-02 中国航空工业集团公司西安飞行自动控制研究所 一种基于任务执行预算的单调速率任务调度方法
CN109558227B (zh) * 2018-11-12 2023-03-31 中国航空工业集团公司西安飞行自动控制研究所 一种基于任务执行预算的单调速率任务调度方法
CN110855793A (zh) * 2019-11-19 2020-02-28 南昌航空大学 一种分布式系统共识方法
CN114385340A (zh) * 2022-03-22 2022-04-22 长沙金维信息技术有限公司 eCos系统中CPU占用率的统计方法
CN114385340B (zh) * 2022-03-22 2022-06-21 长沙金维信息技术有限公司 eCos系统中CPU占用率的统计方法
CN115866054A (zh) * 2022-09-26 2023-03-28 哈尔滨工业大学 基于带宽服务器的非周期任务调度方法、装置及介质
CN115866054B (zh) * 2022-09-26 2024-04-26 哈尔滨工业大学 基于带宽服务器的非周期任务调度方法、装置及介质

Similar Documents

Publication Publication Date Title
CN103049314A (zh) 一种开放式系统实时调度方法
CN101488098B (zh) 基于虚拟计算技术的多核计算资源管理系统
CN100511151C (zh) 多路多核服务器及其cpu的虚拟化处理方法
US10664318B2 (en) Method and apparatus for allocating computing resources of processor
US7673305B2 (en) System and method of expediting certain jobs in a computer processing system
WO2016078178A1 (zh) 一种虚拟cpu调度方法
CN102521055B (zh) 一种虚拟机资源分配方法及其系统
CN101894047A (zh) 一种基于内核虚拟机调度策略的实现方法
CN111026519B (zh) 基于分布式的任务优先级调度方法和系统及存储介质
Kang et al. Lalarand: Flexible layer-by-layer cpu/gpu scheduling for real-time dnn tasks
WO2014015725A1 (zh) 基于应用效果即时反馈的显卡虚拟化下资源调度系统、方法
CN101290585A (zh) 一种嵌入式系统实时任务的调度方法
Stillwell et al. Dynamic fractional resource scheduling for hpc workloads
CN104598298A (zh) 基于虚拟机当前工作性质以及任务负载的虚拟机调度算法
CN105550040A (zh) 基于kvm平台的虚拟机cpu资源预留算法
CN104536827A (zh) 一种数据调度方法和装置
CN103914346A (zh) 一种基于分组的实时操作系统双优先级任务调度节能方法
CN103455375A (zh) Hadoop云平台下基于负载监控的混合调度方法
CN115878260A (zh) 一种低碳自适应云主机任务调度系统
Moulik et al. COST: A cluster-oriented scheduling technique for heterogeneous multi-cores
Xilong et al. An energy-efficient virtual machine scheduler based on CPU share-reclaiming policy
US10853133B2 (en) Method and apparatus for scheduling tasks to a cyclic schedule
CN109918181A (zh) 基于最差响应时间的混合关键系统任务可调度性分析方法
Xiao et al. Energy-efficiency enhanced virtual machine scheduling policy for mixed workloads in cloud environments
Kato et al. Scheduling aperiodic tasks using total bandwidth server on multiprocessors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20130417