Intendierte Lernergebnisse
Verstehen der wichtigsten Konzepte von Betriebssystemen anhand praktischer Programmierbeispiele unter Linux.Prozesse/Threads und Interprozesskommunikation praktisch kennen und verstehen… anhand systemnaher Programmierung in CLinux-Kernel kennen und verstehen... Code lesen, verstehen, modifizieren, analysieren
Lehrmethodik
Übungsblätter: Präsentation und DiskussionKreuzellisteKlausur
Inhalt/e
Systemnahe Programmierung unter Linux um die wichtigsten Konzepte von Betriebssystemen praktisch zu erlernen. Der Kurs beginnt mit einer Einführung in die Programmiersprache C. Dieses Semester wird vor allem Interprozesskommunikation und Thread-Programmierung geübt. Kernel-Programmierung wird nur noch im Rahmen von Kernel-Modulen diskutiert. Der Kurs konzentriert sich auf Linux! Systemprogrammierung unter Windows oder Mac OS wird nicht behandelt.Systemnahe Programmierung in CBash-BefehleInterprozesskommunikation (IPC) mit verschiedenen Methoden (Pipes, Semaphoren, etc.)Thread-ProgrammierungProgrammierung von Kernel-Modulen unter Linux
Erwartete Vorkenntnisse
Vorkenntnisse in der Programmiersprache C oder gute Programmierkenntnisse sind von Vorteil.
Literatur
Andrew S. Tanenbaum, Herbert Bos, "Modern Operating Systems", 4th edition, Prentice Hall, 2015.Erich Ehses, Lutz Köhler, Horst Stenzel, Frank K. Victor, "Betriebssysteme: Ein Lehrbuch mit Übungen zur Systemprogrammierung in UNIX/LINUX", Pearson Studium, März 2005.