Skip to main content
Log in

Combinatorial abstraction refinement for feasibility analysis of static priorities

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

Abstract

Combinatorial explosion is a challenge for many analysis problems in the theory of hard real-time systems. One of these problems is static priority schedulability of workload models which are more expressive than the traditional periodic task model. Different classes of directed graphs have been proposed in recent years to model structures like frames, branching and loops. In contrast to dynamic priority schedulers with pseudo-polynomial time analysis methods, static priority schedulability has been shown to be intractable since it is strongly coNP-hard already for the relatively simple class of cyclic digraphs. The core of this problem is the necessity to combine different behaviors of the participating tasks.

We introduce a novel iterative approach to efficiently cope with this combinatorial explosion, called combinatorial abstraction refinement. In combination with other techniques it significantly reduces exponential growth of run-time for most inputs. We apply the method to static task priorities and demonstrate that a prototype implementation outperforms the state-of-the art pseudo-polynomial analysis for dynamic priority feasibility. It further shows better scaling behavior for randomly generated problem instances. We extend the approach to non-preemptive schedulers as well as static job-type priorities where jobs of different types in the same task may be assigned different static priorities. Finally, we provide a general, abstract formulation of the algorithm, since we believe that this method can be applicable to a variety of combinatorial problems in the theory of real-time systems with certain abstraction structures.

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.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16
Fig. 17
Fig. 18
Fig. 19
Fig. 20

Similar content being viewed by others

Notes

  1. Another important condition for this is that all jobs released by the same task do have the same priority. We extend the method to SJP in Sect. 6, i.e., where different vertices could be assigned different static priorities.

  2. The point-wise maximum on request functions and the dominance relation from Definition 6 are a join-semilattice \((\succcurlyeq , \sqcup )\) on the request functions for each task. These semilattices are the core structure of our abstraction refinement technique.

  3. A bound \(L\) for the size of the maximal busy window can be easily computed by finding smallest interval size \(t\) for which \(\sum _{T\in \tau } \textit{mrf }^{(T)}(t) \leqslant t\).

