Real-Time Systems

, Volume 55, Issue 2, pp 209–247 | Cite as

Efficient offline scheduling of task-sets with complex constraints on large distributed time-triggered systems

  • Ali SyedEmail author
  • Gerhard Fohler


Modern real-time applications like avionics and Internet-of-Things are required to aggregate more features and functionality with less production costs. Future applications like CityAirbus and autonomous driving require large distributed systems to deliver expected services and performance. For such systems, scheduling large set of applications may lead to contradicting problems, e.g., resource scarcity and swap (size, weight and power). The time-triggered (TT) computation model has the potential to ease the way for solving all these issues. However, TT scheduling poses several challenges including complex network architectures, co-synthesis of allocation/scheduling and complex constraints (e.g., precedence, latency, reliability, etc.). Although state-of-the-art processor and network scheduling approaches can be used to generate TT schedules for small to medium sized systems, they fail to provide solutions for large distributed systems. In this paper, we discuss the design of a modular, scalable and flexible scheduler for large distributed TT networked systems. We introduce a novel search-space pruning technique, based on the response-times to generate schedules for large systems within reasonable time. Based on our modular scheduler design, we also provide an extension for TTEthernet networks. Through extensive evaluation, we demonstrate that our scheduler is capable of fulfilling the demands of modern and future real-time applications and that it dominates the state-of-the-art TT scheduling approaches in terms of schedulability and run-times.


Time-triggered scheduling Distributed systems Adaptive real-time systems Search-tree pruning TTEthernet 



