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.
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
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
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
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
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
Bertogna M, Fisher N, Baruah S (2009) Resource-sharing servers for open environments. IEEE Trans Ind Inform 5(3):202–219
Bini E, Buttazzo GC (2005) Measuring the performance of schedulability tests. Real-Time Syst 30(1–2):129–154
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
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
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
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
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
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
Corresponding author
Rights and permissions
About this article
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
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11241-018-9301-3