Skip to content
Snippets Groups Projects
Commit 801dc167 authored by Peter Gerwinski's avatar Peter Gerwinski
Browse files

Grafik und Speicherverwaltung

parent d79358f9
Branches
No related tags found
No related merge requests found
File added
No preview for this file type
src/Apple_II.jpg

4.28 MiB

src/IBM_PC_5150.jpg

315 KiB

% 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{Einfhrung}
\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}Gert}}
\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 fr 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
Lsung: ber Output-Port\\
Teile des Speichers umschalten
\item
Das Programm mu sich derweil vollstndig\\
in einem anderen Teil des Speichers befinden.
\end{itemize}
\color{red}
\textarrow\ Anwendung fr 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
Portabilitt
\item
Netzwerkfhigkeit
\item
Trennung verschiedener Programme\\
\textarrow\ Fenster
\end{itemize}
\medskip
Kompromi: kontrollierter Low-Level-Zugriff
\medskip
Integration in das Betriebssystem
\begin{itemize}
\item
Flexibilitt 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\\
knnen nur 64\,kB adressieren
\item
Lsung: Segment- und Offset-Adressen
\item
Zustzlich: Lnge der Segmente einstellbar (Deskriptortabelle)\\
\textarrow\ Speicherschutz
\item
Konzept bernommen fr 32-Bit-Prozessoren\\
Physikalisch adressierbar: 4\,GB\\
\textarrow\ Segmente dienen nur noch dem Speicherschutz
\end{itemize}
\color{red}
\textarrow\ Anwendung fr Grafik: \emph{Grafik-Speichersegment(e)}
\end{frame}
\subsection{Virtuelle Speicherverwaltung}
\begin{frame}
\showsection
\vspace*{-\smallskipamount}
\showsubsection
\begin{itemize}
\item
zustzlich zur Segmentierung (nachgeschaltet)
\item
Aufteilung des Speichers in gleich groe 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 fr Grafik: \emph{Frame Buffer}
\end{itemize}
\end{frame}
\end{document}
......@@ -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}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment