Prof. Dr.-Ing. Hans-Georg Eßer
Systemprogrammierung, Betriebssystem-Entwicklung
Studiengang Informatik, TH Nürnberg

ohm.hgesser.de


Navigation
Startseite
Impressum
Vorlesungsarchiv
BS-Entwicklung
mit Literate
Programming
WS 2015/16
Übersicht
Folien / Videos
Evaluation
Systempro-
grammierung
Linux/Unix
SS 2015
Übersicht
Folien / Audio
Evaluation
BS-Entwicklung
mit Literate
Programming
WS 2014/15
Übersicht
Folien / Videos
Evaluation
Systempro-
grammierung
Linux/Unix
SS 2014
Übersicht
Folien / Videos
Evaluation
BS-Entwicklung
mit Literate
Programming
WS 2013/14
Übersicht
Folien / Videos
Evaluation
Systempro-
grammierung
Linux/Unix
SS 2013
Übersicht
Folien / Videos
Evaluation
Systempro-
grammierung
Linux/Unix
SS 2012
Übersicht
Folien / Videos
Evaluation
Über den Dozenten
Homepage [extern]
Veröffentlichungen
Didaktik-Fortbildungen
Vorlesungen an der ...
  - FH Südwestfalen
  - Hochschule München
  - FOM Hochschule
  - Hochschule
    Albstadt-Sigmaringen
TH Nürnberg
Homepage
 

Systemprogrammierung (SS 2015)

Hier finden Sie Informationen und Material zu meiner Vorlesung "Systemprogrammierung Unix/Linux" an der TH Nürnberg.

Systemprogrammierung Unix/Linux (SS 2015)

Im Sommersemester 2015 halte ich Vorlesungen im Fach Systemprogrammierung Unix/Linux.

Die Veranstaltung wird als Block an folgenden Terminen im August 2015 angeboten:

  • 1. Block: 17.-21.08.2015, 08:30-13:30, Raum HQ 007
  • 2. Block: 24.-27.08.2015, 08:30-13:30, Raum HQ 007
  • Vorträge: 11.09., 15.09., 22.09. (Uhrzeiten s. u.), Raum HQ 013

(jeweils 6 Vorlesungsstunden pro Tag).

Stundenplanung: 

08:30-10:00 1. Block (90 Min.)
10:15-11:45 2. Block (90 Min.)
12:00-13:30 3. Block (90 Min.)

Unterlagen benötigen Sie zunächst keine; ich stelle im Laufe des Semesters die verwendeten Vorlesungsfolien und die Übungsblätter im PDF-Format zum Download zur Verfügung. Da wir wegen der hohen Teilnehmerzahl nicht den Linux-Praktikumsraum nutzen können, bringen Sie bitte ein eigenes Notebook mit. Ich stelle eine Entwicklungsumgebung (Linux) als virtuelle Maschine für VirtualBox zur Verfügung.

Als Prüfungsform finden Sie im Vorlesungsverzeichnis den Eintrag "Studienarbeit (semesterbegleitende Entwicklung eines Programms mit abschließendem Kurzvortrag)". Sie werden im Rahmen des Praktikums eine kleine systemnahe Anwendung unter Linux entwickeln und nach dem zweiten Block fertigstellen sowie kurz (nach inhaltlicher Absprache) über einen Aspekt Ihrer Lösung vortragen und Fragen dazu beantworten.

Inhalte

Die folgende Themenplanung ist provisorisch; die exakten Themen (die nicht genau deckungsgleich mit denen vom letzten Sommersemester sein werden) hängen von den Projektaufgaben ab. (Es wird neue Projektaufgaben geben, nicht die alten vom SS 2012, 2013 oder 2014.)

  1. Einleitung
  2. Einführung in C und die Linux-Shell Bash
  3. Software und Betriebssystem; System Calls
  4. Prozesse: fork, exec, wait
  5. Dateien: open, read, write, close
  1. Fortgeschrittene I/O (dup, pipe, mmap)
  2. Speicherverwaltung: malloc, free
  3. Nebenläufigkeit mit POSIX-Threads
  4. Projekt: HTTP-Proxy-Server

Aktuelles

