Modular software architecture for flexible reservation mechanisms on heterogeneous resources

  • Authors:
  • Michal Sojka;Pavel Píša;Dario Faggioli;Tommaso Cucinotta;Fabio Checconi;Zdenk Hanzálek;Giuseppe Lipari

  • Affiliations:
  • Czech Technical University in Prague, Technická 2, 166 27 Praha 6, Czech Republic;Czech Technical University in Prague, Technická 2, 166 27 Praha 6, Czech Republic;Scuola Superiore Sant'Anna - Piazza Martiri della Libertá, 33 - 56127, Pisa, Italy;Scuola Superiore Sant'Anna - Piazza Martiri della Libertá, 33 - 56127, Pisa, Italy;Scuola Superiore Sant'Anna - Piazza Martiri della Libertá, 33 - 56127, Pisa, Italy;Czech Technical University in Prague, Technická 2, 166 27 Praha 6, Czech Republic;Scuola Superiore Sant'Anna - Piazza Martiri della Libertá, 33 - 56127, Pisa, Italy

  • Venue:
  • Journal of Systems Architecture: the EUROMICRO Journal
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Management, allocation and scheduling of heterogeneous resources for complex distributed real-time applications is a challenging problem. Timing constraints of applications may be fulfilled by the proper use of real-time scheduling policies, admission control and enforcement of timing constraints. However, it is not easy to design basic infrastructure services that allow for easy access to the allocation of multiple heterogeneous resources in a distributed environment. In this paper, we present a middleware for providing distributed soft real-time applications with a uniform API for reserving heterogeneous resources with real-time scheduling capabilities in a distributed environment. The architecture relies on standard POSIX OS facilities, such as time management and standard TCP/IP networking services, and it is designed around CORBA, in order to facilitate modularity, flexibility and portability of the applications using it. However, real-time scheduling is supported by proper extensions at the kernel-level, plugged within the framework by means of dedicated resource managers. Our current implementation on Linux supports the reservation of the CPU, disk and network bandwidth. However, additional resource managers supporting alternative real-time schedulers for these resources, as well as additional types of resources, may be easily added. We present experimental results gathered on both synthetic applications and a real multimedia video streaming case study, showing the advantages deriving from the use of the proposed middleware. Finally, overhead figures are reported, showing the sustainability of the approach for a wide class of complex, distributed, soft real-time applications.