Department of Computer Science
Chair of Algorithm Engineering (Ls11)
Home Contact Deutsch English
menu
Günter Rudolph: Proseminar Multithreading-Techniken (MTT)

Multithreading-Techniken

(Proseminar 040705)

Sommersemester 2006

Prof. Dr. Günter Rudolph



Termin:    
Mittwoch 10:15 - 12:00 OH 14, R. 2.02
Beginn: Mittwoch, 05.04.2006


Vorbesprechung:

Dienstag, 31. Januar 2006, 16:15 Uhr, OH 14, R. 2.02


Beschreibung:

Unter Multitasking versteht man die Fähigkeit eines Betriebssystems mehr als ein Programm zur selben Zeit ausführen zu können. Unter Multithreading hingegen versteht man die Fähigkeit eines Betriebssystems mehrere Teile eines Programms, die sogenannten Threads, simultan ausführen zu können. Aktuelle Betriebssysteme vom Typ UNIX / LINUX sowie Microsoft besitzen diese Fähigkeiten.
Ohne Multithreading wären Dialoganwendungen (wie wir sie heute kennen) nicht vernünftig realisierbar: Wie kann ein Programm einerseits komplexe Berechnungen anstellen und gleichzeitig auf die Eingaben des Benutzers achten, um nahezu instantan darauf zu reagieren? Ein typisches und anschauliches Beispiel dafür sind 3D-Computer-Actionspiele. Aber auch Webserver im WWW sowie die Kommunikation in Netzwerken sind mit Multithreading-Techniken realisiert.
Darüber hinaus kann ein Programm, deren Ablauf in Threads aufgeteilt worden ist, deutlich schneller ablaufen, wenn mehrere Prozessoren zu Verfügung stehen und die Threads über diesen verteilt werden können. Dieses Thema gewinnt zur Zeit wieder an Aktualität, da viele Prozessorhersteller begonnen haben, mehrere Prozessorkerne auf einem Chip unterzubringen (Dualcore- bzw. Multicore-Prozessoren).
In diesem Proseminar sollen die Grundkonzepte des Multithreading vorgestellt und besprochen werden. Neben der formalen Darstellung werden sich die Teilnehmer/innen auch praktisch mit der Programmierung kleiner Beispiele beschäftigen.


Anforderungen:

DAP I und DAP II (SOPRA empfehlenswert)


Ablauf:

Pro Teilnehmer/in ist ein Thema zu bearbeiten. Erwartet wird:

  • Eine schriftliche Ausarbeitung (vor dem Vortrag).
  • Ein Vortrag von ca. 45 min. (zuzüglich Diskussion).
  • Teilnahme an allen Vorträgen des Proseminars.


Zeitplan:

31. Januar 2006: Vorbesprechung
bis zu 4 Wochen vor dem Vortragstermin: Gliederung / Skizze des Vortrags
bis zu 2 Wochen vor dem Vortragstermin: Vorversion des Vortrags (Folien)
SS 2006: Seminarvorträge und Abgabe der Ausarbeitungen
(Details während der Vorbesprechung)


Liste der Teilnehmer, Themen, Termine: download (aktualisiert: 10.05.2006)


Literatur zum Einstieg

  1. O. Neuendorf: Windows Multithreading mit C++ und C#. mitp-Verlag: Bonn 2003.
    ISBN 3-8266-0989-1
  2. M. Walmsley: Multi-Threaded Programming in C++. Springer: London 2000.
    ISBN 1-85233-146-1
  3. H. Kredel und A. Yoshida: Thread- und Netzwerk-Programmierung mit Java. 2. Auflage. dpunkt.verlag Heidelberg 2002.
    ISBN 3-89864-133-3
  4. B. Nichols u.a.: Pthreads Programming. O'Reilly: Sebastopol (CA) 1996.
    ISBN 1-56592-115-1



 
Imprint
<webmaster  ls11.cs.tu-dortmund.de>
The university does not accept liability for the contents of linked external internet sites