References

  • Audsley NC (1991) Optimal priority assignment and feasibility of static priority tasks with arbitrary start times. YCS-164, University of York, England

  • Baruah SK (1998) A general model for recurring real-time tasks. In: Proceedings of the Real-Time Systems Symposium RTSS, pp 114–122 1998

  • Baruah SK (2010) The non-cyclic recurring real-time task model. In: Proceedings of the real-time systems symposium RTSS, pp 173–182 2010

  • Baruah S, Chen D, Gorinsky S, Mok A (1999) Generalized multiframe tasks. Real-Time Syst 17(1):5–22

    Article  Google Scholar 

  • Clarke E, Grumberg O, Jha S, Lu Y, Veith H (2000) Counterexample-guided abstraction refinement. In: Emerson E, Sistla A (eds) Computer aided verification. Lecture Notes in Computer Science, vol 1855. Springer, Berlin, pp 154–169

  • Cousot P, Cousot R (1977) Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on principles of programming languages. ACM, New York, pp 238–252

    Google Scholar 

  • Davis R, Burns A (2011) Improved priority assignment for global fixed priority pre-emptive scheduling in multiprocessor real-time systems. Real-Time Syst. 47(1):1–40

    Article  MATH  Google Scholar 

  • Davis RI, Burns A, Bril RJ, Lukkien JJ (2007) Controller area network (CAN) schedulability analysis: Refuted, revisited and revised. Real-Time Syst. 35(3):239–272

    Article  Google Scholar 

  • Dertouzos ML (1974) Control robotics: the procedural control of physical processes. In: Proceeding of IFIP congress, vol 74. Stockholm, pp 807–813, 1974

  • Fersman E, Krcal P, Pettersson P, Yi W (2007) Task automata: schedulability, decidability and undecidability. Inf. Comput. 205(8):1149–1172

    Article  MATH  MathSciNet  Google Scholar 

  • George L, Rivierre N, Spuri M (1996) Preemptive and non-preemptive real-time uniprocessor scheduling. Research Report RR-2966, INRIA, Projet REFLECS

  • Gulavani BS, Chakraborty S, Nori AV, Rajamani SK (2008) Automatically refining abstract interpretations. In: Proceedings of the 14th international conference on tools and algorithms for the construction and analysis of systems (TACAS)

  • Han C-CJ (1998) A better polynomial-time schedulability test for real-time multiframe tasks. In: Proceedings of the RTSS. IEEE Computer Society, Washington, p 104

  • Harbour M, Klein M, Lehoczky J (1991) Fixed priority scheduling of periodic tasks with varying execution priority. In: Proceedings of the IEEE real-time systems symposium, RTSS. IEEE, pp 116–128

  • Joseph M, Pandya PK (1986) Finding response times in a real-time system. Comput J 29:390–395

    Article  MathSciNet  Google Scholar 

  • Lehoczky J (1990) Fixed priority scheduling of periodic task sets with arbitrary deadlines. In: Proceedings of the 11th real-time systems symposium. IEEE, pp 201–209

  • Liu CL, Layland JW (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J ACM 20(1):46–61

    Article  MATH  MathSciNet  Google Scholar 

  • Lu W-C, Lin K-J, Wei H-W, Shih W-K (2007) New schedulability conditions for real-time multiframe tasks. In: Proceedings of the euromicro conference on real-time systems, ECRTS. IEEE, pp 39–50

  • Mok AK, Chen D (1997) A multiframe model for real-time tasks. IEEE Trans Softw Eng 23(10):635–645

    Article  Google Scholar 

  • Stigge M (2014) Real-Time workload models: expressiveness vs. analysis efficiency. PhD thesis, Uppsala University, Uppsala

  • Stigge M, Ekberg P, Guan N, Yi W (2011) On the tractability of digraph-based task models. In: Proceedings of the euromicro conference on real-time systems, ECRTS. IEEE, pp 162–171

  • Stigge M, Ekberg P, Guan N, Yi W (2011) The digraph real-time task model. In: Proceedings of the real-time and embedded technology and applications symposium. IEEE, pp 71–80

  • Stigge M, Yi W (2012) Hardness results for static priority real-time scheduling. In: Proceedings of the euromicro conference on real-time systems, ECRTS. IEEE, pp 189–198

  • Stigge M, Yi W (2013) Combinatorial abstraction refinement for feasibility analysis. In: Proceedings of the real-time systems symposium, RTSS. IEEE, pp 340–349

  • Takada H, Sakamura K (1997) Schedulability of generalized multiframe task sets under static priority assignment. In: Proceedings of the real-time computing systems and applications, RTCSA. IEEE, pp 80–86

  • Thiele L, Chakraborty S, Naedele M (2000) Real-time calculus for scheduling hard real-time systems. In: Proceedings of the International Symposium on Circuits and Systems, ISCAS 2000, vol 4. Geneva, 2000

  • Tindell K, Burns A (1994) Guaranteeing message latencies on control area network (CAN). In: Proceedings of the 1st international CAN conference on control area network (CAN) 1994

  • Wei Kuo T, Pin Chang L, Hua Liu Y, Jay Lin K (2003) Efficient online schedulability tests for real-time systems. IEEE Trans Softw Eng 29:734–751

  • Yao G, Buttazzo G, Bertogna M (2010) Feasibility analysis under fixed priority scheduling with fixed preemption points. In: Proceedings of the IEEE 16th international conference on embedded and real-time computing systems and applications (RTCSA), 2010. IEEE, pp 71–80

  • Zuhily A, Burns A (2009) Exact scheduling analysis of non-accumulatively monotonic multiframe tasks. Real-Time Syst J 43:119–146

    Article  MATH  Google Scholar 

Download references

Acknowledgments

The authors would like to thank the anonymous reviewers of the RTSS 2013 conference and the Real-Time Systems journal for their constructive comments on the conference version (Stigge and Yi 2013) and earlier manuscripts of this article, respectively.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Martin Stigge.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Stigge, M., Yi, W. Combinatorial abstraction refinement for feasibility analysis of static priorities. Real-Time Syst 51, 639–674 (2015). https://doi.org/10.1007/s11241-015-9220-5

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-015-9220-5

Keywords

Navigation