Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

A Fault-Tolerant Scheduling Algorithm for Real-Time Periodic Tasks with Possible Software Faults

Published: 01 March 2003 Publication History

Abstract

A hard real-time system is usually subject to stringent reliability and timing constraints since failure to produce correct results in a timely manner may lead to a disaster. One way to avoid missing deadlines is to trade the quality of computation results for timeliness and software fault tolerance is often achieved with the use of redundant programs. A deadline mechanism which combines these two methods is proposed to provide software fault tolerance in hard real-time periodic task systems. Specifically, we consider the problem of scheduling a set of real-time periodic tasks each of which has two versions: primary and alternate. The primary version contains more functions (thus more complex) and produces good quality results, but its correctness is more difficult to verify because of its high level of complexity and resource usage. By contrast, the alternate version contains only the minimum required functions (thus simpler) and produces less precise, but acceptable results and its correctness is easy to verify. We propose a scheduling algorithm which 1) guarantees either the primary or alternate version of each critical task to be completed in time and 2) attempts to complete as many primaries as possible. Our basic algorithm uses a fixed priority-driven preemptive scheduling scheme to preallocate time intervals to the alternates and, at runtime, attempts to execute primaries first. An alternate will be executed only 1) if its primary fails due to lack of time or manifestation of bugs or 2) when the latest time to start execution of the alternate without missing the corresponding task deadline is reached. This algorithm is shown to be effective and easy to implement. This algorithm is enhanced further to prevent early failures in executing primaries from triggering failures in the subsequent job executions, thus improving efficiency of processor usage.

References

[1]
K.-J. Lin S. Natarajan and J.W.-S. Liu, “Imprecise Results: Utilizing Partial Computations in Real-Time Systems,” Proc. Real-Time Systems Symp., pp. 210-217, Dec. 1987.
[2]
K.B. Kenny, “Structuring Real-Time Systems Using Performance Polymorphism,” PhD thesis, Univ. of Illinois at Urbana-Champaign, Nov. 1990.
[3]
J.A. Stankovic, “Misconceptions about Real-Time Computing,” Computer, pp. 10-19, Oct. 1988.
[4]
J. Goldberg, et al., “Development and Analysis of SIFT,” NASA contractor report 17146, NASA Langley Research Center, Feb. 1984.
[5]
R.H. Campbell K.H. Horton and G.G. Belford, “Simulations of a Fault-Tolerant Deadline Mechanism,” Proc. Ninth Fault-Tolerant Computing Symp. (FTCS-9), pp. 95-101, June 1979.
[6]
A.L. Liestman and R.H. Campbell, “A Fault-Tolerant Scheduling Problem,” IEEE Trans. Software Eng., vol. 12, no. 11, pp. 1089-1095, Nov. 1986.
[7]
M.G. Harbour M.H. Klein and J.P. Lehoczky, “Timing Analysis for Fixed-Priority Scheduling of Hard Real-Time Systems,” IEEE Trans. Software Eng., vol. 20, no. 1, pp. 13-28, Jan. 1994.
[8]
J. Lehoczky L. Sha and Y. Ding, “The Rate Monotonic Scheduling Algorithm: Exact Characterization and Average Case Behavior,” Proc. Real-Time Systems Symp., pp. 166-171, Dec. 1989.
[9]
J.Y.-T. Leung and M.L. Merrill, “A Note on Preemptive Scheduling of Periodic, Rreal-Time Tasks,” Information Processing Letters, vol. 11, no. 3, pp. 115-118, Nov. 1980.
[10]
J.Y.-T. Leung and J. Whitehead, “On the Complexity of Fixed-Priority Scheduling of Periodic, Real-Time Tasks,” Performance Evaluation, vol. 2, pp. 237-250, 1982.
[11]
C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multiprogramming in a Hard Real-Time Environment,” J. ACM, vol. 20, no. 1, pp. 46-61, Jan. 1973.
[12]
L. Sha R. Rajkumar and J.P. Lehoczky, “Priority Inheritance Protocols: An Approach to Real-Time Synchronization,” IEEE Trans. Computers, vol. 39, no. 9, pp. 1175-1185, Jan. 1990.
[13]
C.-C. Han and K.G. Shin, “A Globally Optimal Algorithm for Scheduling Both Hard Periodic and Soft Aperiodic Tasks,” IEEE Trans. Computers, submitted.
[14]
N. Homayoun and P. Ramanathan, “Dynamic Priority Scheduling of Periodic and Aperiodic Tasks in Hard Real-Time Systems,” Real-Time Systems J., vol. 6, pp. 207-232, 1994.
[15]
J.P. Lehoczky L. Sha and J.K. Strosnider, “Enhanced Aperiodic Responsiveness in Hard Real-Time Environments,” Proc. Real-Time Systems Symp., pp. 261-270, Dec. 1987.
[16]
J.P. Lehoczky and S. Ramos-Thuel, “An Optimal Algorithm for Scheduling Soft-Aperiodic Tasks in Fixed Priority Preemptive Systems,” Proc. Real-Time Systems Symp., pp. 110-123, Dec. 1992.
[17]
T.-H. Lin and W. Tarng, “Scheduling Periodic and Aperiodic Tasks in Hard Real-Time Computing Systems,” Performance Evaluation Rev., vol. 19, no. 1, pp. 31-37, May 1991.
[18]
B. Sprunt J. Lehoczky and L. Sha, “Exploiting Unused Periodic Time for Aperiodic Service Using the Extended Priority Exchange Algorithm,” Proc. Real-Time Systems Symp., pp. 251-258, Dec. 1988.
[19]
L. Sha, “Dependable System Upgrade,” Proc. 19th IEEE Real-Time Systems Symp., pp. 440-449, 1998.
[20]
R. Melhem S. Ghosh and D. Mosse, “Enhancing Real-Time Schedules to Tolerate Transient Faults,” Proc. 16th IEEE Real-Time Systems Symp., pp. 120-129, Dec. 1995.
[21]
H. Chetto and M. Chetto, “Some Results of the Earliest Deadline Scheduling Algorithm,” IEEE Trans. Software Eng., vol. 15, no. 10, pp. 1261-1269, Oct. 1989.

