计算机工程与应用 ›› 2007, Vol. 43 ›› Issue (2): 81-81.

• 学术探讨 • 上一篇    下一篇

分布式控制系统中多种混合任务的容错调度

孙邵海,刘怀   

  1. 南京师范大学电气与电子工程学院
  • 收稿日期:2006-01-18 修回日期:1900-01-01 出版日期:2007-01-11 发布日期:2007-01-11
  • 通讯作者: 刘怀 lhhjf lhhjf

Fault-Tolerant Scheduling Algorithm for Hybrid Many Task Types in Heterogeneous Distributed Control Systems

,   

  1. 南京师范大学电气与电子工程学院
  • Received:2006-01-18 Revised:1900-01-01 Online:2007-01-11 Published:2007-01-11

摘要: 分布式控制系统中存在有强实时、软实时和非实时等多种实时性的任务,其中强实时任务必须在其时限前完成,否则会出现灾难性后果,因此必须为分布式控制系统提供一定的容错能力。首先给出了用于调度多种实时性任务的单处理器调度算法——双优先级队列调度算法,并分析给算法的可调度性条件。针对分布式控制系统,考虑基版本与副版本的执行时间不同时,结合版本复制技术和单处理器调度算法提出了一种新的容错调度算法。分析了算法的可调度行,给出了可任务集的可调度条件判断方法和基版本任务时限的设置方法。在此基础上,采用启发式静态任务分配算法,保证各处理器的负载均衡。本算法在保证任务容错可调度的条件下,可提高系统中各处理器的利用率,仿真结果表明本文提出的算法是有效的。

关键词: 分布式控制系统, 双优先级队列, 容错调度算法

Abstract: In distributed control system (DCS), there are many kinds of tasks, such as hard real-time tasks, soft real-time tasks, non-real-time tasks, and so on. Among them, hard real-time tasks must be finished before their deadlines, otherwise the catastrophes occur. Therefore, fault-tolerance must be offered for DCS. In order to schedule many kinds of different real-time tasks, dual priority queues scheduling algorithm is given for uniprocessor and the schedulable condition of the tasks is investigated. For DCS, considering the difference of execution times of primary copy and backup copy of a hard real-time task on a processor and combining task duplication technique and scheduling algorithm for uniprocessor, a new fault-tolerant scheduling algorithm is presented. The schedulability of the algorithm is analyzed. The condition that the tasks must meet when they are schedulable and the method for setting the deadlines of primary copies are investigated. Basing on this, a heuristic static algorithm for assigning tasks to processors that can guarantee the load of every processor to be balanced is given. The algorithm may improve the utilization of every processor. The simulation experiments show that the algorithm is effective.

Key words: Distributed Control System, Dual Priority Queues, Fault-tolerance Scheduling Algorithm