Skip to main content

Analyzing Preemptive Global Scheduling

  • Chapter
  • First Online:
Techniques for Building Timing-Predictable Embedded Systems

Abstract

Recently, there have been several promising techniques developed for schedulability analysis and response time analysis for multiprocessor systems based on over-approximation.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info
Hardcover Book
USD 54.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Works on global EDF scheduling, however, it can be easily adapted to global fixed-priority scheduling [53].

References

  1. M. Joseph, P.K. Pandya, Finding response times in a real-time system. Comput. J. 29(5), 390–395 (1986). doi:10.1093/comjnl/29.5.390. http://dx.doi.org/10.1093/comjnl/29.5.390

    Article  MathSciNet  Google Scholar 

  2. On-Line Applications Research Corporation (OAR), RTEMS Applications C User’s Guide (2001)

    Google Scholar 

  3. J. Calandrino, H. Leontyev, A. Block, U. Devi, J. Anderson, Litmusrt: a testbed for empirically comparing real-time multiprocessor schedulers, in RTSS, 2006

    Google Scholar 

  4. J.P. Lehoczky, Fixed priority scheduling of periodic task sets with arbitrary deadlines, in RTSS, 1990

    Google Scholar 

  5. N. Audsley, A. Burns, M. Richardson, K. Tindell, A.J. Wellings, Applying new scheduling theory to static priority preemptive scheduling. Softw. Eng. J. 8(5), 284–292 (1993). http://ieeexplore.ieee.org/xpl/articleDetails.jsp?arnumber=238595

    Article  Google Scholar 

  6. M. Gonzalez Harbour, J. Palencia Gutierrez, Schedulability analysis for tasks with static and dynamic offsets, in RTSS, 1998

    Google Scholar 

  7. S.K. Baruah, Techniques for multiprocessor global schedulability analysis, in RTSS, 2007

    Google Scholar 

  8. B. Andersson, J. Jonsson, Some insights on fixed-priority preemptive non-partitioned multiprocessor scheduling. Technical Report, Chalmers University of Technology, 2001

    Google Scholar 

  9. M. Bertogna, M. Cirinei, Response-time analysis for globally scheduled symmetric multiprocessor platforms, in Proceedings of the 28th IEEE Real-Time Systems Symposium (RTSS), 2007

    Google Scholar 

  10. E. Bini, T.H.C. Nguyen, P. Richard, S.K. Baruah, A response-time bound in fixed-priority scheduling with arbitrary deadlines. IEEE Trans. Comput. 58(2), 279–286 (2009)

    Article  MathSciNet  Google Scholar 

  11. K. Tindell, H. Hansson, A. Wellings, Analysing realtime communications: controller area network (can), in RTSS, 1994

    Google Scholar 

  12. A. Burns, A. Wellings, Real-Time Systems and Programming Languages, 3rd edn. (Addison-Wesley, Boston, 2001)

    Google Scholar 

  13. L. Lundberg, Multiprocessor scheduling of age constraint processes, in RTCSA, 1998

    Google Scholar 

  14. N. Guan, W. Yi, Z. Gu, Q. Deng, G. Yu, New schedulability test conditions for non-preemptive scheduling on multiprocessor platforms, in RTSS, 2008

    Google Scholar 

  15. T.P. Baker, A comparison of global and partitioned edf schedulability tests for multiprocessors. Technical Report, Department of Computer Science, Florida State University, FL, 2005

    Google Scholar 

  16. M. Bertogna, M. Cirinei, G. Lipari, Schedulability analysis of global scheduling algorithms on multiprocessor platforms. IEEE Trans. Parallel Distrib. Syst. 20(4), 553–566 (2008). doi:10.1109/TPDS.2008.129. http://dx.doi.org/10.1109/TPDS.2008.129

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Appendix: Proof of Lemma 4.3

Appendix: Proof of Lemma 4.3

Proof.

We recall that by definition, Ω k (x) consists of two sums over the sets τ NC and τ CI which are a partitioning of τ such that Ω k (x) is maximal:

