User Tools

Site Tools


sched_deadline

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
sched_deadline [2013/12/10 13:44]
claudio_scordino
sched_deadline [2013/12/12 13:07]
claudio_scordino
Line 1: Line 1:
  
-===== SCHED_DEADLINE ​ =====+===== Introduction ​ =====
  
  
- +**SCHED_DEADLINE** is the name of a patch proposed to add a resource-reservation ​**real-time CPU scheduler** to the Linux kernel.
-==== Introduction ​ ==== +
- +
- +
-**SCHED_DEADLINE** is the name of a patch proposed to add a resource-reservation real-time CPU scheduler to the Linux kernel.+
  
 The Linux kernel contains different scheduler classes. By default the kernel uses a scheduler mechanism called [[http://​en.wikipedia.org/​wiki/​Completely_Fair_Scheduler|Completely Fair Scheduler]],​ introduced in the 2.6.23 version of the kernel. Internally this default-scheduler class is also known as SCHED_OTHER. The standard Linux kernel also contains two real-time scheduling classes named SCHED_FIFO (realtime first-in-first-out) and SCHED_RR (realtime round-robin) both of which take precedence over the default class. The SCHED_DEADLINE patch adds a new scheduling class to the modular Linux scheduler, and implements the well-known [[http://​en.wikipedia.org/​wiki/​Earliest_deadline_first_scheduling|Earliest Deadline First (EDF) algorithm]]. The Linux kernel contains different scheduler classes. By default the kernel uses a scheduler mechanism called [[http://​en.wikipedia.org/​wiki/​Completely_Fair_Scheduler|Completely Fair Scheduler]],​ introduced in the 2.6.23 version of the kernel. Internally this default-scheduler class is also known as SCHED_OTHER. The standard Linux kernel also contains two real-time scheduling classes named SCHED_FIFO (realtime first-in-first-out) and SCHED_RR (realtime round-robin) both of which take precedence over the default class. The SCHED_DEADLINE patch adds a new scheduling class to the modular Linux scheduler, and implements the well-known [[http://​en.wikipedia.org/​wiki/​Earliest_deadline_first_scheduling|Earliest Deadline First (EDF) algorithm]].
Line 16: Line 12:
  
  
-==== Motivation ​ ====+===== Motivation  ​=====
  
  
Line 55: Line 51:
  
  
-==== Releases ​ ====+===== Releases  ​=====
  
  
Line 73: Line 69:
   * The ninth (current) version of the scheduler has been [[http://​lwn.net/​Articles/​573233/​|submitted to LKML on November 7, 2013]].   * The ninth (current) version of the scheduler has been [[http://​lwn.net/​Articles/​573233/​|submitted to LKML on November 7, 2013]].
  
 +The project has been [[http://​lwn.net/​Articles/​570293/​|already integrated in the Yocto distribution]]. Moreover, there has been some [[https://​groups.google.com/​a/​linaro.org/​forum/#​!topic/​linaro-networking/​IDmDhH6JL8U|interest for inclusion in Linaro]] as well.
  
-==== Academic conferences and events ​ ====+An [[http://​lwn.net/​Articles/​575497/​|article on the popular Linux Weekly News site]] has recently argued that SCHED_DEADLINE may be merged into the mainline kernel in the very next releases.  
 + 
 + 
 +===== Academic conferences and events  ​=====
  
  
 The project has been presented through some academic workshops, conferences and journals: The project has been presented through some academic workshops, conferences and journals:
  
-  * [[http://​lwn.net/​images/​conf/​rtlws11/​papers/​proc/​p16.pdf|Dario Faggioli, Fabio Checconi, Michael Trimarchi, Claudio Scordino, ​An EDF scheduling class for the Linux kernel, 11th Real-Time Linux Workshop (RTLWS), Dresden, Germany, September 2009]]+  * Dario Faggioli, Fabio Checconi, Michael Trimarchi, Claudio Scordino, ​[[http://​lwn.net/​images/​conf/​rtlws11/​papers/​proc/​p16.pdf|An EDF scheduling class for the Linux kernel]], 11th Real-Time Linux Workshop (RTLWS), Dresden, Germany, September 2009. 
-  * [[http://​retis.sssup.it/​~faggioli/​papers/​OSPERT-2010-dlinterrupt.pdf|Nicola Manica, Luca Abeni, Luigi Palopoli, Dario Faggioli, Claudio Scordino, ​Schedulable Device Drivers: Implementation and Experimental Results, International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT), Brussels, Belgium, July 2010]]+  * Nicola Manica, Luca Abeni, Luigi Palopoli, Dario Faggioli, Claudio Scordino, ​[[http://​retis.sssup.it/​~faggioli/​papers/​OSPERT-2010-dlinterrupt.pdf|Schedulable Device Drivers: Implementation and Experimental Results]], International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT), Brussels, Belgium, July 2010. 
-  * [[http://​retis.sssup.it/​~faggioli/​papers/​OSPERT-2011-gedf.pdf|Juri Lelli, Giuseppe Lipari, Dario Faggioli, Tommaso Cucinotta, ​An efficient and scalable implementation of global EDF in Linux, International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT), Porto (Portugal), July 2011]]+  * Juri Lelli, Giuseppe Lipari, Dario Faggioli, Tommaso Cucinotta, ​[[http://​retis.sssup.it/​~faggioli/​papers/​OSPERT-2011-gedf.pdf|An efficient and scalable implementation of global EDF in Linux]], International Workshop on Operating Systems Platforms for Embedded Real-Time Applications (OSPERT), Porto (Portugal), July 2011. 
-  * [[http://​ieeexplore.ieee.org/​xpl/​articleDetails.jsp?​tp=&​arnumber=5680892&​contentType=Journals+%26+Magazines&​queryText%3DResource+Management+on+Multicore+Systems%3A+The+ACTORS+Approach|Enrico Bini, Giorgio Buttazzo, Johan Eker, Stefan Schorr, Raphael Guerra, Gerhard Fohler, Karl-Erik Arzen, Vanessa Romero Segovia, Claudio Scordino, ​Resource Management on Multicore Systems: The ACTORS Approach, IEEE Micro, vol. 31, no. 3, pp. 72–81, May/June 2011]]+  * Enrico Bini, Giorgio Buttazzo, Johan Eker, Stefan Schorr, Raphael Guerra, Gerhard Fohler, Karl-Erik Arzen, Vanessa Romero Segovia, Claudio Scordino, ​[[http://​ieeexplore.ieee.org/​xpl/​articleDetails.jsp?​tp=&​arnumber=5680892&​contentType=Journals+%26+Magazines&​queryText%3DResource+Management+on+Multicore+Systems%3A+The+ACTORS+Approach|Resource Management on Multicore Systems: The ACTORS Approach]], IEEE Micro, vol. 31, no. 3, pp. 72–81, May/June 2011. 
-  * Andrea Parri, Juri Lelli, Mauro Marinoni, Giuseppe Lipari, Design and Implementation of the Multiprocessor Bandwidth Inheritance Protocol on Linux, 15th Real-Time Linux Workshop (RTLWS), Lugano-Manno,​ Switzerland,​ October 2013.+  * Andrea Parri, Juri Lelli, Mauro Marinoni, Giuseppe Lipari, ​[[https://​www.osadl.org/​Lugano-Manno-2013.rtlws15-lugano-manno-2013.0.html|Design and Implementation of the Multiprocessor Bandwidth Inheritance Protocol on Linux]], 15th Real-Time Linux Workshop (RTLWS), Lugano-Manno,​ Switzerland,​ October 2013.
  
 The project has been also presented at the [[http://​lwn.net/​Articles/​412745/​|Kernel Summit in 2010]], at the [[http://​www.linuxplumbersconf.org/​2012/​|Linux Plumbers Conference 2012]], and at the [[http://​events.linuxfoundation.org/​events/​archive/​2013/​embedded-linux-conference/​program/​|Embedded Linux Conference 2013]]. The project has been also presented at the [[http://​lwn.net/​Articles/​412745/​|Kernel Summit in 2010]], at the [[http://​www.linuxplumbersconf.org/​2012/​|Linux Plumbers Conference 2012]], and at the [[http://​events.linuxfoundation.org/​events/​archive/​2013/​embedded-linux-conference/​program/​|Embedded Linux Conference 2013]].
  
-Several ​articles ​have appeared on Linux Weekly News, Slashdot, OSNews and LinuxToday.+Recently, [[http://​www.youtube.com/​watch?​v=_APmI6qe9kU|a video has been uploaded on youtube]].  
 + 
 + 
 +===== Web pages  ===== 
 + 
 + 
 +Several ​websites (e.g., OSNews, Slashdot, Linux Today, etc.) have talked about the project in the course of the years.  
 + 
 +Among the various websites, the best resources are: 
 + 
 +  * Linux Weekly News (LWN): 
 +    * [[http://​lwn.net/​Articles/​356576/​|http://​lwn.net/​Articles/​356576/​]] 
 +    * [[http://​lwn.net/​Articles/​396634/​|http://​lwn.net/​Articles/​396634/​]] 
 +    * [[http://​lwn.net/​Articles/​378044/​|http://​lwn.net/​Articles/​378044/​]] 
 +    * [[http://​lwn.net/​Articles/​412745/​|http://​lwn.net/​Articles/​412745/​]] 
 +    * [[http://​lwn.net/​Articles/​491722/​|http://​lwn.net/​Articles/​491722/​]] 
 +    * [[http://​lwn.net/​Articles/​575497/​|http://​lwn.net/​Articles/​575497/​]] 
 +  * [[http://​www.linkedin.com/​groups?​gid=2319046|LinkedIn Group]] 
 +  * [[http://​en.wikipedia.org/​wiki/​SCHED_DEADLINE|Page on Wikipedia]] 
 + 
 + 
 +===== Download and usage  =====
  
-Recently, [[http://​www.youtube.com/​watch?​v=_APmI6qe9kU|a video has been uploaded on youtube]]. Moreover, there has been some interest for including SCHED_DEADLINE in both the [[https://​lists.yoctoproject.org/​pipermail/​linux-yocto/​2013-March/​000488.html|Yocto]] and [[https://​groups.google.com/​a/​linaro.org/​forum/#​!topic/​linaro-networking/​IDmDhH6JL8U|Linaro]] Linux distributions. 
  
 +The project has an [[http://​www.evidence.eu.com/​sched_deadline.html|official page]].
  
-==== Web pages  ====+The code is publicly available on a [[https://​github.com/​jlelli/​sched-deadline|GitHub website]].
  
 +To download a Linux kernel with SCHED_DEADLINE integrated, type
  
 +  git clone git://​github.org/​jlelli/​sched_deadline.git
  
-==== Download and usage  ====+The documentation is available inside the [[https://​github.com/​jlelli/​sched-deadline/​blob/​sched-dl-V9-rebase/​Documentation/​scheduler/​sched-deadline.txt|Documentation/​scheduler/​sched-deadline.txt file]].
  
sched_deadline.txt · Last modified: 2014/06/03 05:43 by claudio_scordino