Skip to main content
Log in

Allocating hard real-time tasks: An NP-Hard problem made easy

  • Published:
Real-Time Systems Aims and scope Submit manuscript

Abstract

A distributed hard real time system can be composed from a number of communicating tasks. One of the difficulties with building such systems is the problem of where to place the tasks. In general there are P T ways of allocating T tasks to P processors, and the problem of finding an optimal feasible allocation (where all tasks meet physical and timing constraints) is known to be NP-Hard. This paper describes an approach to solving the task allocation problem using a technique known as simulated annealing. It also defines a distributed hard real-time architecture and presents new analysis which enables timing requirements to be guaranteed.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  • Aarts, E.H.L. and Korst, J., 1988. Simulated Annealing and Boltzmann Machines. New York: Wiley-Interscience.

    Google Scholar 

  • Audsley, N.C., Burns, A., Richardson, M.F. and Wellings, A.J., 1990. Hard real-time scheduling: The deadline monotonic approach. Proceedings 8th IEEE Workshop on Real-Time Operating Systems and Software, Atlanta, USA (May 15–17).

  • Bannister, J.A. and Trivedi, K.S., 1983. Task allocation in fault-tolerant distributed systems. Acta Informatica 20: 261–281.

    Google Scholar 

  • Bollinger, S. and Midkiff, F., 1990. Heuristic technique of processor and link assignment in multicomputers. IEEE Transactions on Computers 40: 325–333.

    Google Scholar 

  • Burns, A., 1990. Scheduling hard real-time systems: A review. Software Engineering Journal 6(3): 116–128.

    Google Scholar 

  • Chen, G. and Yur, J., 1990. A branch-and-bound-with-underestimates algorithm for the task assignment problem with precedence constraint. 10th International Conference on Distributed Computing Systems, pp. 494–501.

  • Chu, W.W. and Lan, L.M., 1987, Task allocation and precedence relations for distributed real-time systems. IEEE Transactions on Computers A02: 667–79. IEEE Trans. Comput. (USA).

    Google Scholar 

  • Damm, A., Reisinger, J., Schwabl, W. and Kopetz, H., 1989. The real-time operating system of MARS. ACM Operating Systems Review 23(3 (Special Issue)): 141–15.

    Google Scholar 

  • Houstis, C.E., 1990. Module allocation of real-time applications to distributed systems. IEEE Transactions on Software Engineering, 16(7): 699–709, IEEE Trans. Softw. Eng. (USA).

    Google Scholar 

  • Kirkpatrick, S., Gelatt, C.D. and Vecchi, M.P., 1983. Optimization by simulated annealing. Science (220): 671–680.

  • Laarhoven, P.J.M. and Aarts, E.H.L., 1987. Simulated Annealing: Theory and Applications. D. Reidel Publishing.

  • Lehoczky, J., Sha, L. and Ding, Y., 1989. The rate monotonic scheduling algorithm: Exact characterization and average case behavior, Proceedings of the Real-Time Systems Symposium.

  • Leung, J.Y.T. and Whitehead, J., 1982. On the complexity of fixed-priority scheduling of periodic real-time tasks. Performance Evaluation, vol. 2, (4); 237–250.

    Google Scholar 

  • Liu, C.L. and Layland, J.W., 1973. Scheduling algorithms for multiprogramming in a hard real-time environment. Journal of the ACM, 20(1): 46–61.

    Google Scholar 

  • Price, C.C. and Salama, M.A., 1980. Scheduling of precedence-constrained tasks on multiprocessors. The Computer Journal 33 (3): 219.

    Google Scholar 

  • Radcliffe, N. and Wilson, G., 1980. Natural solutions give their best. New Scientist, pp. 47–50.

  • Ramamrithamn, K., 1980. Allocation and scheduling of complex periodic tasks. 10the International Conference on Distributed Computing Systems, pp. 108–115.

  • Roussel-Ragot, P. and Dreyfus, G., 1990. A problem independent parallel implementation of simulated annealing: Models and experiments. IEEE Transactions on Computer-Aided Design, 9 (8).

  • Tindell, K., 1990. Allocating real-time tasks (An NP-hard problem made easy). YCS 149, Department of Computer Science, University of York.

  • Varbosa, V. and Boeres, M.C., 1990. An occam based evaluation of a parallel version of simulated annealing. Microprocessing and Microprogramming, pp. 85–92, Euromicro '90.

Download references

Author information

Authors and Affiliations

Authors

Additional information

This work was supported in part by British Aerospace (Commercial Aircraft) Ltd, and the UK Department of Trade and Industry.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Tindell, K.W., Burns, A. & Wellings, A.J. Allocating hard real-time tasks: An NP-Hard problem made easy. The Journal of Real-Time Systems 4, 145–165 (1992). https://doi.org/10.1007/BF00365407

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF00365407

Keywords

Navigation