diff --git a/slides/bs-20150615.pdf b/slides/bs-20150615.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d7298a73fd7dd7b7ac4ff753229f5da8f480a913 Binary files /dev/null and b/slides/bs-20150615.pdf differ diff --git a/slides/rt-2015ss.pdf b/slides/rt-2015ss.pdf index 10571a9d5763108671f542205019d9e68b0aa5e6..4ef1cd8656c176ed63ffd24c10efd2d1d4551822 100644 Binary files a/slides/rt-2015ss.pdf and b/slides/rt-2015ss.pdf differ diff --git a/src/Apple_II.jpg b/src/Apple_II.jpg new file mode 100644 index 0000000000000000000000000000000000000000..f64d2794a1cb89c4a25b7c4e77a066a4519d7b3a Binary files /dev/null and b/src/Apple_II.jpg differ diff --git a/src/IBM_PC_5150.jpg b/src/IBM_PC_5150.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0ac6c4c8a923900c74e78bf3b9c3c44e8f08c31d Binary files /dev/null and b/src/IBM_PC_5150.jpg differ diff --git a/src/bs-20150615.tex b/src/bs-20150615.tex new file mode 100644 index 0000000000000000000000000000000000000000..92e8f15c4911c22b71ea7af0391e214a389f65aa --- /dev/null +++ b/src/bs-20150615.tex @@ -0,0 +1,263 @@ +% bs-20150615.pdf - Lecture Slides on Operating Systems +% Copyright (C) 2014, 2015 Peter Gerwinski +% +% This document is free software: you can redistribute it and/or +% modify it either under the terms of the Creative Commons +% Attribution-ShareAlike 3.0 License, or under the terms of the +% GNU General Public License as published by the Free Software +% Foundation, either version 3 of the License, or (at your option) +% any later version. +% +% This document is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this document. If not, see <http://www.gnu.org/licenses/>. +% +% You should have received a copy of the Creative Commons +% Attribution-ShareAlike 3.0 Unported License along with this +% document. If not, see <http://creativecommons.org/licenses/>. + +\documentclass[10pt,t]{beamer} + +\usepackage{pgslides} +\usepackage{rotating} +\usepackage{pdftricks} +\usepackage[obeyfamily=false,mathrm=mathsf,textrm=sffamily]{siunitx} +\usepackage{eurosym} + +\begin{psinputs} + \usepackage[latin1]{inputenc} + \usepackage[german]{babel} + \usepackage[T1]{fontenc} + \usepackage{helvet} + \renewcommand*\familydefault{\sfdefault} + \usepackage{pstricks} + \psset{unit=1cm} +\end{psinputs} + +\title{Treiberentwicklung,\\[\medskipamount]Echtzeit- und Betriebssysteme} +\author{Prof.\ Dr.\ Peter Gerwinski} +\date{15.\ Juni 2015} + +\begin{document} + +\newlength{\normalpdfpageheight} +\setlength{\normalpdfpageheight}{\pdfpageheight} + +\maketitleframe + +\section{Einf�hrung} +\section{Treiber} +\section{Echtzeit} + +\sectionnonumber{\color{black}{\color{red}Treiberentwicklung}, + {\color{medgreen}Echtzeit-} und + {\color{structure}Betriebssysteme}} + +\begin{frame} + \showsectionnonumber + + \begin{center} + \begin{picture}(12,7.5) + \put(6,7){\makebox(0,0){Anwendungsprogramm}} + \put(6,6.75){\vector(0,-1){1.0}} + \put(6,5.5){\makebox(0,0){Systembibilothek + ggf.\ weitere Bibliotheken}} + \put(6,5.25){\vector(0,-1){1.0}} + \put(6,4){\makebox(0,0){\color{structure}Betriebssystemkern}} + \put(5,3.75){\vector(-1,-1){1}} + \put(6,3.75){\vector(0,-1){2}} + \put(7,3.75){\vector(1,-1){1}} + \put(3.75,2.5){\makebox(0,0){\color{red}Treiber}} + \put(3.5,2.25){\vector(-1,-1){1}} + \put(2.25,1){\makebox(0,0){\color{red}Ger�t}} + \put(6,1.5){\makebox(0,0){\color{structure}Hauptspeicher}} + \put(8.25,2.5){\makebox(0,0){\color{medgreen}Rechenzeit}} + \end{picture} + \end{center} + +\end{frame} + +\section{Grafik} +\subsection{Hardwarenahe Aspekte} + +\begin{frame} + \showsection + \vspace{-\smallskipamount} + Beispiel f�r User-Space-Treiber + + \bigskip + + \showsubsection + \vspace{-\bigskipamount} + \begin{itemize} + \item + Text- und Grafikmodi + \item + Interpretation der Bits, Bytes und Bytefolgen + \item + Interleaving + \end{itemize} + + \medskip + + Umschalten zwischen verschiedenen Modi + \begin{itemize} + \item + Output-Ports + \item + Programme im ROM, Software-Interrupts + \end{itemize} +\end{frame} + +\setcounter{section}{3} +\section{Speicherverwaltung} +\subsection{Bank Switching} + +\begin{frame} + \showsection + \vspace*{-\smallskipamount} + \showsubsection + + Apple II (1977),\\ + Commodore 64 (1982), \dots\hfill + \begin{picture}(0,0) + \put(-6,-2){\includegraphics[width=6cm]{Apple_II.jpg}} + \end{picture} + + \medskip + + \begin{itemize} + \item + Physikalisch adressierbar: 64\,kB + \item + Bedarf nach mehr Speicher + \item + L�sung: �ber Output-Port\\ + Teile des Speichers umschalten + \item + Das Programm mu� sich derweil vollst�ndig\\ + in einem anderen Teil des Speichers befinden. + \end{itemize} + + \color{red} + \textarrow\ Anwendung f�r Grafik: \emph{mehrere oder alternierende Grafikseiten} +\end{frame} + +\setcounter{section}{3} +\section{Grafik} +\subsection{Hardwarenahe Aspekte} +\subsection{Low Level vs.\ High Level} + +\begin{frame} + \showsection + \vspace*{-\smallskipamount} + \showsubsection + + Low Level + \begin{itemize} + \item + direkter Speicherzugriff + \item + Hardware-Beschleunigung + \end{itemize} + + \medskip + + High Level + \begin{itemize} + \item + Portabilit�t + \item + Netzwerkf�higkeit + \item + Trennung verschiedener Programme\\ + \textarrow\ Fenster + \end{itemize} + + \medskip + + Kompromi�: kontrollierter Low-Level-Zugriff + + \medskip + + Integration in das Betriebssystem + \begin{itemize} + \item + Flexibilit�t vs.\ Einheitlichkeit + \end{itemize} + +\end{frame} + +\setcounter{section}{3} +\section{Speicherverwaltung} +\subsection{Bank Switching} +\subsection{Speichersegmentierung} + +\begin{frame} + \showsection + \vspace*{-\smallskipamount} + \showsubsection + + IBM PC (1981),\\ + IBM PC/AT (1984), \dots\hfill + \begin{picture}(0,0) + \put(-6,-2){\includegraphics[width=6cm]{IBM_PC_5150.jpg}} + \end{picture} + + \medskip + + \begin{itemize} + \item + Physikalisch adressierbar:\\ + 1\,MB bis 16\,MB + \item + Problem: 16-Bit-Register\\ + k�nnen nur 64\,kB adressieren + \item + L�sung: Segment- und Offset-Adressen + \item + Zus�tzlich: L�nge der Segmente einstellbar (Deskriptortabelle)\\ + \textarrow\ Speicherschutz + \item + Konzept �bernommen f�r 32-Bit-Prozessoren\\ + Physikalisch adressierbar: 4\,GB\\ + \textarrow\ Segmente dienen nur noch dem Speicherschutz + \end{itemize} + + \color{red} + \textarrow\ Anwendung f�r Grafik: \emph{Grafik-Speichersegment(e)} + +\end{frame} + +\subsection{Virtuelle Speicherverwaltung} + +\begin{frame} + \showsection + \vspace*{-\smallskipamount} + \showsubsection + + \begin{itemize} + \item + zus�tzlich zur Segmentierung (nachgeschaltet) + \item + Aufteilung des Speichers in gleich gro�e Kacheln -- \newterm{Pages} + \item + Speicher mu� nicht wirklich vorhanden sein + \arrowitem + bei Zugriff: \newterm{Page Fault} ("`Interrupt"') + \arrowitem + Betriebssystem kann Speicher auf Platte auslagern + \arrowitem + weitere Anwendung: Dateizugriff �ber "`Speicherbereich"' + \medskip + \item[\color{red}\textarrow] + \color{red}Anwendung f�r Grafik: \emph{Frame Buffer} + \end{itemize} + +\end{frame} + +\end{document} + diff --git a/src/rt-2015ss.tex b/src/rt-2015ss.tex index 2af89a957670adbfc5295cc37a9cf52b18d64e7c..ab074f1efe10dfbb8e548f96600375dde69513dd 100644 --- a/src/rt-2015ss.tex +++ b/src/rt-2015ss.tex @@ -40,7 +40,7 @@ \title{Treiberentwicklung,\\[\medskipamount]Echtzeit- und Betriebssysteme} \author{Prof.\ Dr.\ Peter Gerwinski} -\date{18.\ und 31.\ Mai 2015} +\date{18.\ Mai bis 8.\ Juni 2015} \begin{document}