From 4d0408c9ab9d4ac824cae18581c546de247e9acb Mon Sep 17 00:00:00 2001
From: Jan Altenberg <jan@jan-laptop.(none)>
Date: Fri, 30 Apr 2010 11:17:26 +0200
Subject: More app debugging handout fixes.

---
 application-devel/app-debugging/handout_app-debugging_de.tex | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

(limited to 'application-devel/app-debugging/handout_app-debugging_de.tex')

diff --git a/application-devel/app-debugging/handout_app-debugging_de.tex b/application-devel/app-debugging/handout_app-debugging_de.tex
index c73cdd0..a7e1fac 100644
--- a/application-devel/app-debugging/handout_app-debugging_de.tex
+++ b/application-devel/app-debugging/handout_app-debugging_de.tex
@@ -26,7 +26,7 @@ fstat(3, {st_mode=S_IFREG|0644, st_size=110532, ...}) = 0
 mmap(NULL, 110532, PROT_READ, MAP_PRIVATE, 3, 0) = 0x7f32457e3000
 close(3)                                = 0
 \end{lstlisting}
-Strace besitzt eine Vielzahl von Commandlineparametern. Die wichtigsten
+Strace besitzt eine Vielzahl von Commandline\-para\-metern. Die wichtigsten
 davon sind:\\
 \begin{center}
 \begin{tabular}{|c|p{5cm}|}
@@ -165,7 +165,7 @@ können hier verwendet werden:
 \hline
 \end{tabular}
 \end{center}
-Folgendes Beispiel verdeutlich die Analyse eines core-Files:
+Folgendes Beispiel verdeutlicht die Analyse eines core-Files:
 \begin{lstlisting}[language=c]
 	/* segfault.c */
 	#include <stdio.h>
@@ -266,7 +266,7 @@ Address   Size   Caller
 [...]
 \end{lstlisting}
 \subsection*{GLIBC: Hooks für malloc()}
-Neben mtrace() sieht die GLIBC noch Hooks for, um Callbacks einzuhängen,
+Neben mtrace() sieht die GLIBC noch Hooks vor, um Callbacks einzuhängen,
 die bei jedem Aufruf von malloc(), realloc(), free() oder memalign()
 aufgerufen werden. Hiermit steht eine sehr einfache Möglichkeit zur Verfügung,
 dynamische Speicherverwaltung individuell zu überwachen.\\
@@ -291,6 +291,9 @@ void *function (void *ptr, const void *caller)
 /* function prototype */
 void *function (size_t size, size_t alignment, const void *caller)
 \end{lstlisting}
+ACHTUNG: Bei der Verwendung von malloc() Hooks ist Vorsicht geboten! Jeglicher
+Aufruf, der seinerseits wiederrum einen malloc() Aufruf initiiert, führt
+innerhalb eines malloc() Hooks unvermeidlich zu einer Rekursion.
 \subsection*{libDUMA}
 Ein weiteres bekanntes Werkzeug zum Speicherdebugging ist eine Bibliothek
 mit dem Namen DUMA. Hierbei handelt sich um einen Fork der bekannten
-- 
cgit v1.2.3

