Verified Commit 6c8fdef5 authored by Theo von Arx's avatar Theo von Arx
Browse files

Improve TT Cyclic Executive Scheduler

parent 3f969525
...@@ -14,8 +14,6 @@ ES are expected to finish tasks reliably within time bounds.\\ Essential: Upper ...@@ -14,8 +14,6 @@ ES are expected to finish tasks reliably within time bounds.\\ Essential: Upper
-i.g. undecidable if a bound exists -i.g. undecidable if a bound exists
\end{itemize} \end{itemize}
% !TeX root = ../main.tex
\section{Time Triggered Systems (4-21)} \section{Time Triggered Systems (4-21)}
\begin{compactitem} \begin{compactitem}
\item periodic \item periodic
...@@ -85,35 +83,27 @@ ES are expected to finish tasks reliably within time bounds.\\ Essential: Upper ...@@ -85,35 +83,27 @@ ES are expected to finish tasks reliably within time bounds.\\ Essential: Upper
\item $d_{i,j} = r_{i,j} + D_i$: Absolute deadline \item $d_{i,j} = r_{i,j} + D_i$: Absolute deadline
\item $s_i$: Start time, when the task starts its execution \item $s_i$: Start time, when the task starts its execution
\item $f_i$: Finishing time, when the task finishes execution \item $f_i$: Finishing time, when the task finishes execution
\item $f_ij$: number of the frame in which instance j of task $\tau_i$ executes \item $f_{ij}$: number of the frame in which instance $j$ of task $\tau_i$ executes
\item $\Phi_i$: Relative phase (release time of first instance) \item $\Phi_i$: Relative phase (release time of first instance)
\item $D_i$: Relative deadline of task $i$ \item $D_i$: Relative deadline of task $i$
\item $C_i$: WCET of task $i$ \item $C_i$: WCET of task $i$
\end{compactitem} \end{compactitem}
\includegraphics[width=0.6\linewidth]{symbols_cyclic_exec_scheduler} \includegraphics[width=0.6\linewidth]{symbols_cyclic_exec_scheduler}
\textbf{Conditions}: \\ \textbf{Conditions}: \\
\begin{tabularx}{\columnwidth}{|X|X|} \begin{tabularx}{\columnwidth}{|X|X|}
\hline \hline
Period $P$ is least common multiple of all periods $T_i$: & $P =
\underset{i}{\textnormal{lcm}} \,T_i$\\
\hline
Process executes at most once within a frame: & $f\leq T_i \quad \forall i$ \\ Process executes at most once within a frame: & $f\leq T_i \quad \forall i$ \\
\hline \hline
$P$ is a multiple of $f$ & $\exists i: T_i \mod f = 0$ \\ $P$ is a multiple of $f$ & $\exists k\in \mathbb N: P = fk$ \\
\hline \hline
Processes start and complete within a single frame: & $f\geq C_i \quad \forall i$ \\ Processes start and complete within a single frame: & $f\geq C_i \quad \forall i$ \\
\hline \hline
Between release time and deadline of a task, there is at least one frame boundary: & $2f-\gcd (T_i,f)\leq D_i \quad \forall i$ \\ Between release time and deadline of a task, there is at least one frame boundary: & $2f-\gcd (T_i,f)\leq D_i \quad \forall i$ \\
\hline \hline
\end{tabularx} \end{tabularx}
Period $P$ is least common multiple of all periods $T_i$.\\
%\begin{compactitem}
%\item Process executes at most once within a frame:\\ $\forall$ Tasks $\tau_i$: $f \leq T_i$
%\item $P$ is a multiple of $f$
%\item Period $P$ is least common multiple of all periods $T_i$
%\item Processes start and complete within a single frame: $\forall$ Tasks $\tau_i$: $f \geq C_i$
%\item Between release time and deadline of a task, there is at least one frame boundary: $\forall$ %Tasks $\tau_i$: $2f-\text{gcd}(T_i,f) \leq D_i$
%\end{compactitem}
%~\newline
\textbf{Check for correctness} of schedule: 4-32\\ \textbf{Check for correctness} of schedule: 4-32\\
\begin{itemize} \begin{itemize}
...@@ -133,7 +123,6 @@ A dispatcher is activated by synchronized clock and performs the actions as plan ...@@ -133,7 +123,6 @@ A dispatcher is activated by synchronized clock and performs the actions as plan
\textbf{Simplified Time-Triggered Scheduler (4-34)} \textbf{Simplified Time-Triggered Scheduler (4-34)}
\begin{python} \begin{python}
main: main:
for (k=0,1,...,n-1) {determine static schedule (t(k),T(k)); for (k=0,1,...,n-1) {determine static schedule (t(k),T(k));
determine period of schedule =: P;} (done offline) determine period of schedule =: P;} (done offline)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment