\documentclass[presentation]{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.

% for printing
%\usepackage{pdfpages}
%\pgfpagesuselayout{resize}[a4paper,border shrink=5mm,landscape]


\usepackage[scaled=0.95]{helvet}
\usepackage{courier}

\newcommand{\code}[1]{\texttt{#1}}
\newcommand{\codebf}[1]{\texttt{\textbf{#1}}}
\newcommand{\algo}[1]{\phantom{m} \framebox{\begin{minipage}{0.8\linewidth} \ttfamily #1 \end{minipage}}}
\newcommand{\?}{{\huge\hspace{2em}? ? ?\hspace{2em}}}
\newcommand{\tab}{\phantom{mmm}}

\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}
  \usepackage{beamerfoils}

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

\mode<handout>
{
  \usetheme{Rochester}
  \usepackage{beamerfoils}
}

%\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{Portierung von Topsy v3 \\ auf den Intel Pentium 4} %\title[Short Title]{Long Title}
\subtitle{Voraussetzungen für PC/AT-kompatible Multiprozessor-Unterstützung}
\author[Sebastian Ryffel]{\small Semesterarbeit SA-2007-19 \\SS 07: 19. März 
bis 14. September 2007\\Sebastian Ryffel\\Prof. Dr. Bernhard Plattner\\Dr. Lukas Ruf}

 
\institute[TIK CSG, ETH Zürich]{%
\hspace*{-1cm} 
\begin{tabular}{c}
  \begin{tabular}{p{2cm}}\includegraphics[width=2cm]{ethlogo} \end{tabular}
  \begin{tabular}{p{6cm}}\tiny  \centering
    Institut für Technische Informatik und Kommunikationsnetze \newline%
    Eidgenössische Technische Hochschule Zürich   
   \end{tabular}
  \begin{tabular}{p{2cm}}\includegraphics[width=2cm]{TIKlogo} \end{tabular}
\end{tabular}%
}

\date[14. Sept. '07] % (optional, should be abbreviation of conference name)
{\tiny 14. September 2007}
% - Either use conference name or its abbreviation.
\pgfdeclareimage[width=2cm]{university-logo}{ethlogo}
\logo{\pgfuseimage{university-logo}}
%\logo{\pgfuseimage{university-logo}}

\begin{document}

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

\LogoOn

\section{Überblick}
\begin{frame}
  \frametitle{Präsentationsüberblick}
  \tableofcontents
  % You might wish to add the option [pausesections]
\end{frame}

\section{Problemstellung}
\begin{frame}
  \frametitle{Problemstellung}
  % \framesubtitle{my subtitle}  % optional
  \begin{block}{Überblick}
    Portierung eines Betriebssystems auf eine neue Prozessor-Architektur
  \end{block}
  \pause
	\begin{block}{Im Detail}
  \begin{itemize}
    \item \textbf{Betriebssystem:} Topsy v3
    \item \textbf{Plattform:} PC/AT-kompatibel
    \item \textbf{Prozessoren:}  IA-32 Architektur {\small ab Pentium 4}
	\begin{itemize}
      \item singlecore, (multicore)
      \item zB. Pentium M, Intel Core Duo
    \end{itemize}
  \end{itemize}
  \end{block}
\end{frame}



\section{Herausforderungen}
\begin{frame}
  \frametitle{Herausforderungen}
% \framesubtitle{my subtitle}  % optional
\begin{itemize}
  \item IA-32 / PC-Architektur sehr komplex
  \item Detailverständnis der Topsy-Mechanismen
  \item Portierung der Konzepte von  Topsy v3
  \begin{itemize}
    \item Memory Management (MM)
    \item Thread Management (TM)
    \item IO System (IO)
    \item Inter-Prozess-Kommunikation (IPC)
  \end{itemize}
\end{itemize}
\end{frame}

\section[Topsy v3]{Neuerungen von Topsy v3}
\begin{frame}
	\frametitle{} % kein Platz für einen Frametitle...
    \hspace*{-0.05\textwidth}
    \includegraphics[width=1.1\textwidth]{topsy-v1-vs-v3}
    \begin{block}{Neuerungen von Topsy v3} 
    \begin{itemize}
      \item Protection Domains
      \begin{itemize}
        \item Virtual Memory
        \item Prozess-Management verwaltet Protection Domains
      \end{itemize}
      \item IPC-Handler mittels Page-Mapping (Page-Loaning)
    \end{itemize}
    \end{block}
\end{frame}


\section{Erreichtes}

\begin{frame}
  \frametitle{Erreichtes}
  % immer: wieso nötig?
  \begin{block}{Virtual Memory} 
    \begin{itemize}
      \item Portierung des PMap
      \item Implementation neuer Syscalls
    \end{itemize}
  \end{block}
  \pause
  \begin{block}{Thread Management} 
    \begin{itemize}
      \item Reentranter Interrupt Handler
      \item Neue Architektur
      \item APIC, I/O-APIC Support
    \end{itemize}
  \end{block}
  \pause
  \begin{block}{Interprozesskommunikation} 
    \begin{itemize}
      \item Portierung der IPC % zwischen Protection Domains
      \item Architekturänderungen für Thread Safety % IPC thread-save
    \end{itemize}
  \end{block} 
\end{frame}



\section[Evaluation]{Testmethoden und Resultate}
\begin{frame}
  \frametitle{Testmethoden und Resultate}
  \begin{block}{Simulator}
    \begin{itemize}
      \item Single Stepping
    \end{itemize}
  \end{block}
  \vspace{\stretch{1}}
  \begin{block}{Langzeittests}
    \begin{itemize}
      \item 90 Stunden Dauerbetrieb
      \item 300 Mio. Nachrichten, 600 Mio. Interrupts
    \end{itemize}
  \end{block}
  \vspace{\stretch{1}}
  \begin{block}{Lasttests}
    \begin{itemize}
      \item \code{crashme} Programm
    \end{itemize}
  \end{block}


\end{frame}



\section[Ausblick]{Zusammenfassung und Ausblick}
\begin{frame}
  \frametitle{Zusammenfassung und Ausblick}
% \framesubtitle{my subtitle}  % optional

 \begin{block}{Erreichtes: Zusammenfassung}
	\begin{itemize}
      \item Portierung  von Topsy v3\\
       Microkernel: MM, TM, IO, IPC
      \item Vorbereitungen für Multicore Betrieb\\
       Reentranter Interrupt Handler, APIC
    \end{itemize}
  \end{block}
  \pause
  %\vspace{1cm}
  \begin{block}{Ausblick}
    \begin{itemize}
      \item Anpassungen der anderen Architekturen (Mips, XScale)
      \item Erweiterung auf Multicore
    \end{itemize}
  \end{block}
  \pause
  \begin{block}{Demo}
    \begin{itemize}
      \item \ldots
    \end{itemize}
  \end{block}
\end{frame}

\end{document}

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