\documentclass{beamer}
%\documentclass[dvips]{beamer}
% [dvips] allows use of latex->dvips->ps2pdf instead of pdflatex

%\usepackage{beamerthemesplit}
\usepackage{graphicx}
\usepackage{palatino}
\usepackage[T1]{fontenc}
% Or whatever. Note that the encoding and the font should match. If T1
% does not look nice, try deleting the line with the fontenc.

\mode<presentation>
{
  %\usetheme{Berkeley}   % left bar
  %\usetheme{Antibes} % tree header
  %\usetheme{Boadilla}  % very plain
  \usetheme{Warsaw}
  %\usetheme{Rochester} % I like
  %%\usetheme{Goettingen}  % right bar
  %\usetheme{Ilmenau}

  %\usepackage{beamerouterthemeshadow}
  %\usepackage{beamerouterthemesmoothtree}
  \usepackage{beamercolorthemeorchid}
  \usepackage{beamerinnerthemerounded}

  \setbeamercovered{transparent}
  % comment out to completely hide covered material
}


%\usetheme{Warsaw}
%\usetheme{Frankfurt}
%\usetheme{Szeged}
%\usetheme{Singapore}
%\usetheme{Rochester}  % pretty good: no menus at top
%\usetheme{Pittsburgh}
%\usetheme{Berlin}   % too much header/footer stuff
%\usecolortheme{seahorse}
%\usecolortheme{rose}

%\usefonttheme[onlylarge]{structuresmallcapsserif}


\title[TOPSY v3 on IXP2400]{Porting TOPSY v3 to the IXP2400}
%\title[Short Title]{Long Title}
\subtitle{Zwischenpräsentation: Übersicht und Ausblick}
\author[Robert Natau, Matthias Bader]{WS 06/07, November 2006 bis März 2007\\Robert Natau, Matthias Bader\\Prof. Dr. Bernhard Plattner\\Dr. Lukas Ruf}

\institute[ETH Zürich]{%
   \includegraphics[width=2cm]{TIKlogo}\\
   Institut für Technische Informatik und Kommunikationsnetze\\
   Eidgenössische Technische Hochschule Zürich
}

