[bootlin/training-materials updates] master: Realtime slides: minor improvements (5783c09d)

Michael Opdenacker michael.opdenacker at bootlin.com
Wed Sep 23 10:16:48 CEST 2020


Repository : https://github.com/bootlin/training-materials
On branch  : master
Link       : https://github.com/bootlin/training-materials/commit/5783c09d08b836fe527762d5948738bd4b5f0d30

>---------------------------------------------------------------

commit 5783c09d08b836fe527762d5948738bd4b5f0d30
Author: Michael Opdenacker <michael.opdenacker at bootlin.com>
Date:   Wed Sep 23 10:16:48 2020 +0200

    Realtime slides: minor improvements
    
    Signed-off-by: Michael Opdenacker <michael.opdenacker at bootlin.com>


>---------------------------------------------------------------

5783c09d08b836fe527762d5948738bd4b5f0d30
 slides/sysdev-realtime/sysdev-realtime.tex | 29 +++++++++++++++--------------
 1 file changed, 15 insertions(+), 14 deletions(-)

diff --git a/slides/sysdev-realtime/sysdev-realtime.tex b/slides/sysdev-realtime/sysdev-realtime.tex
index 2facedbe..3a4dfb44 100644
--- a/slides/sysdev-realtime/sysdev-realtime.tex
+++ b/slides/sysdev-realtime/sysdev-realtime.tex
@@ -339,8 +339,7 @@
     scheduler, increased multiprocessor safety (work on RT preemption
     was useful to identify hard to find SMP bugs).
   \item Can also benefit from a lower timer frequency (several possible
-        values between 100 Hz and 1000 Hz)
-    of 250, 300 or 1000).
+        values between 100 Hz and 1000 Hz).
   \end{itemize}
 \end{frame}
 
@@ -497,7 +496,7 @@
       otherwise the PREEMPT\_RT patch may not apply and may require
       some adaptations
     \item Similarly, only long term stable releases of the kernel
-      are supported, currently: 5.4, 4.19, 4.14, 4.9, 4.4.
+      are supported, currently: 5.9, 5.4, 4.19, 4.14, 4.9, 4.4.
       This is yet another advantage of using an LTS kernel release!
     \item Officially supported versions:
       \url{https://wiki.linuxfoundation.org/realtime/preempt_rt_versions}
@@ -691,19 +690,19 @@ pthread_join(pthread_t *thread, void **value_ptr);
 \begin{frame}
   \frametitle{Scheduling classes (2)}
   \begin{itemize}
-  \item The real-time classes \code{SCHED_FIFO}, \code{SCHED_RR} and
-         \code{SCHED_DEADLINE}
+  \item The real-time classes \ksym{SCHED_FIFO}, \ksym{SCHED_RR} and
+         \ksym{SCHED_DEADLINE}
     \begin{itemize}
+    \item RT Priorities ranging from 0 (lowest) to 99 (highest)
     \item The highest RT priority process gets all the CPU time, until it
       blocks.
-    \item With \code{SCHED_FIFO}, {\em First In, First Out}, each additional
+    \item With \ksym{SCHED_FIFO}, {\em First In, First Out}, each additional
       process with the same RT priority has to wait for the first ones to block.
-    \item In \code{SCHED_RR}, {\em Round-Robin} scheduling between the
+    \item In \ksym{SCHED_RR}, {\em Round-Robin} scheduling between the
       processes with the same RT priority. All must block before
       lower priority processes get CPU time.
-    \item In \code{SCHED_DEADLINE}: guarantees that an RT task
+    \item In \ksym{SCHED_DEADLINE}: guarantees that an RT task
       will be given an exact amount of cpu time every period.
-    \item RT Priorities ranging from 0 (lowest) to 99 (highest)
     \end{itemize}
   \end{itemize}
   See \url{https://man7.org/linux/man-pages/man7/sched.7.html} for
@@ -717,9 +716,9 @@ pthread_join(pthread_t *thread, void **value_ptr);
     class with a specific priority using the \code{chrt} command line tool
     \begin{itemize}
     \item Example: \code{chrt -f 99 ./myprog} \\
-        \code{-f}: \code{SCHED_FIFO}\\
-	\code{-r}: \code{SCHED_RR}\\
-	\code{-d}: \code{SCHED_DEADLINE}
+        \code{-f}: \ksym{SCHED_FIFO}\\
+	\code{-r}: \ksym{SCHED_RR}\\
+	\code{-d}: \ksym{SCHED_DEADLINE}
     \end{itemize}
   \item The \code{sched_setscheduler()} API can be used to change the scheduling class
     and priority of a process
@@ -730,8 +729,8 @@ int sched_setscheduler(pid_t pid, int policy,
 \end{verbatim}
     \end{block}{}
     \begin{itemize}
-    \item \code{policy} can be \code{SCHED_OTHER}, \code{SCHED_FIFO},
-      \code{SCHED_RR}, \code{SCHED_DEADLINE}, etc. (others exist).
+    \item \code{policy} can be \code{SCHED_OTHER}, \ksym{SCHED_FIFO},
+      \ksym{SCHED_RR}, \ksym{SCHED_DEADLINE}, etc. (others exist).
     \item \code{param} is a structure containing the priority
     \end{itemize}
   \end{itemize}
@@ -1309,6 +1308,8 @@ ret = bind(s, (struct sockaddr *)&saddr, sizeof(saddr));
 \begin{frame}
   \frametitle{Organizations}
   \begin{itemize}
+  \item \url{https://wiki.linuxfoundation.org/realtime/start}\\
+    The Linux Foundation, now funding work on PREEMPT\_RT
   \item \url{https://www.osadl.org}\\
     Open Source Automation Development Lab (OSADL)\\
     Targets machine and plant control systems. Most member companies




More information about the training-materials-updates mailing list