Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6aaa1025 authored by Luca Abeni's avatar Luca Abeni Committed by Ingo Molnar
Browse files

sched/dl/Documentation: Split Section 3



Introduce 4 subsections to make Section 3 more readable.

Signed-off-by: default avatarLuca Abeni <luca.abeni@unitn.it>
Signed-off-by: default avatarPeter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: henrik@austad.us
Cc: juri.lelli@gmail.com
Cc: raistlin@linux.it
Link: http://lkml.kernel.org/r/1431954032-16473-10-git-send-email-luca.abeni@unitn.it


Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 78740858
Loading
Loading
Loading
Loading
+16 −0
Original line number Original line Diff line number Diff line
@@ -8,6 +8,10 @@ CONTENTS
 1. Overview
 1. Overview
 2. Scheduling algorithm
 2. Scheduling algorithm
 3. Scheduling Real-Time Tasks
 3. Scheduling Real-Time Tasks
   3.1 Definitions
   3.2 Schedulability Analysis for Uniprocessor Systems
   3.3 Schedulability Analysis for Multiprocessor Systems
   3.4 Relationship with SCHED_DEADLINE Parameters
 4. Bandwidth management
 4. Bandwidth management
   4.1 System-wide settings
   4.1 System-wide settings
   4.2 Task interface
   4.2 Task interface
@@ -126,6 +130,9 @@ CONTENTS
 suited for periodic or sporadic real-time tasks that need guarantees on their
 suited for periodic or sporadic real-time tasks that need guarantees on their
 timing behavior, e.g., multimedia, streaming, control applications, etc.
 timing behavior, e.g., multimedia, streaming, control applications, etc.


3.1 Definitions
------------------------

 A typical real-time task is composed of a repetition of computation phases
 A typical real-time task is composed of a repetition of computation phases
 (task instances, or jobs) which are activated on a periodic or sporadic
 (task instances, or jobs) which are activated on a periodic or sporadic
 fashion.
 fashion.
@@ -166,6 +173,9 @@ CONTENTS
 is the minimum WCET, and U_max = max{WCET_i/P_i} is the maximum
 is the minimum WCET, and U_max = max{WCET_i/P_i} is the maximum
 utilization[12].
 utilization[12].


3.2 Schedulability Analysis for Uniprocessor Systems
------------------------

 If M=1 (uniprocessor system), or in case of partitioned scheduling (each
 If M=1 (uniprocessor system), or in case of partitioned scheduling (each
 real-time task is statically assigned to one and only one CPU), it is
 real-time task is statically assigned to one and only one CPU), it is
 possible to formally check if all the deadlines are respected.
 possible to formally check if all the deadlines are respected.
@@ -204,6 +214,9 @@ CONTENTS
 time-consuming to be performed on-line. Hence, as explained in Section
 time-consuming to be performed on-line. Hence, as explained in Section
 4 Linux uses an admission test based on the tasks' utilizations.
 4 Linux uses an admission test based on the tasks' utilizations.


3.3 Schedulability Analysis for Multiprocessor Systems
------------------------

 On multiprocessor systems with global EDF scheduling (non partitioned
 On multiprocessor systems with global EDF scheduling (non partitioned
 systems), a sufficient test for schedulability can not be based on the
 systems), a sufficient test for schedulability can not be based on the
 utilizations or densities: it can be shown that even if D_i = P_i task
 utilizations or densities: it can be shown that even if D_i = P_i task
@@ -249,6 +262,9 @@ CONTENTS
 the total utilization is smaller or equal than M then the response times of
 the total utilization is smaller or equal than M then the response times of
 the tasks are limited.
 the tasks are limited.


3.4 Relationship with SCHED_DEADLINE Parameters
------------------------

 Finally, it is important to understand the relationship between the
 Finally, it is important to understand the relationship between the
 SCHED_DEADLINE scheduling parameters described in Section 2 (runtime,
 SCHED_DEADLINE scheduling parameters described in Section 2 (runtime,
 deadline and period) and the real-time task parameters (WCET, D, P)
 deadline and period) and the real-time task parameters (WCET, D, P)