Skip to main content
Log in

A design flow for supporting component-based software development in multiprocessor real-time systems

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

Abstract

Component-based software development established as an effective technique to cope with the increasing complexity of modern computing systems. In the context of real-time systems, the M-BROE framework has been recently proposed to efficiently support component-based development of real-time applications on multiprocessor platforms in the presence of shared resources. The framework relies on a two-stage approach where software components are first partitioned upon a virtual multiprocessor platform and are later integrated upon the physical platform by means of component interfaces that abstract from the internal details of the applications. This work presents a complete design flow for the M-BROE framework. Starting from a model of software components, a first method is proposed to partition applications to virtual processors and perform a synthesis of multiple component interfaces. Then, a second method is proposed to support the integration of the components by allocating virtual processors to physical processors. Both methods take resource sharing into account. Experimental results are also presented to evaluate the proposed methodology.

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.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

References

  • Abeni L, Buttazzo G (2004) Resource reservations in dynamic real-time systems. Real-Time Syst 27(2):123–165

    Article  Google Scholar 

  • Al-bayati Z, Sun Y, Zeng H, Natale M D, Zhu Q, Meyer B (2015) Task placement and selection of data consistency mechanisms for real-time multicore applications. In: Proc. of the 21st IEEE real-time and embedded technology and application symposium (RTAS 2015), Seattle, WA, USA

  • Baker TP (1991) Stack-based scheduling for realtime processes. Real-Time Syst 3(1):67–99

    Article  MathSciNet  Google Scholar 

  • Baruah S (2006) Resource sharing in EDF-scheduled systems: a closer look. In: Proceedings of the 27th IEEE real-time systems symposium (RTSS’06), Rio de Janeiro, Brazil, 5–8 Dec

  • Baruah S K (2004) Partitioning real-time tasks among heterogeneous multiprocessors. In: Proceedings of the International Conference on Parallel Processing (ICPP 2004), Montreal, Quebec, Canada, Aug 15-18

  • Baruah S, Bini E (2008) Partitioned scheduling of sporadic task systems: an ILP-based approach. In: Proc. of the conference on design and architectures for signal and image processing, Bruxelles, Belgium, 24–26 Nov

  • Baruah S, Rosier L, Howell R (1990) Algorithms and complexity concerning the preemptive scheduling of periodic, real-time tasks on one processor. J Real-Time Syst 2

    Article  Google Scholar 

  • Behnam M, Nolte T, Sjödin M, Shin I (2010) Overrun methods and resource holding times for hierarchical scheduling of semi-independent real-time systems. IEEE Trans Ind Inform 6(1):93–104

    Article  Google Scholar 

  • Behnam M, Shin I, Nolte T, Nolin M (2007) SIRAP: a synchronization protocol for hierarchical resource sharing in real-time open systems. In: Proc. of the 7th ACM & IEEE international conference on embedded software (EMSOFT 2007), Salzburg, Austria, 1–3 Oct

  • Bertogna M, Fisher N, Baruah S (2009) Resource holding times: computation and optimization. Real-Time Syst 41(2):87–117

    Article  Google Scholar 

  • Bertogna M, Fisher N, Baruah S (2009) Resource-sharing servers for open environments. IEEE Trans Ind Inform 5(3):202–219

    Article  Google Scholar 

  • Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real-Time Syst 30(1–2):129–154

    Article  Google Scholar 

  • Biondi A, Brandenburg B (2016) Lightweight real-time synchronization under P-EDF on symmetric and asymmetric multiprocessors. In: Proceedings of the 28th euromicro conference on real-time systems (ECRTS 16)

  • Biondi A, Melani A, Bertogna M (2014a) Hard constant bandwidth server: comprehensive formulation and critical scenarios. In: Proceedings of the 9th IEEE international symposium on industrial embedded systems (SIES 2014), Pisa, Italy, 18–20 June

  • Biondi A, Melani A, Bertogna M, Buttazzo G (2014b) Optimal design for reservation servers under shared resources. In: Proceedings of the 26th euromicro conference on real-time systems (ECRTS 2014), Madrid, Spain, 9–11 July

  • Biondi A, Buttazzo G, Bertogna M (2015a) Supporting component-based development in partitioned multiprocessor real-time systems. In: Proceedings of the 27th euromicro conference on real-time systems (ECRTS 2015), Lund, Sweden, 8–10 July

  • Biondi A, Buttazzo GC, Bertogna M (2015b) Schedulability analysis of hierarchical real-time systems under shared resources. IEEE Trans Comput 65(5):1593–1605

    Article  MathSciNet  Google Scholar 

  • Biondi A, Buttazzo G, Bertogna M (2016) Partitioning and interface synthesis in hierarchical multiprocessor real-time systems. In: Proceedings of the 24th international conference on real-time networks and systems (RTNS 2016)

  • Buttazzo G, Bini E, Wu Y (2011) Partitioning real-time applications over multicore reservations. IEEE Trans Ind Inf 7(2):302–315

    Article  Google Scholar 

  • Davis RI, Burns A (2006) Resource sharing in hierarchical fixed priority pre-emptive systems. In: Proc. of the IEEE real-time systems symposium (RTSS 2006), Rio de Janeiro, Brazil, pp 257–268, 5–8 Dec

  • Fisher N, Baker T, Baruah S (2006) Algorithms for determining the demand-based load of a sporadic task system. In: Proceedings of the international conference on real-time computing systems and applications (RTCSA), Sydney, Australia, August

  • Gai P, Lipari G, Natale M D (2001) Minimizing memory utilization of real-time task sets in single and multi-processor systems-on-a-chip. In: Proceedings of IEEE real-time systems symposium

  • Khalilzad N, Behnam M, Nolte T (2015) On component-based software development for multiprocessor real-time systems. In: Proc. 21st IEEE international conference on embedded and real-time computing systems and applications, August

  • Liu C, Layland J (1973) Scheduling algorithms for multiprogramming in a hard-real-time environment. J Assoc Comput Mach 20(1):46–61

    Article  MathSciNet  Google Scholar 

  • Mercer CW, Savage S, Tokuda H (1994) Processor capacity reserves for multimedia operating systems. In: Proceedings of IEEE international conference on multimedia computing and system, May

  • Natale MD, Vincentelli AS (2010) Moving from federated to integrated architectures in automotive: the role of standards, methods and tools. Proc IEEE 98(4):603–620

    Article  Google Scholar 

  • Thiele L (2014) Model-based design of real-time systems. In: Keynote speeach given at the 26th euromicro conference on real-time systems (ECRTS 2014), Madrid, Spain, 10 July

  • Wieder A, Brandenburg B (2013) Efficient partitioning of sporadic real-time tasks with shared resources and spin locks. In: Proc. of the 8th IEEE international symposium on industrial embedded systems (SIES 2013), June

  • Wieder A, Brandenburg B (2013) On spin locks in AUTOSAR: blocking analysis of FIFO, unordered, and priority-ordered spin locks. In: Proceedings of the 34th IEEE real-time systems symposium (RTSS’2013), pp 45–56, December

Download references

Acknowledgements

This work has been partially supported by the RETINA Eurostars Project E10171 and received funding from the European Union’s Horizon 2020 research and innovation programme under grant agreement 688860. The authors like to thank Enrico Bini for the fruitful discussions that helped this work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Alessandro Biondi.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Biondi, A., Buttazzo, G. & Bertogna, M. A design flow for supporting component-based software development in multiprocessor real-time systems. Real-Time Syst 54, 800–829 (2018). https://doi.org/10.1007/s11241-018-9301-3

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11241-018-9301-3

Keywords

Navigation