summaryrefslogtreecommitdiff
path: root/presentation1.tex
diff options
context:
space:
mode:
authorguest <guest@cba7306a-a4a0-4afd-bcb4-bd19f8a24309>2007-11-30 13:41:25 +0000
committerguest <guest@cba7306a-a4a0-4afd-bcb4-bd19f8a24309>2007-11-30 13:41:25 +0000
commiteacbf5bb4d57af21c731f41251015d3b991ad490 (patch)
tree477f43a79c75b400228a7c492f670a1c4886b5c3 /presentation1.tex
final version, initial import
git-svn-id: svn+ssh://mecka.net/home/svn/rtcorba-thesis@1 cba7306a-a4a0-4afd-bcb4-bd19f8a24309
Diffstat (limited to 'presentation1.tex')
-rwxr-xr-xpresentation1.tex370
1 files changed, 370 insertions, 0 deletions
diff --git a/presentation1.tex b/presentation1.tex
new file mode 100755
index 0000000..6fc2dd3
--- /dev/null
+++ b/presentation1.tex
@@ -0,0 +1,370 @@
+\documentclass[11pt]{beamer}
+
+\usepackage{ngerman}
+\usepackage{times}
+\usepackage{pgf,pgfarrows,pgfnodes,pgfautomata,pgfheaps}
+\usepackage{amsmath,amssymb}
+\usepackage[latin1]{inputenc}
+\usepackage{listings,color}
+\definecolor{lbcolor}{rgb}{0.95,0.95,0.95}
+\lstset{language=C++,
+ numbers=left,
+ stepnumber=1,
+ numbersep=5pt,
+ numberstyle=\tiny,
+ breaklines=true,
+ breakautoindent=true,
+ postbreak=\space,
+ tabsize=2,
+ basicstyle=\ttfamily\footnotesize,
+ showspaces=false,
+ showstringspaces=false,
+ extendedchars=true,
+ backgroundcolor=\color{lbcolor},
+ keywordstyle=\bf ,
+ commentstyle=\color{green},
+ stringstyle=\color{red}
+}
+%Abb. Layout Farbschema
+%1 Berkeley default
+%2 Antibes crane
+%3 Warsaw seahorse
+
+\mode<presentation>
+{
+ \usetheme{PaloAlto}
+ \usecolortheme{default}
+ \setbeamercovered{dynamic}
+}
+
+\title{RT CORBA}
+\author{Manuel Traut}
+\institute{TRUMPF-Laser GmbH + Co. KG \\ Hochschule Ravensburg-Weingarten}
+\logo{\includegraphics[height=1.6cm]{./img/logo.jpg}}
+
+%\AtBeginSubsection[]
+%{
+% \begin{frame}<beamer>
+% \frametitle{\"Ubersicht}
+% \tableofcontents[currentsection,currentsubsection]
+% \end{frame}
+%}
+
+%uncover stepwise
+\beamerdefaultoverlayspecification{<+->}
+
+\begin{document}
+
+\frame{ \titlepage }
+
+\begin{frame}
+ \frametitle{\"Ubersicht}
+ \tableofcontents
+\end{frame}
+
+\section{Motivation}
+
+\begin{frame}
+ \frametitle{Erfahrungen und Interesse in den Gebieten:}
+ \begin{block}{Linux}
+ \begin{itemize}
+ \item<1-> 1999 - erster Kontakt SuSE 6.1 mit Kernel 2.2
+ \item<2-> 2000 - Einsatz f\"ur Office, Internet, C++
+ \item<3-> 2001 - Linuxserver als Router, Fileserver, \dots
+ \item<4-> seit 2003 - Tutor an der FH LIP
+ \item<5-> 2004, 2006 - eigene gentoo LIP veranstaltet
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Erfahrungen und Interesse in den Gebieten:}
+ \begin{block}{hardwarenahes Arbeiten}
+ \begin{itemize}
+ \item<1->2000 - Modelleisenbahnsteuerung mit Parallelport
+ \begin{itemize}
+ \item<2-> Projektarbeit an der Realschule
+ \item<3-> auf DOS, BASIC Basis
+ \item<4-> Stellen von Weichen und Gleisabschnitten
+ \end{itemize}
+ \item<5->2003 - Versuche Modelleisenbahnsteuerung mit Linux
+ \begin{itemize}
+ \item<6-> Linuxd\"amon aus Internet\footnote{http://vogt-it.com/OpenSource/DDL} kreiert digital Signale
+ \item<7-> umgebauter M\"arklin Delta dient als Booster
+ \item<8-> Loks addressbier und steuerbar via ssh
+ \end{itemize}
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Erfahrungen und Interesse in den Gebieten:}
+ \begin{block}{embedded Systeme}
+ \begin{itemize}
+ \item<1-> 2002 \emph{WAECHTER} \footnote{ Wireless And Efficient Caretaker He Transmitts Errors Rapidly} \"Uberwachung und Steuerung per Handy
+ \begin{itemize}
+ \item<2-> Webserver (wap) auf embedded Linux
+ \item<3-> Kommunikation via Parallelport mit Microcontroller
+ \item<4-> Microcontroller liest und schreibt i/o
+ \item<5-> Microcontroller steuert Handy via V24
+ \end{itemize}
+ \item<6-> 2006 Linux auf dBox
+ \item<7-> 2006 Geocaching Anwendung f\"ur Symbian JAVA
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Erfahrungen und Interesse in den Gebieten:}
+ \begin{block}{verteilte Systeme}
+ \begin{itemize}
+ \item<1-> 2006 \emph{YALP} \footnote{ Yet Another Lovely Player} Multimediadatenverwaltung und Streaming
+ \begin{itemize}
+ \item<2-> auf vielen Plattformen einsetzbar
+ \item<3-> basierend auf JAVA, RMI, VideolanClient, postgreSQL
+ \item<4-> Server f\"ur DB mit Medieninformationen und Datenhaltung
+ \item<5-> Client zum Finden von Medien, Indizieren neuer Dateien
+ \item<6-> Playlist auf Client erstellen, Server streamt diese zu Client
+ \item<7-> Benutzerverwaltung (editieren, indizieren, abspielen)
+ \item<8-> Statistik (User, Streams, gesamt, aktuell)
+ \end{itemize}
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\section{CORBA}
+
+\begin{frame}
+ \frametitle{Funktionsweise}
+ \includegraphics[height=6cm]{img/objRequest.jpg}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Komponenten}
+ \includegraphics[height=6cm]{img/orb.jpg}
+\end{frame}
+
+\subsection{Services}
+\begin{frame}
+ \frametitle{NamingService}
+ \begin{block}{Server}
+ \begin{itemize}
+ \item<1-> NamingService finden
+ \item<2-> Objektreferenz mit Name beim NS melden
+ \end{itemize}
+ \end{block}
+ \begin{block}{Client}
+ \begin{itemize}
+ \item<3-> NamingService finden
+ \item<4-> Objektreferenz anhand Name beim NS erfragen
+ \item<5-> Objektzugriff \"uber Objektreferenz
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{EventService}
+ \begin{block}{Server}
+ \begin{itemize}
+ \item<1-> Zugriff \"uber NamingService
+ \item<2-> Message mit Typ und Sender ID an EventService senden
+ \end{itemize}
+ \end{block}
+ \begin{block}{Client}
+ \begin{itemize}
+ \item<3-> Zugriff \"uber NamingService
+ \item<4-> anmelden bei EventService (Policies definieren Zustellart der Nachrichten)
+ \item<5-> Kann beim EventService Filterregeln hinterlegen
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\section{Realtime CORBA}
+\begin{frame}
+ \frametitle{RTCORBA Komponenten}
+ \includegraphics[height=6cm]{./img/rtcorbaext.jpg}
+\end{frame}
+
+\section{TAO}
+
+\begin{frame}
+ \frametitle{Architektur}
+ \includegraphics[height=6cm]{./img/ace.jpg}
+\end{frame}
+
+\begin{frame}
+ \frametitle{realtime Scheduling in TAO}
+ \includegraphics[height=6cm]{./img/tao.jpg}
+\end{frame}
+
+\section{Clients zum Datenaustausch}
+
+\subsection{Versuchsaufbau}
+\begin{frame}
+ \frametitle{Ende zu Ende Latenz}
+ \includegraphics[height=6cm]{./img/versuch1.jpg}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Lastsimulation}
+ \begin{block}{Festplattenlast}
+ xdd
+ \end{block}
+ \begin{block}{Netzwerklast}
+ auf niedriger priorisierte Ethernetports
+ via flood ping
+ \end{block}
+ \begin{block}{CPU Last}
+ cpuburnP5
+ \end{block}
+\end{frame}
+
+\subsection{V1 RT CORBA}
+
+\begin{frame}[fragile]
+ \frametitle{Interfacedefinition}
+ \begin{block}{definiert Kommunikationsobjekte}
+ \end{block}
+\begin{lstlisting}
+// benchV1.idl
+module benchmark{
+ exception invalidRequest();
+ interface Put{
+ void allPorts(in short val1, in short val2, in short val3) raises(invalidRequest);
+ }
+}
+\end{lstlisting}
+\end{frame}
+
+\begin{frame}[fragile]
+ \frametitle{Implementation}
+ \begin{block}{Server}
+ \begin{itemize}
+ \item<1-> hostet ein Objekt zum Setzen von DOUT
+ \item<2-> Zugriff auf dieses Objekt erfolgt mit h\"ochster Priorit\"at
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Implementation}
+ \begin{block}{Client}
+ \begin{itemize}
+ \item<1-> Init: Objektreferenz holen
+ \item<2-> PortChanged - Signal: Anhand Objektreferenz entsprechenden Port auf Server setzen
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Datenflu\ss}
+ \includegraphics[height=7cm]{./img/programmfluss.jpg}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Ergebnis}
+ \begin{itemize}
+ \item<1-> mit Last
+ \end{itemize}
+ \includegraphics[height=6cm]{./cdrom/messungen/versuch1/optimiert/Image.png}
+\end{frame}
+
+\subsection{V2 RT CORBA Priorisierung}
+
+\begin{frame}
+ \frametitle{\"Anderungen zu V1}
+ \begin{block}{Server}
+ \begin{itemize}
+ \item<2-> 2 Instanzen zum Schreiben auf CPX
+ \item<3-> 2 versch. priorisierte POAs: RTCORBA::max, RTCORBA::min
+ \item<4-> je eine Instanz zum Schreiben auf CPX wird bei jedem POA registriert
+ \end{itemize}
+ \end{block}
+ \begin{block}{Client}
+ \begin{itemize}
+ \item<6-> \"Anderung an P1 wird mit max Priority Objektreferenz \"ubertragen
+ \item<7-> \"Anderung an P2 wird mit min Priority Objektreferenz \"ubertragen
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Ergebnis}
+ \begin{itemize}
+ \item ohne Last
+ \end{itemize}
+ \includegraphics[height=3cm]{./cdrom/messungen/versuch3/00.png}
+ \begin{itemize}
+ \item mit Last
+ \end{itemize}
+ \includegraphics[height=3cm]{./cdrom/messungen/versuch3/61.png}
+\end{frame}
+
+\subsection{V3 RT EventService}
+\begin{frame}
+ \frametitle{Versuchsaufbau}
+ \begin{block}{Supplier}
+ sendet Port\"anderungen an RT EventService
+ \end{block}
+ \begin{block}{Consumer}
+ registriert sich bei RT EventService
+ bekommt \"Anderungen mitgeteilt
+ setzt entsprechend die digitalen Ausg\"ange
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{Ergebnis}
+ \begin{itemize}
+ \item<1-> mit Last
+ \end{itemize}
+ \includegraphics[height=6cm]{./cdrom/messungen/versuch2/Image.png}
+\end{frame}
+
+\section{weiteres Vorgehen}
+\begin{frame}
+ \frametitle{n\"achste Schritte}
+ \begin{block}{Dokumentation}
+ \begin{itemize}
+ \item Auswertung der Messungen mit gnuplot
+ \item Grafiken und Beschreibungen zu V2, V3
+ \end{itemize}
+ \end{block}
+ \begin{block}{QoS auf Ethernetebene}
+ \begin{itemize}
+ \item Integration von QoS Switches in den Versuchsaufbau
+ \item Messungen mit Switch
+ \end{itemize}
+ \end{block}
+ \begin{block}{remote Control}
+ \begin{itemize}
+ \item Integration von ACE/TAO in zproc Umgebung
+ \item Programm zum \emph{Fernsteuern} eines Lasers
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+\begin{frame}
+ \frametitle{weitere Aspekte der DA}
+ \begin{block}{ACE/TAO}
+ \begin{itemize}
+ \item footprint reduzieren
+ \item Jitter Schwankungen bei HD Last
+ \end{itemize}
+ \end{block}
+ \begin{block}{Untersuchung DAIS}
+ \begin{itemize}
+ \item Auf CORBA aufgesetzter Standard zur RT Kommunikation
+ \item Treffen mit Homag, Einf\"uhrung DAIS
+ \end{itemize}
+ \end{block}
+ \begin{block}{Untersuchung DDS}
+ \begin{itemize}
+ \item Standard zur RT Kommunikation
+ \item Publish / Subscribe
+ \end{itemize}
+ \end{block}
+\end{frame}
+
+
+\end{document} \ No newline at end of file