[2015/09/07] Die Kurzvorträge finden in Raum HQ 013 statt (Termine siehe unten).
[2015/08/25] Der letzte reguläre Termin (Freitag, 28.08.) entfällt als Ausgleich für die zusätzlichen Vortragstermine im September. Bitte tragen Sie im Doodle (siehe E-Mail) die für Sie passenden Slots ein. Der Abgabetermin für die Projektarbeiten ist Sonntag, 06.09. (Mitternacht).
[2015/08/24] Die Ergebnisse der Evaluation sind online.
[2015/08/17] Auf Wunsch der Teilnehmer/innen haben wir Raum und Uhrzeit geändert: jeweils 08:30-13:30 Uhr im Raum HQ 007.
[2015/08/14] Die ersten Folien und Übungsblätter sind online.
[2015/01/21] Die Termine für das Semester stehen fest.

Material

Die Folien können Sie in zwei Varianten herunterladen: 1-up (eine Folie pro A4-Seite) und 4-up (vier Folien pro A4-Seite).

Foliensatz 1 2 3 4 5 6 7 8 9 10
1-up PDF PDF PDF PDF PDF PDF PDF PDF PDF PDF
4-up PDF PDF PDF PDF PDF PDF PDF PDF PDF PDF

Übung 1 2 3 4 5 6 7 8 9 Projekt 1 2 3
Übungsblatt PDF PDF PDF PDF PDF PDF PDF PDF --   PDF PDF PDF
Quellcode-Archiv tgz -- tgz tgz tgz tgz -- -- tgz *)   -- -- --
Musterlösungen -- tgz tgz tgz tgz tgz tgz tgz --   -- -- --

(Archive vom Typ .tgz entpacken Sie mit tar xzf archiv.tgz. Es gibt keine Übung 9, in ue09.tgz steckt Beispielcode zu Foliensatz 10 über Makefiles.)
Hier finden Sie die Tafelbilder (Fotos).

Tag Inhalte Audio
17.08.2015 Foliensatz 1 (1-22), Foliensatz 2 (1-59), Übung 1 a.wma, b.wma, c.wma, d.wma
18.08.2015 Übung 1 (Forts., mit Besprechung), Übung 2 (mit Besprechung),
Foliensatz 3 (1-38)
a.wma, b.wma, c.wma
19.08.2015 Übung 3 (mit Besprechung), Foliensatz 4 (1-26), Übung 4 a.wma, b.wma
20.08.2015 Übung 4 (Forts.; mit Besprechung), Foliensatz 5 (1-26), Übung 5 a.wma
21.08.2015 Übung 5 (Forts.; mit Besprechung), Foliensatz 6, Übung 6 a.wma
24.08.2015 Bespr. Übung 6, Foliensatz 7, Übung 7 a.wma, b.wma
25.08.2015 Bespr. Übung 7, Foliensatz 8, Übung 8 mit Bespr. a.wma, b.wma, c.wma, d.wma
26.08.2015 Foliensätze 9 und 10, Auftakt Projekt a.wma
27.08.2015Projekt
28.08.2015(findet nicht statt)
11.09.2015Vorträge (14:00-16:00; Raum HQ 013)
15.09.2015Vorträge (10:00-14:45; Raum HQ 013)
22.09.2015Vorträge (14:00-16:00; Raum HQ 013)

Literatur

  • Helmut Herold: Linux/Unix Systemprogrammierung, 2004, ISBN: 3827321603
  • Richard Stevens und Stephen A. Rago: Advanced Programming in the Unix Environment, ISBN: 0321525949 (2005), 0321637739 (neue Auflage 2013)
  • Elias Fischer: Das C-Tutorial
  • Ted Jensen: A Tutorial on Pointers and Arrays in C, 2003
  • Link zu Übung 8: Linux Programming Blog: "Threads and fork(): think twice before mixing them", online

Evaluation, MeinProf...

Ich evaluiere alle Veranstaltungen. Zu den verschiedenen Vorlesungen finden Sie die Auswertungen der Evaluationen auf einer separaten Seite.

Unabhängig von den regelmäßigen Evaluierungen würde ich mich freuen, wenn Sie meine Veranstaltung auch auf MeinProf.de bewerten; mein Profil finden Sie hier.

Hier ist der direkte Link zur Kursseite bei meinprof.de.


Copyright © 2012-2017 Hans-Georg Eßer. Letzte Änderung: Monday, 02-Jan-2023 09:52:18 CET
Anschrift: Technische Hochschule Nürnberg, Fakultät Informatik, Hohfederstr. 40, 90489 Nürnberg