19513        
        
          Vorlesung        
      
      SoSe 14: ALP IV: Nichtsequentielle Programmierung
Marcel Kyas
Zusätzl. Angaben / Voraussetzungen
Zielgruppe
- Studierende im Bachelorstudiengang Informatik
 - Studierende im Hauptstudium des Diplomstudiengangs Informatik
 - Studierende im Lehramtsmaster (Großer Master, Zweitfach Informatik) können dieses Modul als Ersatz für "Gemeinsames Modul
 - Netzprogrammierung" zusammen mit dem Begleitpraktikum "Praktikum zu NSP (19513c) absolvieren.
 
Voraussetzungen
Kenntnisse aus ALP II, ALP III und MafI I
SchließenKommentar
Inhalt
Programmierung und Synchronisation nebenläufiger Prozesse, die auf gemeinsame Daten zugreifen oder über Nachrichten miteinander kommunizieren (Referenzsprache: Java):
- Nichtsequentielle Programme und Prozesse in ihren verschiedenen Ausprägungen (Prozess, Thread, ?), Nichtdeterminismus
 - Programmierung und Prozesse
 - Synchronisationsmechanismen wie Sperren, Monitore, Wachen, Ereignisse, Semaphore
 - Nebenläufigkeit und Objektorientierung
 - Ablaufsteuerung, Auswahlstrategien, Umgang mit Verklemmungen
 - Implementierung, Mehrprozessorsysteme, Koroutinen
 - Interaktion über Nachrichten
 
Literaturhinweise
- G.R. Andrews.: Foundations of multithreaded, parallel and distributed programming. Addison-Wesley, 2000.
 - G. Taubenfeld: Synchronisation Algorithms and Concurrent Programming. Prentice Hall, 2006.
 - M. Ben-Ari: Principles of Concurrent and Distributed Programming (Second Edition). Addison-Wesley, 2006.
 - B. Goetz, T. Peierls, J. Bloch, et.al.: Java Concurrency in Practice, Addison-Wesley, 2006.
 - Lea, D.: Concurrent Programming in Java (2. ed.). Addison-Wesley, 1999 Homepage http://lms.fu-berlin.de/
 
14 Termine
Regelmäßige Termine der Lehrveranstaltung
                  
                    
                      Mi, 16.04.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 23.04.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 30.04.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 07.05.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 14.05.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 21.05.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 28.05.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 04.06.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 11.06.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 18.06.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 25.06.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 02.07.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 09.07.2014 14:00 - 16:00                    
                        
    
    
                  
                  
                    
                      Mi, 16.07.2014 14:00 - 16:00                    
                        
    
    
                  
                
              
Inhalt
Programmierung und Synchronisation nebenläufiger Prozesse, die auf gemeinsame Daten zugreifen oder über Nachrichten miteinander kommunizieren (Referenzsprache: ... Lesen Sie weiter