We would like to thank Ramon Serna Oliver and Silviu S. Craciunas (from TTTech Computertechnik AG, Vienna, Austria) for their generous support by providing their task-set generator for creating synthetic system loads for TTEthernet networks. Furthermore, we would like to thank manuscript reviewers for providing valuable comments. These comments allowed us to improve manuscript quality.


  1. Abdelzaher TF, Shin KG (1999) Combined task and message scheduling in distributed real-time systems. IEEE Trans Parallel Distrib Syst 10(11):1179–1191CrossRefGoogle Scholar
  2. Abdelzaher TF, Shin KG (2000) Period-based load partitioning and assignment for large real-time applications. IEEE Trans Comput 49(1):81–87CrossRefGoogle Scholar
  3. Ahmad I, Kwok YK (1998) Optimal and near-optimal allocation of precedence-constrained tasks to parallel processors: defying the high complexity using effective search techniques. In: International conference on parallel processing, IEEE, pp 424–431Google Scholar
  4. Anwikar V, Bhaduri P (2010) Timing analysis of real-time embedded systems using model checking. In: 18th international conference on real-time and network systems, pp 119–128Google Scholar
  5. AS6802 (2011) Time-triggered ethernet. Standard AS6802, Society of Automotive Engineers InternationalGoogle Scholar
  6. Baruah SK, Rosier LE, Howell RR (1990) Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor. Real-Time Syst 2(4):301–324CrossRefGoogle Scholar
  7. Bratley P, Florian M, Robillard P (1975) Scheduling with earliest start and due date constraints on multiple machines. Naval Res Logist Q 22(1):165–173CrossRefzbMATHGoogle Scholar
  8. Chetto H, Silly M, Bouchentouf T (1990) Dynamic scheduling of real-time tasks under precedence constraints. Real-Time Syst 2(3):181–194CrossRefGoogle Scholar
  9. Coelho RF (2017) Blah. Ph.D. thesis, Technische Universität KaiserslauternGoogle Scholar
  10. Cormen T, Leiserson C, Rivest R, Stein C (2001) Introduction to algorithms. MIT Press, CambridgezbMATHGoogle Scholar
  11. Craciunas SS, Oliver RS (2016) Combined task- and network-level scheduling for distributed time-triggered systems. Real-Time Syst 52(2):161–200. CrossRefzbMATHGoogle Scholar
  12. Dick RP, Rhodes DL, Wolf W (1998) TGFF: task graphs for free. In: Proceedings of the 6th international workshop on hardware/software codesign, CODES/CASHE’98. IEEE Computer Society, Washington, DC, pp 97–101.
  13. Ekelin C, Jonsson J (2001) Evaluation of search heuristics for embedded system scheduling problems. In: Walsh T (ed) Principles and practice of constraint programming, vol 2239. Lecture notes in computer science. Springer, Berlin, pp 640–654Google Scholar
  14. Fohler G (1994) Flexibility in statically scheduled real-time systems. PhD thesis, TNF, Wien, ÖsterreichGoogle Scholar
  15. Glover F, Kochenberger G (2003) Handbook of metaheuristics. International series in operations research & management science. Springer, Berlin.
  16. Goossens J, Devillers R (1999) Feasibility intervals for the deadline driven scheduler with arbitrary deadlines. In: Proceedings of the sixth international conference on real-time computing systems and applications, RTCSA’99. IEEE Computer Society, Washington, DC.
  17. Guasque A, Balbastre P, Crespo A (2016) Real-time hierarchical systems with arbitrary scheduling at global level. J Syst Softw 119:70–86. CrossRefGoogle Scholar
  18. Hanzalek Z, Burget P, Sucha P (2010) Profinet IO IRT message scheduling with temporal constraints. IEEE Trans Ind Inf 6(3):369–380. CrossRefGoogle Scholar
  19. Hart P, Nilsson N, Raphael B (1968) A formal basis for the heuristic determination of minimum cost paths. IEEE Trans Syst Sci Cybern 4(2):100–107CrossRefGoogle Scholar
  20. Hönig U, Schiffmann W (2004) Fast optimal task graph scheduling by means of an optimized parallel A*-algorithm. In: PDPTA, pp 842–848Google Scholar
  21. Itier JB (2007) A380 integrated modular avionics. In: Proceedings of the ARTIST2 meeting on integrated modular avionics, vol 1, pp 72–75Google Scholar
  22. Jeffay K, Stanat D, Martel C (1991) On non-preemptive scheduling of periodic and sporadic tasks. In: Twelfth proceedings of real-time systems symposium, pp 129–139Google Scholar
  23. Jonsson J (1999) Effective complexity reduction for optimal scheduling of distributed real-time applications. In: Proceedings of the IEEE international conference on distributed computing systems, pp 360–369Google Scholar
  24. Kopetz H (1992) Sparse time versus dense time in distributed real-time systems. In: Proceedings of the 12th international conference on distributed computing systems, 1992, pp 460–467,
  25. Korf RE (1985) Depth-first iterative-deepening: an optimal admissible tree search. Artif Intell 27(1):97–109MathSciNetCrossRefzbMATHGoogle Scholar
  26. Kurkovsky S (2009) Experimenting with IDA* search algorithm in heterogeneous pervasive environments. Artif Intell Rev 29(3):277–286. Google Scholar
  27. Land AH, Doig AG (1960) An automatic method for solving discrete programming problems. Econometrica 28(3):497–520MathSciNetCrossRefzbMATHGoogle Scholar
  28. Leung JYT, Merrill M (1980) A note on preemptive scheduling of periodic, real-time tasks. Inf Process Lett 11(3):115–118MathSciNetCrossRefzbMATHGoogle Scholar
  29. Marouf M, Sorel Y (2010) Schedulability conditions for non-preemptive hard real-time tasks with strict period. In: Marouf M, Sorel Y (eds) Proceedings of 18th international conference on real-time and network systems, RTNS’10, Toulouse, France.
  30. Marouf M, Sorel Y (2011) Scheduling non-preemptive hard real-time tasks with strict periods. In: 2011 IEEE 16th conference on emerging technologies & factory automation (ETFA), pp 1–8Google Scholar
  31. McKinsey (2013) The internet of things and the future of manufacturing. Accessed 10 Nov 2016
  32. Peng DT, Shin K (1989) Static allocation of periodic tasks with precedence constraints in distributed real-time systems. In: 9th international conference on distributed computing systems, pp 190–198Google Scholar
  33. Peng DT, Shin K (1993) Optimal scheduling of cooperative tasks in a distributed system using an enumerative method. IEEE Trans Softw Eng 19(3):253–267CrossRefGoogle Scholar
  34. Pozo F, Steiner W, Rodriguez-Navas G, Hansson H (2015) A decomposition approach for SMT-based schedule synthesis for time-triggered networks. In: 2015 IEEE 20th conference on emerging technologies & factory automation (ETFA), pp 1–8Google Scholar
  35. Pozo F, Rodriguez-Navas G, Steiner W, Hansson H (2016) Period-aware segmented synthesis of schedules for multi-hop time-triggered networks. In: 2016 IEEE 22nd international conference on embedded and real-time computing systems and applications (RTCSA), pp 170–175Google Scholar
  36. Pozo F, Rodriguez-Navas G, Hansson H, Steiner W (2017) Schedule synthesis for next generation time-triggered networks. Ph.D. thesis, Mälardalen Real-Time Research Centre, Mälardalen University.
  37. Puffitsch W, Noulard E, Pagetti C (2015) Off-line mapping of multi-rate dependent task sets to many-core platforms. Real-Time Syst 51(5):526–565. CrossRefzbMATHGoogle Scholar
  38. Rao VN, Kumar V, Ramesh K (1987) A parallel implementation of iterative-deepening-A*. In: Proceedings of the sixth national conference on artificial intelligence, vol 1, pp 178–182Google Scholar
  39. Ronngren S, Shirazi B (1995) Static multiprocessor scheduling of periodic real-time tasks with precedence constraints and communication costs. In: Proceedings of the twenty-eighth Hawaii international conference on system sciences, vol 2, pp 143–152Google Scholar
  40. Schorr S (2015) Adaptive real-time scheduling and resource management on multicore architectures. Ph.D. thesis, Technische Universität KaiserslauternGoogle Scholar
  41. Sedgewick R (1977) Permutation generation methods. ACM Comput Surv 9(2):137–164MathSciNetCrossRefzbMATHGoogle Scholar
  42. Steiner W (2010) An evaluation of SMT-based schedule synthesis for time-triggered multi-hop networks. In: Real-time systems symposium (RTSS), IEEE, pp 375–384Google Scholar
  43. Syed AAJ, Fohler G (2014) Search-tree exploration for scheduling using PIDA*. Technical report, August 2014Google Scholar
  44. Tamas-Selicean D, Pop P, Steiner W (2012) Synthesis of communication schedules for TTEthernet-based mixed-criticality systems. In: Proceedings of the eighth IEEE/ACM/IFIP international conference on hardware/software codesign and system synthesis. ACM, New York, pp 473–482Google Scholar
  45. Theis J, Fohler G, Baruah S (2013) Schedule table generation for time-triggered mixed criticality systems. In: 1st workshop on mixed criticality systems, IEEE real-time systems symposiumGoogle Scholar
  46. Tindell K, Burns A, Wellings A (1992) Allocating hard real time tasks: an NP-hard problem made easy. Real-Time Syst 4(2):145–165CrossRefGoogle Scholar
  47. Tucker A (2006) Applied combinatorics. Wiley, New YorkzbMATHGoogle Scholar
  48. Waez MTB, Dingel J, Rudie K (2011) Timed automata for the development of real-time systems. Research Report 2011-579, Queen’s University-School of ComputingGoogle Scholar
  49. Xu LD, He W, Li S (2014) Internet of things in industries: a survey. IEEE Trans Ind Inf 10(4):2233–2243. CrossRefGoogle Scholar
  50. Zhang L, Goswami D, Schneider R, Chakraborty S (2014) Task- and network-level schedule co-synthesis of ethernet-based time-triggered systems. In: 19th Asia and South Pacific design automation conference (ASP-DAC), pp 119–124Google Scholar

Copyright information

© Springer Science+Business Media, LLC, part of Springer Nature 2018

Authors and Affiliations

  1. 1.Technische Universität KaiserslauternKaiserslauternGermany
  2. 2.Technische Universität KaiserslauternKaiserslauternGermany

Personalised recommendations