Integrating Unbounded Software Components into Hard Real-Time Systems

  • N. C. Audsley
  • A. Burns
  • R. I. Davis
  • A. J. Wellings
Part of the The Springer International Series in Engineering and Computer Science book series (SECS, volume 318)


The incorporation of unbounded components (i.e. software modules that cannot be analysed to produce realistic worst case execution times) into hard real-time applications has been recognised as a key issue for the next generation of real-time systems. In this paper, we present a system model that caters for the three main approaches to integrating unbounded components: milestone methods, sieve functions and multiple versions. This model is feasible because it is supported by schedulability tests that will guarantee the bounded tasks. These test are defined in the paper. Further, only a simple run-time system that uses pre-emptive priority-based dispatching is required. The wide-spread use of techniques such as imprecise computation will only happen if they are integrated into standard software engineering methods, we therefore also show how the techniques can be realised in Ada 9X.1


Busy Period Spare Capacity Sporadic Task Schedulability Analysis Schedulability Test 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. [1]
    Intermetrics Ada 9X Mapping/Revision Team. Ada 9X Reference Manual, draft version 4.0 edition, September 1993. Ada 9X Project Report.Google Scholar
  2. [2]
    N. Audsley, A. Burns, M. Richardson, K. Tindell, and A.J. Wellings. Applying new scheduling theory to static priority pre-emptive scheduling. Software Enginnering Journal, July 1993.Google Scholar
  3. [3]
    N. C. Audsley. Optimal priority assignment and feasibility of static priority tasks with arbitrary start times. Technical Report YCS 164, Dept. Computer Science, University of York, December 1991.Google Scholar
  4. [4]
    N. C. Audsley. Flexible Scheduling of Hard Real-Time Systems. PhD thesis, Department of Computer Science, University of York, 1993.Google Scholar
  5. [5]
    N. C. Audsley, A. Burns, M. F. Richardson, and A. J. Wellings. Hard realtime scheduling: The deadline monotonic approach. In Proceedings 8th IEEE Workshop on Real-Time Operating Systems and Software, Atlanta, GA, USA, May 1991.Google Scholar
  6. [6]
    A. Burns and A. J. Wellings. Criticality and utility in the next generation. Real-time Systems, 3(4), 1991.Google Scholar
  7. [7]
    H. Chetto and M. Silly. Exploiting system laxity to perform adaptive and predictable scheduling in hard real-time systems. In Proceedings International Workshop on Responsive Systems, pages 49–51, Golfe-Juan, France, October 1991.Google Scholar
  8. [8]
    J. Y. Chung, J. W. S. Liu, and K.J. Lin. Scheduling periodic jobs that allow imprecise results. IEEE Transactions on Computers, 39(9): 1156–1174, September 1990.CrossRefGoogle Scholar
  9. [9]
    J. Y. Chung, W. K. Shih, J. W. S. Liu, and D. W. Gillies. Scheduling imprecise computations to minimize total error. Microprocessing & Microprogramming, 27(1–5):67–74, August 1989.Google Scholar
  10. [10]
    R. I. Davis, K. W. Tindell, and A. Burns. Scheduling slack time in fixed priority pre-emptive systems. In Proceedings Real-Time Systems Symposium, December 1993.Google Scholar
  11. [11]
    D. Haban and K. G. Shin. Application of real-time monitoring to scheduling tasks with random execution times. IEEE Transactions on Software Engineering, 16(12), December 1990.Google Scholar
  12. [12]
    M. Joseph and P. Pandya. Finding response times in a real-time system. The Computer Journal (British Computer Society), 29(5):390–395, October 1986.Google Scholar
  13. [13]
    J. S. Lark, L. E. Erman, S. Forrest, K. P. Gostelow, F. Hayes-Roth, and D. M. Smith. Concepts, methods and languages for building timely intelligent systems. Real-Time Systems, 2(1/2):127–148, May 1990.CrossRefGoogle Scholar
  14. [14]
    J. Lehoczky, L. Sha, and Y. Ding. The rate-monotonic scheduling algorithm: Exact characterization and average case behaviour. In Proceedings IEEE Real-Time Systems Symposium, pages 166–171, Santa Monica, California, December 1989. IEEE Computer Society Press.Google Scholar
  15. [15]
    J. P. Lehoczky and S. Ramos-Thuel. An optimal algorithm for scheduling soft-aperiodic tasks fixed-priority preemptive systems. In Proceedings Real-Time Systems Symposium, pages 110–123, December 1992.Google Scholar
  16. [16]
    J. P. Lehoczky, L. Sha, and J. K. Strosnider. Enhanced aperiodic responsiveness in hard real-time environments. In Proceedings IEEE Real-Time System Symposium, pages 261–270, San Jose, California, 1987.Google Scholar
  17. [17]
    J. Y. T. Leung and J. Whitehead. On the complexity of fixed-priority scheduling of periodic, real-time tasks. Performance Evaluation (Netherlands), 2(4):237–250, December 1982.CrossRefGoogle Scholar
  18. [18]
    C. L. Liu and J. W. Layland. Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the ACM, 20(1):40–61, January 1973.CrossRefGoogle Scholar
  19. [19]
    J. W. S. Liu and K. J. Lin. On means to provide flexibility in scheduling. ACM Ada Letters, 8(7), 1988.Google Scholar
  20. [20]
    J. W. S. Liu, K. J. Lin, and S. Natarajan. Scheduling real-time, periodic jobs using imprecise results. In Proceedings 8th IEEE Real-Time Systems Symposium, pages 252–260, Fairmont Hotel, San Jose, California, December 1987.Google Scholar
  21. [21]
    J. W. S. Liu, K. J. Lin, W. K. Shih, A. C. S. Yu, J. Y. Chung, and W. Zhao. Algorithms for scheduling imprecise computations. IEEE Computer, pages 58–68, May 1991.Google Scholar
  22. [22]
    C. S. Lizza, S. B. Banks, and M. A. Whelan. Pilot’s associate: Evolution of a functional prototype. In AGARD Conference Proceedings 499 (Machine Intelligence for Aerospace Electronic Systems), pages 16.1–16.12, Lisbon, Portugal, 1991.Google Scholar
  23. [23]
    A C. D. Locke. Best-Effort Decision Making for Real-Time Scheduling. PhD thesis, Computer Science Department, CMU, May 1986. CMU-CS-86-134 (PhD Thesis).Google Scholar
  24. [24]
    J. D. Northcutt. Mechanisms for Reliable Distributed Real-Time Operating Systems: The Alpha Kernel. Academic Press, Orlando, 1987.MATHGoogle Scholar
  25. [25]
    L. Sha, R. Rajkumar, and J. P. Lehoczky. Priority inheritance protocols: An approach to real-time synchronisation. IEEE Transactions on Computers, 39(9):1175–1185, September 1990.CrossRefGoogle Scholar
  26. [26]
    L. Sha, B. Sprunt, and J. P. Lehoczky. Aperiodic task scheduling for hard real-time systems. The Journal of Real-Time Systems, 1:27–69, 1989.CrossRefGoogle Scholar
  27. [27]
    C. Shen, K. Ramamritham, and J. A. Stankovic. Resource reclaiming in real-time. In Proceedings 10th IEEE Real-Time Systems Symposium, pages 41–50, Santa Monica, California, USA, December 1989.Google Scholar
  28. [28]
    W. K. Shih, J. W. S. Liu, and J. Y. Chung. Algorithms for scheduling imprecise computations with timing constraints. In Proceedings 10th IEEE Real-Time Systems Symposium, Santa Monica, California, December 1989.Google Scholar
  29. [29]
    W. K. Shih, J. W. S. Liu, J. Y. Chung, and D. W. Gillies. Scheduling tasks with ready times and deadlines to minimise average error. Operating Systems Review, 23(3):14–28, July 1988.CrossRefGoogle Scholar
  30. [30]
    X. Song and J. W. S. Liu. Performance of multiversion concurrency control algorithms in maintaining temporal consistency. Technical report, Dept. of Computer Science, Univ. of Illinois at Urbana-Champaign, 1990.Google Scholar
  31. [31]
    B. Sprunt, J. Lehoczky, and L. Sha. Exploiting unused periodic time for aperiodic service using the extended priority exchange algorithm. In Proceedings IEEE Real-Time Systems Symposium, pages 251–258, December 1988.Google Scholar
  32. [32]
    J. A. Stankovic and K. Ramamritham. What is predictability for real-time systems? Real-Time Systems, 2(4):247–254, 1990.CrossRefGoogle Scholar
  33. [33]
    J.A. Stankovic. Real-time computing systems: The next generation. Technical Report 88-06, Department of Computer and Information Science, University of Massachusetts, Amherst, January 1988.Google Scholar
  34. [34]
    K. W. Tindell. Using offset information to analyse static priority preemptively scheduled task sets. Technical Report YCS 182, Dept. Computer Science, University of York, December 1992.Google Scholar

Copyright information

© Kluwer Academic Publishers 1995

Authors and Affiliations

  • N. C. Audsley
    • 1
  • A. Burns
    • 1
  • R. I. Davis
    • 1
  • A. J. Wellings
    • 1
  1. 1.Real-Time Systems Research Group, Department of Computer ScienceUniversity of YorkUK

Personalised recommendations