summaryrefslogtreecommitdiff
path: root/realtime/rt-basics
diff options
context:
space:
mode:
Diffstat (limited to 'realtime/rt-basics')
-rw-r--r--realtime/rt-basics/Makefile1
-rw-r--r--realtime/rt-basics/pres_rt-basics_de.tex205
2 files changed, 0 insertions, 206 deletions
diff --git a/realtime/rt-basics/Makefile b/realtime/rt-basics/Makefile
index c92d852..cc1fbdf 100644
--- a/realtime/rt-basics/Makefile
+++ b/realtime/rt-basics/Makefile
@@ -1,3 +1,2 @@
-obj-$(CONFIG_REALTIME_BASICS) += pres_rt-basics_de.pdf
obj-$(CONFIG_REALTIME_BASICS) += pres_rt-basics_en.pdf
obj-handout-$(CONFIG_REALTIME_BASICS) += handout_rt-basics_de.pdf
diff --git a/realtime/rt-basics/pres_rt-basics_de.tex b/realtime/rt-basics/pres_rt-basics_de.tex
deleted file mode 100644
index 66a78eb..0000000
--- a/realtime/rt-basics/pres_rt-basics_de.tex
+++ /dev/null
@@ -1,205 +0,0 @@
-\input{configpres}
-
-\title{Block \lq Realtime Linux\rq}
-\maketitle
-
-\subtitle{Echtzeit}
-
-\begin{frame}
-\frametitle{Was ist Echtzeit?}
-\begin{itemize}
-\item Korrektheit bedeutet auch Ausführung zum korrekten Zeitpunkt
-\item Nicht Einhalten des korrekten Zeitrahmens führt zu einem Fehler
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{Echtzeit ''anschaulich''}
-\begin{overprint}
-\onslide<1>
-\begin{alertblock}{Wir erinnern uns}
-Nicht Einhalten des korrekten Zeitrahmens führt zu einem Fehler!
-\end{alertblock}
-\onslide<2>
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/nuclear.png}
-\end{figure}
-\end{overprint}
-\end{frame}
-
-\begin{frame}
-\frametitle{Anwendungsbereiche}
-\begin{itemize}
-\item Steuerungs- / Automatisierungstechnik
-\item Multimediasysteme
-\item Luft- und Raumfahrttechnik
-\item Finanzdienstleistung
-\item ...
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{Anforderungen}
-\begin{itemize}
-\item Deterministisches Zeitverhalten
-\item Unterbrechbarkeit
-\item Priority Inheritance / Priority Ceiling
-\end{itemize}
-\end{frame}
-
-\subsubsection{Priority Inversion}
-\begin{frame}
-\frametitle{Priority Inversion}
-\begin{figure}[h]
-\centering
-\includegraphics[width=0.8\textwidth]{images/prio_inv.png}
-\end{figure}
-\end{frame}
-
-\subsubsection{Linux und Echtzeit}
-\begin{frame}
-\frametitle{Linux und Echtzeit}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/gpos_vs_rt.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{Ansätze}
-\begin{itemize}
-\item Dual-Kernel
-\item In-Kernel / Single Kernel
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{Dual-Kernel}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/dual_kernel.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{Single-Kernel}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/single_kernel.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{RTAI}
-\begin{itemize}
-\item Prof. Paolo Mantegazza, Universität Mailand
-\item Dual-Kernel Ansatz
-\item Echtzeit im Kernelspace
-\item Userspace Echtzeittasks nur eingeschränkt möglich
-\item Oberstes Designziel: Möglichst niedrige Latenzzeiten
-\item Unterstützte Plattformen: x86, x86\_64, einige ARM Plattformen
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{RTAI}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/rtai.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{Xenomai}
-\begin{itemize}
-\item Gegründet 2001
-\item Echtzeit im Userpace
-\item Skins bilden API verschiedenster RTOSse nach
-\item Dual-Kernel Ansatz
-\item Unterstützte Plattformen: x86, x86\_64, PowerPC, ARM, ia64
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{Xenomai}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/xenomai.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{Xenomai / IPIPE}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/ipipe.png}
-\end{figure}
-\end{frame}
-
-\begin{frame}
-\frametitle{Drum prüfe, wer sich ewig bindet...}
-\begin{overprint}
-\onslide<1>
-\begin{figure}[h]
-\centering
-\includegraphics[width=0.8\textwidth]{images/mar01.png}
-\end{figure}
-\onslide<2>
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/mar02.png}
-\end{figure}
-\onslide<3>
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/mar03.png}
-\end{figure}
-\end{overprint}
-\end{frame}
-
-\begin{frame}
-\frametitle{Preempt RT}
-\begin{itemize}
-\item Thomas Gleixner, Ingo Molnar
-\item In-Kernel Ansatz
-\item Große Entwicklergemeinde
-\item Viele Funktionen bereits nach ''Mainline'' Linux übernommen
-\item POSIX Realtime
-\item Hohe Akzeptanz, vollständige Integration in Linux 2006 beschlossen
-\end{itemize}
-\end{frame}
-
-\begin{frame}
-\frametitle{Preempt RT und Mainline}
-\textit{''Controlling a laser with Linux is crazy, but everyone in this room is
-crazy in his own way. So if you want to use Linux to control an industrial
-welding laser, I have no problem with your using Preempt RT''} - Linus Torvalds
-auf dem Kernel Summit 2006
-\end{frame}
-
-\begin{frame}
-\frametitle{Wie macht Preempt RT Linux echtzeitfähig?}
-\begin{overprint}
-\onslide<1>
-\begin{alertblock}{Wir erinnern uns...}
-Unterbrechbarkeit ist eine zentrale Anforderung an ein Echtzeitsystem
-\end{alertblock}
-\onslide<2>
-\begin{itemize}
-\item Locking Primitiven: Spinlocks werden durch RT Mutexe ersetzt, die schlafen
-können. Raw Spinlocks ersetzen die ursprüngliche Spinlock
-\item Interrupt Handler laufen per default in einem Kernelthread
-\end{itemize}
-\end{overprint}
-\end{frame}
-
-\begin{frame}
-\frametitle{Preempt RT}
-\begin{figure}[h]
-\centering
-\includegraphics[height=0.5\textwidth]{images/preempt_rt.png}
-\end{figure}
-\end{frame}
-
-\input{tailpres}