\date[TODO: 30. Mär. '07] % (optional, should be abbreviation of conference name)
{TODO: 30. März 2007}
% - Either use conference name or its abbreviation.
\pgfdeclareimage[width=2cm]{university-logo}{ethlogo_png}
\logo{\pgfuseimage{university-logo}}
%\logo{\pgfuseimage{university-logo}}

\begin{document}

\begin{frame}
  \titlepage
\end{frame}

\section{Inhalt dieser Präsentation}
\begin{frame}
  \frametitle{Inhalt dieser Präsentation}
  \tableofcontents
  % You might wish to add the option [pausesections]
\end{frame}

\section{Problemstellung}
\begin{frame}
  \frametitle{Problemstellung}
%  \framesubtitle{my subtitle}  % optional
  \begin{block}{Im Ganzen \ldots}
    Portierung eines Open Source-Betriebssystems auf eine ARM-basierte Plattform
  \end{block}
  \pause
	\begin{block}{\ldots und im Detail}
  \begin{itemize}
    \item Software \textbf{TOPSY v3: }dritte Generation des ETH-CSG-OS, läuft bereits stabil auf verwandten Prozessoren
      \pause
    \item Prozessor \textbf{Intel IXP2400: }Netzwerkprozessor mit ARM~5-kompatiblem Core und acht Microengines
      \pause
    \item Plattform \textbf{Radisys ENP-2611: }PCI-X-Board mit einem IXP2400-Prozessor und drei GbE-Ports, Wire~Speed-fähig
  \end{itemize}
  \end{block}

\end{frame}

\section{Herausforderungen}
\begin{frame}
  \frametitle{Herausforderungen}
% \framesubtitle{my subtitle}  % optional
%\begin{columns}
%\begin{column}{5cm}
\includegraphics[width=12cm]{enp2611}
%\end{column}
%\begin{column}{9cm}
%\begin{itemize}
%    \item Bootstrapping \pause 
%    \item Init \pause 
%    \item erst dann Betrieb\\
%    \pause
%		\item Entwickeln und Debuggen auf einer Embedded-Plattform
%  \end{itemize}
%\end{column}
%\end{columns}
\end{frame}

\section{Lösungsansätze}
\begin{frame}
  \frametitle{Lösungsansätze}
  %\framesubtitle{in der Struktur von TOPSY}  % optional
\begin{columns}
\begin{column}{8cm}
  \begin{center}
	\includegraphics[width=7.5cm]{TOPSYstructure}
	\end{center}
\end{column}
\begin{column}{6cm}
\begin{itemize}
    \item HAL vs. Kernel \& \\User Space\pause 
    \item Portierung hardware-\\naher Module
  \end{itemize}
\end{column}
\end{columns}
\end{frame}


\begin{frame}
  \frametitle{Vorgehen}
  %\framesubtitle{Übersicht}  % optional
	\begin{itemize}
	\item Iteratives Rapid Prototyping \& Extreme Programming
	\pause
	\end{itemize}
	\begin{block}{Dafür eingesetzte Hilfsmittel:}
  \begin{itemize}
    \item Verwendung des IXP1200-TOPSY als Grundlage
    \pause
		\item Intensiven Gebrauch des IXP-Emulators
    \pause
		\item Anpassungen am IXP-Emulator selber
    \pause
		\item Verwendung des IXP2400-Linux-Codes zur Illustration
  \end{itemize}
  \end{block}
\end{frame}

\begin{frame}
  \frametitle{Evaluation}
  %\framesubtitle{Übersicht}  % optional
	\begin{itemize}
	\item Selbstkontrolle durch Entwicklungsmethodik
	\pause
	\item qualitative und quantitative Evaluation des Resultats
	\pause
	\begin{itemize}
	\item Messungen im Kernel- und User Space
	\pause
	\item Output von Befehlen in der Konsole
	\end{itemize}
	\end{itemize}
	
	%\begin{block}
	%\end{block}
\end{frame}

\begin{frame}
  \frametitle{Evaluation}
  \framesubtitle{quantitative Evaluation}  % optional

\begin{table}
\begin{center}
\begin{minipage}{\textwidth}
\begin{tabular}{| p{165pt} | c | c |}
\hline
Messgrösse & Start (hex) & Ende (hex) & Cycles & benötigte Zeit\\
\hline
Message Passing von Kernel- zu Kernel-Protection Domain & 1317 & 2.195$\mu$s\\
\hline
Message Passing von User- zu User-Protection Domain & 69734 & 116.2$\mu$s\\
\hline
Laden des user.bin-Images und Starten der Shell (mit \texttt{printf}) & 471873 & 0.786ms\\
\hline
Laden des user.bin-Images und Starten der Shell (ohne \texttt{printf}) & 374186 & 0.623ms\\
\hline
\end{tabular}
\end{minipage}
\end{center}
\end{table}
\end{frame}

\begin{frame}[fragile]
  \frametitle{Evaluation}
  \framesubtitle{qualitative Evaluation}  % optional
\scriptsize
\begin{verbatim}Topsy Shell 3.0 (c) 1998, ETH Zurich, TIK
Type 'start licence' to print the licence terms 
governing your use of this product.
($Id: Shell.h 2911 2007-03-07 13:27:12Z rnatau $)

> start hello
COMMAND: start hello
threadBuild: stack base 0xcfdfe000 mappedBase 0x60000000, 
stackStart 0xcfefdffc, mappedStart 0x600ffffc
Exception: cause 4, 0x5 0x600fffe0 0 [PC 0x0c208e5c]
vm_region_free: free region form 0x60000000 - 0x600fffff
Exception: cause 4, 0x5 0xcfefdfac 0 [PC 0x0d002de8]
Hello World

vm_region_free: free region form 0xcfdfe000 - 0xcfefdfff
>\end{verbatim}}
\normalsize

\end{frame}


\section{Resultate}
\begin{frame}
  \frametitle{Resultate}
% \framesubtitle{my subtitle}  % optional

  \begin{itemize}
    \item Implementation des IXP2400-Hardware Abstraction Layers von TOPSY~v3
    \pause
		\item Deployment auf ENP-2611
    \pause
		\item Vereinheitlichung des Legacy-Code
    \pause
		\item Vollständige Dokumentation
		\pause
	\end{itemize}
  \begin{block}{\ldots oder in einem Satz:}
  	\begin{center}
  	\includegraphics[width=0.85cm]{netbeast.png}
    ~~ein laufendes TOPSY auf dem IXP2400-Core~
    \includegraphics[width=0.85cm]{netbeast_mirrored.png}
    \end{center}
  \end{block}
\end{frame}

\section{Einsatzgebiete}
\begin{frame}
  \frametitle{Einsatzgebiete}
% \framesubtitle{my subtitle}  % optional
	\begin{itemize}
	\item als Lehrbetriebssystem im Unterricht
	\pause
	\item als Node~OS in Forschung und Entwicklung
	\pause
	\item als Betriebssystem auf einem Embedded Device
	\end{itemize}
\end{frame}

\section{Ausblick}
\begin{frame}
  \frametitle{Ausblick und Möglichkeiten zur Weiterentwicklung}
% \framesubtitle{my subtitle}  % optional
  \begin{itemize}
    \item Inbetriebnahme der Microengines (ausgeschriebene Semesterarbeit)
    \pause
		\item Implementation von Treibern für die Hardwarebausteine des IXP2400
    \pause
		\item Entwicklung von Netzwerkapplikationen für produktiven Betrieb (z.B. QoS-Router, VPN)
	\end{itemize}
\end{frame}

\end{document}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% END DOCUMENT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%