aboutsummaryrefslogtreecommitdiff
path: root/course/figures
diff options
context:
space:
mode:
Diffstat (limited to 'course/figures')
-rw-r--r--course/figures/file-permissions.tex6
-rw-r--r--course/figures/file-permissions.tikz46
-rw-r--r--course/figures/stack.tex6
-rw-r--r--course/figures/stack.tikz23
4 files changed, 81 insertions, 0 deletions
diff --git a/course/figures/file-permissions.tex b/course/figures/file-permissions.tex
new file mode 100644
index 0000000..cb963a6
--- /dev/null
+++ b/course/figures/file-permissions.tex
@@ -0,0 +1,6 @@
+\documentclass[varwidth]{standalone}
+\usepackage{tikz}
+\usetikzlibrary{positioning, calc}
+\begin{document}
+\input{file-permissions.tikz}
+\end{document}
diff --git a/course/figures/file-permissions.tikz b/course/figures/file-permissions.tikz
new file mode 100644
index 0000000..8687355
--- /dev/null
+++ b/course/figures/file-permissions.tikz
@@ -0,0 +1,46 @@
+\begin{tikzpicture}
+
+\node (u) {\texttt{rwx}};
+\node[right=0pt of u] (g) {\texttt{rw-}};
+\node[right=0pt of g] (o) {\texttt{r-{}-}};
+
+\coordinate (repr) at (-0.8, 0);
+\node[anchor=east] at (repr |- u){symbolisch};
+
+\coordinate (brackets) at (0, 0.2);
+\coordinate (lbrackets) at (0, -0.2);
+\node[above = 1.5cm of u] (ul) {Owner};
+\draw (u.west) -- (u.west |- brackets) -- (u.east |- brackets) -- (u.east);
+\node[above = 1cm of g] (gl) {Group};
+\draw (g.west) -- (g.west |- brackets) -- (g.east |- brackets) -- (g.east);
+\node[above = 0.5cm of o] (ol) {Other};
+\draw (o.west) -- (o.west |- brackets) -- (o.east |- brackets) -- (o.east);
+
+\node[right = 1.5cm of g] (expl) {\texttt{rwx}};
+\draw[dashed] (expl.west) -- (expl.west |- lbrackets) -- (expl.east |- lbrackets) -- (expl.east);
+\draw[dashed] (expl.south) -- ($(expl.south) - (0, 0.15)$) -- ($(o.south) - (0, 0.15)$) -- (o.south);
+\draw[dashed] (o.west) -- (o.west |- lbrackets) -- (o.east |- lbrackets) -- (o.east);
+
+\node[anchor=west] (rexpl) at (expl.east |- ul) {\textbf{r}ead};
+\draw ($(expl.north) - (0.2, 0)$) |- (rexpl);
+\node[anchor=west] (wexpl) at (expl.east |- gl) {\textbf{w}rite};
+\draw (expl) |- (wexpl);
+\node[anchor=west] (xexpl) at (expl.east |- ol) {e\textbf{x}ecute};
+\draw ($(expl.north) + (0.2, 0)$) |- (xexpl);
+
+\node[above = of gl] {Berechtigungsklassen};
+
+\node[below = 0.2cm of u] (ub) {\texttt{111}};
+\node[below = 0.2cm of g] (gb) {\texttt{110}};
+\node[below = 0.2cm of o] (ob) {\texttt{100}};
+\node[anchor=east] at (repr |- ub){binär};
+
+\node[below = 0.2cm of ub] (uo) {\texttt{07}};
+\node[below = 0.2cm of gb] (go) {\texttt{06}};
+\node[below = 0.2cm of ob] (oo) {\texttt{04}};
+\node[anchor=east] at (repr |- uo){oktal};
+
+\draw (u) -- (ul);
+\draw (g) -- (gl);
+\draw (o) -- (ol);
+\end{tikzpicture}
diff --git a/course/figures/stack.tex b/course/figures/stack.tex
new file mode 100644
index 0000000..49b308f
--- /dev/null
+++ b/course/figures/stack.tex
@@ -0,0 +1,6 @@
+\documentclass[varwidth]{standalone}
+\usepackage{tikz}
+\usetikzlibrary{positioning, calc, decorations.pathreplacing, quotes, arrows.meta}
+\begin{document}
+\input{stack.tikz}
+\end{document}
diff --git a/course/figures/stack.tikz b/course/figures/stack.tikz
new file mode 100644
index 0000000..229952d
--- /dev/null
+++ b/course/figures/stack.tikz
@@ -0,0 +1,23 @@
+\begin{tikzpicture}[layer/.style={draw, minimum width=5cm, minimum height=1cm}]
+\node[layer, fill=gray] (h) {};
+\node[layer, above=0cm of h] (os) {Betriebssystem};
+\node[layer, above=0cm of os] (shell) {Nutzerschnittstelle};
+\node[layer, above=0cm of shell] (utils) {};
+
+\node[draw, circle, fill=gray!70, minimum size=0.5cm, above=0.25cm of shell, xshift=-1.2cm] (u1) {};
+\node[draw, circle, fill=gray!70, minimum size=0.5cm, above=0.25cm of shell] (u2) {};
+\node[draw, circle, fill=gray!70, minimum size=0.5cm, above=0.25cm of shell, xshift=1.2cm] (u3) {};
+
+\draw[Latex-] (u1) -- ($(u1) + (-1.8, 1)$) node[above, text width=1cm] {\small Webbrowser};
+\draw[Latex-] (u2) -- ($(u2) + (0, 1)$) node[above, align=center, text width=2cm] {\small E-Mail Programm};
+\draw[Latex-] (u3) -- ($(u3) + (0.75, 1)$) node[above, text width=1cm] {\small Mediaplayer};
+
+\draw[decoration={brace, raise=3pt}, decorate]
+ (h.north east) -- node[right, xshift=0.2cm] {Hardware} (h.south east);
+\draw[decoration={brace, raise=3pt}, decorate]
+ (utils.north east) -- node[right, xshift=0.2cm] {Software} (h.north east);
+\draw[decoration={brace, mirror, raise=3pt}, decorate]
+ (os.north west) -- node[left, xshift=-0.2cm] {kernel mode} (os.south west);
+\draw[decoration={brace, raise=3pt}, decorate]
+ (shell.south west) -- node[left, xshift=-0.2cm] {user mode} (utils.north west);
+\end{tikzpicture}