Modulbeschreibung

Parallel- und Netzwerkprogrammierung

Kurzzeichen:
M_PnProg
Unterrichtssprache:
Deutsch
ECTS-Credits:
4
Leitidee:
  • Grundlagen von Multi-Threading und Netzwerkprogrammierung kennen und anwenden können.
  • Entwurf und Implementation von parallelen und/oder verteilten Programmabläufen in Java
  • Socket Programmierschnittstelle zur Netzwerkprogrammierung in C++ und Java
  • Entwurfsmuster in der Parallel- und Netzwerkprogrammierung einsetzen können

Modulverantwortung:
Prof. Dr. Bläser Luc
Standort (angeboten):
Rapperswil-Jona
Zusätzliche Eingangskompetenzen:

Englisch, sicherer Umgang mit Eclipse und Eclipse CDT

 

Modultyp:
Wahlpflicht-Modul für Elektrotechnik STD_02(Keine Semesterempfehlung)Kategorie:Technik (E-et)
Wahlpflicht-Modul für Elektrotechnik STD_05(Keine Semesterempfehlung)Kategorie:Technik (E-et)
Wahlpflicht-Modul für Elektrotechnik STD_14(Keine Semesterempfehlung)Kategorie:Technik (E-et)
Wahl-Modul für Elektrotechnik U1_01(Keine Semesterempfehlung)
Wahlpflicht-Modul für Informatik STD_02(Empfohlenes Semester: 3)Kategorie:Grundlagen Informatik (I-g)
Wahlpflicht-Modul für Informatik STD_05(Empfohlenes Semester: 3)Kategorie:Grundlagen Informatik (I-g)
Wahlpflicht-Modul für Informatik STD_11(Empfohlenes Semester: 3)Kategorie:Grundlagen Informatik (I-g)
Wahl-Modul für Informatik U1_01(Empfohlenes Semester: 3)
Modulbewertung:
Note von 1 - 6

Leistungsnachweise und deren Gewichtung

Modulschlussprüfung:
Schriftliche Prüfung, 120 Minuten

Inhalte

Modul- und Lerninhalt:

Teil 1: Nebenläufige Programmsysteme

  • Einführung in nebenläufige Programmsysteme (Prozesse, Threads)
  • Multi-Threading mit Java
  • Semaphoren (Prinzip nach Dijkstra, Anwendungsarten Synchronisation u. gegenseitiger Ausschluss)
  • Standardproblemstellungen (Produzenten/Konsumenten, Leser/Schreiber, speisende Philosophen)
  • Abstraktion von Semaphoren (bedingte kritische Abschnitte, Monitore und Condition Variable)
  • Deadlock-Problematik
  • Entwurfsmuster für die Parallelprogrammierung

Teil 2: Netzwerkprogrammierung

 

  • Sockets - Grundlagen in C++ und Java 
  • Architektur und Patterns für verteilte Prozesssysteme mit Sockets