$$\displaystyle{\varOmega _{k}(x) =\sum _{\tau _{i}\in \tau ^{\mathsf{CI}}}I_{k}^{\mathsf{CI}}(\tau _{ i},x) +\sum _{\tau _{i}\in \tau ^{\mathsf{NC}}}I_{k}^{\mathsf{NC}}(\tau _{ i},x)}$$

Let \(\vartheta ^{\mathsf{CI}} \subseteq \tau ^{\mathsf{CI}}\) and \(\vartheta ^{\mathsf{NC}} \subseteq \tau ^{\mathsf{NC}}\) be subsets of both partitions, such that

$$\displaystyle{\forall \tau _{i} \in \vartheta ^{\mathsf{CI}}: W_{ k}^{\mathsf{CI}}(\tau _{ i},x) > x - C_{k} + 1}$$
$$\displaystyle{\forall \tau _{i} \in \vartheta ^{\mathsf{NC}}: W_{ k}^{\mathsf{NC}}(\tau _{ i},x) > x - C_{k} + 1}$$

Thus, \(\vartheta:=\vartheta ^{\mathsf{CI}} \cup \vartheta ^{\mathsf{NC}}\) captures the relatively “dense” tasks of τ. Using this, I k CI(τ i , x, h) and I k NC(τ i , x, h) can be rewritten using W k CI(τ i , x) and W k NC(τ i , x) in the definition of Ω k (x):

$$\displaystyle{ \varOmega _{k}(x) = \vert \vartheta \vert \cdot (x - C_{i} + 1) +\sum _{\tau _{i}\in \tau ^{\mathsf{CI}}\setminus \vartheta ^{\mathsf{CI}}}W_{k}^{\mathsf{CI}}(\tau _{ i},x) +\sum _{\tau _{i}\in \tau ^{\mathsf{NC}}\setminus \vartheta ^{\mathsf{NC}}}W_{k}^{\mathsf{NC}}(\tau _{ i},x) }$$
(4.11)

We consider the case of \(\vert \vartheta \vert < M\). (Otherwise, the lemma obviously holds.)

Now let x < f k t 0, as in the assumption of the lemma, so the Job J k is still active at time point x. Thus, only at strictly less than C k time points of the interval [t 0, t 0 + x), J k was able to run. Now we know that all tasks from \(\vartheta\) could keep at most \(\vert \vartheta \vert \) processors busy at each time unit during the interval. It follows that the remaining tasks (those from \(\tau \setminus \vartheta\)) kept the remaining \(M -\vert \vartheta \vert \) processors busy for at least xC k + 1 time units during the interval (otherwise, J k would have been able to execute for C k time units and thus finish until t 0 + x). Consequently, the tasks from \(\tau \setminus \vartheta\) must have generated a workload of at least \((M -\vert \vartheta \vert ) \cdot (x - C_{k} + 1)\) over the considered x time units. Since W k CI(τ i , x) and W k NC(τ i , x) are upper bounds of their workloads, we have

$$\displaystyle{ \sum _{\tau _{i}\in \tau ^{\mathsf{CI}}\setminus \vartheta ^{\mathsf{CI}}}W_{k}^{\mathsf{CI}}(\tau _{ i},x) +\sum _{\tau _{i}\in \tau ^{\mathsf{NC}}\setminus \vartheta ^{\mathsf{NC}}}W_{k}^{\mathsf{NC}}(\tau _{ i},x) \geq (M -\vert \vartheta \vert ) \cdot (x - C_{k} + 1) }$$
(4.12)

From (4.11) and (4.12) it follows

$$\displaystyle{\varOmega _{k}(x) \geq M \cdot (x - C_{k} + 1),}$$

which is equivalent to the lemma.

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this chapter

Cite this chapter

Guan, N. (2016). Analyzing Preemptive Global Scheduling. In: Techniques for Building Timing-Predictable Embedded Systems. Springer, Cham. https://doi.org/10.1007/978-3-319-27198-9_4

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-27198-9_4

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-27196-5

  • Online ISBN: 978-3-319-27198-9

  • eBook Packages: EngineeringEngineering (R0)

Publish with us

Policies and ethics