Dates and Events: |
OSADL Articles:
2023-11-12 12:00
Open Source License Obligations Checklists even better nowImport the checklists to other tools, create context diffs and merged lists
2022-07-11 12:00
Call for participation in phase #4 of Open Source OPC UA open62541 support projectLetter of Intent fulfills wish list from recent survey
2022-01-13 12:00
Phase #3 of OSADL project on OPC UA PubSub over TSN successfully completedAnother important milestone on the way to interoperable Open Source real-time Ethernet has been reached
2021-02-09 12:00
Open Source OPC UA PubSub over TSN project phase #3 launchedLetter of Intent with call for participation is now available |
Real Time Linux Workshops
1999 - 2000 - 2001 - 2002 - 2003 - 2004 - 2005 - 2006 - 2007 - 2008 - 2009 - 2010 - 2011 - 2012 - 2013 - 2014 - 2015
15th Real Time Linux Workshop, October 28 to 31, 2013 at the Dipartimento Tecnologie Innovative, Scuola Universitaria Professionale della Svizzera Italiana in Lugano-Manno, Switzerland
Announcement - Call for participation (ASCII) - Hotels - Directions - Agenda - Paper Abstracts - Presentations - Registration - Abstract Submission - Sponsors - Gallery
An implementation of the Bandwidth Inheritance Protocol in the Linux Kernel
Andrea Parri, Scuola Superiore Sant'Anna, Italy
Juri Lellii, Scuola Superiore Sant'Anna, Italy
Mauro Marinonii, Scuola Superiore Sant'Anna, Italy
Giuseppe Lipari, École Normale Supérieure de Cachan, France
The Resource Reservation (RR) framework has been proven very effective in the joint scheduling of hard real time and soft real time application in Open Systems. A fundamental problem in this context concerns the extension of the Resource Reservation approach to systems where tasks interact through shared resources.
The Bandwidth Inheritance (BWI) protocol was first proposed in [Lamastra G., Lipari G., Abeni L. (2001) A bandwidth inheritance algorithm for real-time task synchronization in open systems. In: Proc. 22nd IEEE Real-Time Systems Symposium] to preserve Bandwidth Isolation between independent groups of tasks, and to enable a schedulability analysis for hard real time tasks.
In this paper, we present the first implementation of the BWI protocol within the Linux kernel. We describe the protocol, the way it has been implemented in Linux, and we report some early experiments to measure its overhead. Our work is based on the SCHED_DEADLINE patch, a scheduling class for the Linux kernel that provides Resource Reservation using the Constant Bandwidth Server algorithm. The BWI implementation extends Linux's current implementation of the Priority Inheritance protocol, without affecting past design decisions. Our implementation is neutral to the underlying scheduling scheme and can be adopted in global, clustered and partitioned scheduling.
Results show agreement with theoretical analysis, and performance/overheads comparable with the current implementation of Priority Inheritance in Linux.
The work presented here has practical implications for applications running on Linux with SCHED_DEADLINE scheduling policy and share resources through mutex semaphores. In fact, the protocol guarantees temporal isolation between non-interacting threads, hence real-time guarantees are possible even where no a-priori information about tasks' scheduling parameters are available.