Cited By

View all
  • (2021)Biobjective Scheduling for Joint Parallel Machines with Sequence-Dependent Setup by Taking Pareto-Based ApproachModelling and Simulation in Engineering10.1155/2021/66633752021Online publication date: 1-Jan-2021
  • (2019)Energy-Aware Fault-Tolerant Dynamic Task Scheduling Scheme for Virtualized Cloud Data CentersMobile Networks and Applications10.1007/s11036-018-1062-724:3(1063-1077)Online publication date: 1-Jun-2019
  • (2017)Fault-tolerant elastic scheduling algorithm for workflow in Cloud systemsInformation Sciences: an International Journal10.1016/j.ins.2017.01.035393:C(47-65)Online publication date: 1-Jul-2017
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image IEEE Transactions on Computers
IEEE Transactions on Computers  Volume 52, Issue 3
March 2003
143 pages

Publisher

IEEE Computer Society

United States

Publication History

Published: 01 March 2003

Author Tags

  1. CAT algorithm
  2. EIT algorithm.
  3. Real-time systems
  4. alternate
  5. backwards-RM algorithm
  6. deadline mechanisms
  7. notification time
  8. primary

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 06 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2021)Biobjective Scheduling for Joint Parallel Machines with Sequence-Dependent Setup by Taking Pareto-Based ApproachModelling and Simulation in Engineering10.1155/2021/66633752021Online publication date: 1-Jan-2021
  • (2019)Energy-Aware Fault-Tolerant Dynamic Task Scheduling Scheme for Virtualized Cloud Data CentersMobile Networks and Applications10.1007/s11036-018-1062-724:3(1063-1077)Online publication date: 1-Jun-2019
  • (2017)Fault-tolerant elastic scheduling algorithm for workflow in Cloud systemsInformation Sciences: an International Journal10.1016/j.ins.2017.01.035393:C(47-65)Online publication date: 1-Jul-2017
  • (2016)Cross-Layer Software Dependability on Unreliable HardwareIEEE Transactions on Computers10.1109/TC.2015.241755465:1(80-94)Online publication date: 1-Jan-2016
  • (2015)Optimal Checkpoint Selection with Dual-Modular Redundancy HardeningIEEE Transactions on Computers10.1109/TC.2014.234949264:7(2036-2048)Online publication date: 1-Jul-2015
  • (2014)Fault-tolerant scheduling in homogeneous real-time systemsACM Computing Surveys10.1145/253402846:4(1-34)Online publication date: 1-Mar-2014
  • (2014)Fault-tolerant and real-time scheduling for mixed-criticality systemsReal-Time Systems10.1007/s11241-014-9202-z50:4(509-547)Online publication date: 1-Jul-2014
  • (2013)Fault-tolerant hierarchical real-time scheduling with backup partitions on single processorACM SIGBED Review10.1145/2583687.258369310:4(25-28)Online publication date: 1-Dec-2013
  • (2013)The BGW model for QoS aware scheduling of real-time embedded systemsProceedings of the 11th ACM international symposium on Mobility management and wireless access10.1145/2508222.2508236(93-100)Online publication date: 3-Nov-2013
  • (2012)Scheduling and Optimization of Fault-Tolerant Embedded Systems with Transparency/Performance Trade-OffsACM Transactions on Embedded Computing Systems10.1145/2345770.234577311:3(1-35)Online publication date: 1-Sep-2012
  • Show More Cited By

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media