\section{Real-time Linux} %\begin{frame} %\frametitle{RT Linux Integration} %\begin{block}{\dots in Kernelspace} %\begin{description} %\item[Zugriff] ungesch\"utzter Zugriff auf alle Resourcen %\item[Vorteil] einfache, schnelle Allokalisierung von Resourcen %\item[Nachteil] Absturz der RT Applikation f\"uhrt zu OS Absturz %\item[Implementationen] RTAI, RTLinux, Xenomai %\item[Kommentar] von Linus abgelehnt %\end{description} %\end{block} %\end{frame} \begin{frame} \frametitle{RT Linux Integration} \begin{block}{\dots in Userspace} \begin{description} \item[Vorteil] RT Applikation programmierbar, debugbar wie normale Applikation \item[Nachteil] Integration in den Kernel aufwendig \item[Implementationen] RT\_ PREEMPT Patch von Ingo Molnar und Thomas Gleixner \item[Kommentar] seit 2.6.18 Beginn der Integration in vanilla \end{description} \end{block} \end{frame} \begin{frame} \frametitle{RT\_ PREEMPT Patch - Features} \begin{block}{IRQ Handling} \begin{itemize} \item Abarbeitung von IRQs kann gecached werden \item IRQs k\"onnen priorisiert werden \end{itemize} Interruptcode jedes IRQs wird in einem Real-time priorisierten Prozess ausgef\"uhrt \end{block} \end{frame} \begin{frame} \frametitle{RT\_ PREEMPT Patch Features} \begin{block}{Priority Inheritance Mutex} \begin{itemize} \item RT Prozess ben\"otigt Resource, welche von niedriger Priorisiertem blockiert wird \item Anheben der Priorit\"at des nieder priorisierten Prozesses \item \emph{klauen} der Resource von anderen niedrig priorisierten, wartenden Prozessen \item RT Prozess erh\"alt Zugriff auf Resource \end{itemize} \end{block} \end{frame} \begin{frame} \frametitle{RT\_ PREEMPT Patch - Schwachstellen} \begin{block}{RT Ethernet} \begin{description} \item[Umgebung] $n$ Ethernetdevices, $1$ Device hochprior \item[Problem] Abarbeitung aller Ethernetpakete in gemeinsamen softirqs \item[Auswirkung] Latenzschwankungen am hochprioren Device bei hoher Netzlast an anderen Devices \item[Beseitigung] in Bearbeitung (RTIO) \dots \end{description} \end{block} \end{frame}