This Article 
   
 Share 
   
 Bibliographic References 
   
 Add to: 
 
Digg
Furl
Spurl
Blink
Simpy
Google
Del.icio.us
Y!MyWeb
 
 Search 
   
Exact Fault-Sensitive Feasibility Analysis of Real-Time Tasks
October 2007 (vol. 56 no. 10)
pp. 1372-1386

Abstract—In this paper, we consider the problem of checking the feasibility of a set of n real-time tasks while provisioning for timely recovery from (at most) k transient faults. We extend the well-known Processor Demand Approach to take into account the extra overhead that may be induced by potential recovery operations under Earliest-Deadline-First scheduling. We develop a necessary and sufficient test using dynamic programming technique. An improvement upon the previous solutions is to address and efficiently solve the case where the recovery blocks associated with a given task do not have necessarily the same execution time. We also provide an on-line version of the algorithm that does not require a priori knowledge of release times. The on-line algorithm runs in O(m ⋅ k^2) time where m is the number of ready tasks. We extend the framework to periodic execution settings: we derive a sufficient condition that can be checked efficiently for the feasibility of periodic tasks in the presence of faults. Finally, we analyze the case where the recovery blocks are to be executed non-preemptively and we formally show that the problem becomes intractable under that assumption.

[1] H. Aydin, R. Melhem, D. Mossé, and P. Mejia-Alvarez, “Power-Aware Scheduling for Periodic Real-Time Tasks,” IEEE Trans. Computers, vol. 53, no. 10, pp. 584-600, Oct. 2004.
[2] S. Baruah, A. Mok, and L. Rosier, “Preemptively Scheduling Hard-Real-Time Sporadic Tasks on One Processor,” Proc. IEEE Real-Time Systems Symp. (RTSS '90), Dec. 1990.
[3] S. Baruah, R. Howell, and L. Rosier, “Algorithms and Complexity Concerning the Preemptive Scheduling of Periodic, Real-Time Tasks on One Processor,” Real-Time Systems, vol. 2, no. 4, pp. 301-324, Nov. 1990.
[4] A. Burns, R. Davis, and S. Punnekkat, “Feasibility Analysis of Fault-Tolerant Real-Time Task Sets,” Proc. Eighth Euromicro Workshop Real-Time Systems, June 1996.
[5] A. Burns, S. Punnekkat, L. Strigini, and D.R. Wright, “Probabilistic Scheduling Guarantees for Fault-Tolerant Real-Time Systems,” Proc. Seventh IFIP Int'l Working Conf. Dependable Computing for Critical Applications (DCCA '99), Jan. 1999.
[6] A. Burns, G. Bernat, and I. Broster, “A Probabilistic Framework for Schedulability Analysis,” Proc. Third ACM Int'l Embedded Software Conf. (EMSOFT '03), pp. 1-15, Oct. 2003.
[7] G. Buttazzo and J. Stankovic, “Adding Robustness in Dynamic Preemptive Scheduling,” Responsive Computer Systems: Steps toward Fault-Tolerant Real-Time Systems, D.S. Fussell and M. Malek, eds., Kluwer Academic, 1995.
[8] G. Buttazzo, G. Lipari, M. Caccamo, and L. Abeni, “Elastic Scheduling for Flexible Workload Management,” IEEE Trans. Computers, vol. 51, no. 3, pp. 289-302, Mar. 2002.
[9] M. Caccamo and G. Buttazzo, “Optimal Scheduling for Fault-Tolerant and Firm Real-Time Systems,” Proc. Fifth Int'l Workshop Real-Time Computing Systems and Applications (RTCSA '98), Oct. 1998.
[10] X. Castillo, S.P. McConnel, and D.P. Siewiorek, “Derivation and Calibration of a Transient Error Reliability Model,” IEEE Trans. Computers, vol. 31, no. 7, pp. 658-671, July 1972.
[11] 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.
[12] T.H. Cormen, C.E. Leiserson, and R.L. Rivest, Introduction to Algorithms. MIT Press, 1997.
[13] M.L. Dertouzos, “Control Robotics: The Procedural Control of Physical Processes,” Information Processing, 1974.
[14] M. Garey and D. Johnson, Computers and Intractability. W.H. Freeman, 1979.
[15] S. Ghosh, R. Melhem, D. Mossé, and J. Sansarma, “Fault-Tolerant Real-Time Scheduling,” Real-Time Systems J., vol. 15, no. 2, pp. 149-182, Sept. 1998.
[16] C. Han, K.G. Shin, and J. Wu, “A Fault-Tolerant Scheduling Algorithm for Real-Time Periodic Tasks with Possible Software Faults,” IEEE Trans. Computers, vol. 52, no. 3, pp. 362-372, Mar. 2003.
[17] K. Jeffay, “Scheduling Sporadic Tasks with Shared Resources in Hard-Real-Time Systems,” Proc. IEEE Real-Time Systems Symp. (RTSS '92), Dec. 1992.
[18] K. Jeffay and D.L. Stone, “Accounting for Interrupt Handling Costs in Dynamic Priority Task Systems,” Proc. IEEE Real-Time Systems Symp. (RTSS '93), Dec. 1993.
[19] K.-H. Huang and J.A. Abraham, “Algorithm-Based Fault Tolerance for Matrix Operations,” IEEE Trans. Computers, special issue on reliable and fault-tolerant computing, vol. 33, no. 6, pp. 518-528, June 1984.
[20] R.K. Iyer and D.J. Rossetti, “A Measurement-Based Model for Workload Dependence of CPU Errors,” IEEE Trans. Computers, vol. 35, no. 6, pp. 511-519, June 1986.
[21] R.K. Iyer, D.J. Rossetti, and M.C. Hsueh, “Measurement and Modeling of Computer Reliability as Affected by System Activity,” ACM Trans. Computer Systems, vol. 4, no. 3, pp. 214-237, Aug. 1986.
[22] F. Liberato, S. Lauzac, R. Melhem, and D. Mossé, “Global Fault-Tolerant Real-Time Scheduling on Multiprocessors,” Proc. 11th Euromicro Workshop Real-Time Systems, June 1999.
[23] F. Liberato, R. Melhem, and D. Mossé, “Tolerance to Multiple Transient Faults for Aperiodic Tasks in Hard Real-Time Systems,” IEEE Trans. Computers, vol. 49, no. 9, pp. 906-914, Sept. 2000.
[24] D.A. Lima and A. Burns, “An Optimal Fixed-Priority Assignment Algorithm for Supporting Fault-Tolerant Hard Real-Time Systems,” IEEE Trans. Computers, vol. 52, no. 10, pp. 217-231, Oct. 2003.
[25] G. Lima and A. Burns, “Scheduling Fixed-Priority Hard Real-Time Tasks in the Presence of Faults,” Proc. Second Latin-American Symp. Dependable Computing (LADC '05), pp. 154-173, Oct. 2005.
[26] R. Melhem, D. Mossé, and E. Elnozahy, “The Interplay of Power Management and Fault Recovery in Real-Time Systems,” IEEE Trans. Computers, vol. 53, no. 2, pp. 217-231, Feb. 2004.
[27] C.L. Liu and J.W. Layland, “Scheduling Algorithms for Multiprogramming in Hard Real-Time Environment,” J. ACM, vol. 20, no. 1, pp. 46-61, 1973.
[28] A. Maheshwari, W. Burleson, and R. Tessier, “Trading Off Transient Fault Tolerance and Power Consumption in Deep Submicron (DSM) VLSI Circuits,” IEEE Trans. Very Large Scale Integration Systems, vol. 12, no. 3, pp. 299-312, Mar. 2004.
[29] M. Pandya and M. Malek, “Minimum Achievable Utilization for Fault-Tolerant Processing of Periodic Tasks,” IEEE Trans. Computers, vol. 47, no. 10, pp. 1102-1112, Oct. 1998.
[30] D.K. Pradhan, Fault-Tolerant Computer System Design. Prentice Hall, 1996.
[31] S. Punnekkat, A. Burns, and R. Davis, “Analysis of Checkpointing for Real-Time Systems,” J. Real-Time Systems, vol. 20, no. 1, pp. 83-102, Jan. 2001.
[32] B. Randell, “System Structure for Software Fault Tolerance,” IEEE Trans. Software Eng., vol. 1, no. 2, pp. 220-232, June 1975.
[33] Deadline Scheduling for Real-Time Systems: EDF and Related Algorithms, J. Stankovic, M. Spuri, K. Ramamritham, and G.Buttazzo, eds. Kluwer Academic, 1998.
[34] S. Ramos-Thuel and J.K. Strosnider, “Scheduling Fault Recovery Operations for Time-Critical Applications,” Proc. Fifth IFIP Int'l Conf. Dependable Computing for Critical Applications (DCCA '95), Sept. 1995.
[35] Y. Zhang, K. Chakrabarty, and V. Swaminathan, “Energy-Aware Fault Tolerance in Fixed-Priority Real-Time Embedded Systems,” Proc. Int'l Conf. Computer-Aided Design (ICCAD '03), Nov. 2003.
[36] Y. Zhang and K. Chakrabarty, “A Unified Approach for Fault Tolerance and Dynamic Power Management in Real-Time Embedded Systems,” IEEE Trans. Computer-Aided Design of Integrated Circuits and Systems, vol. 25, no. 1, pp. 111-125, Jan. 2006.

Index Terms:
Real-time Scheduling, Real-Time Systems, Fault Tolerance, Deadline-driven Systems, Recovery Blocks, Processor Demand Analysis
Citation:
Hakan Aydin, "Exact Fault-Sensitive Feasibility Analysis of Real-Time Tasks," IEEE Transactions on Computers, vol. 56, no. 10, pp. 1372-1386, Oct. 2007, doi:10.1109/TC.2007.70739
Usage of this product signifies your acceptance of the Terms of Use.