Übungen zu Systemprogrammierung 1 im SS 2014
Anfertigung, Abgabe und Bewertung der Übungsaufgaben
Soweit in der Aufgabenstellung nicht abweichend beschrieben, sollen alle
abgegebenen Programme portabel zur
SUSv4/POSIX.1-2008-Systemschnittstelle
sein und im Sprachumfang dem C-Standard
ISO C99
entsprechen. Alle Programme müssen mit folgenden Compileroptionen
übersetzen:
-std=c99 -pedantic -Wall -Werror -D_XOPEN_SOURCE=700
Die Abgabe erfolgt an den Rechnern im CIP-Pool mit dem Skript
/proj/i4sp1/bin/submit und muss vor dem Abgabetermin erfolgen. Eine
Abgabe per E-Mail oder USB-Stick ist grundsätzlich nicht möglich.
Zur Bearbeitung der Aufgaben wird Ihnen automatisch ein Projektverzeichnis
angelegt, nachdem Sie sich zu einer Übung angemeldet haben. Der Pfad
zu diesem Verzeichnis lautet /proj/i4sp1/LOGIN, wobei LOGIN
für Ihren Benutzernamen im CIP-Pool steht. Bitte bearbeiten Sie Ihre
Aufgaben in diesem Verzeichnis und verwalten Sie das Verzeichnis wie in
der ersten Aufgabenstellung beschrieben, da ansonsten das Abgabesystem
Ihre Lösung nicht finden kann.
Die abgegebenen Aufgaben werden von uns ausgedruckt und korrigiert. Die
korrigierten Ausdrucke werden in den Tafelübungen ausgehändigt. Die
Ergebnisse der Korrektur sind außerdem nach Login im
Waffel einsehbar.
Die Übungsaufgaben für das komplette Semester stehen grob fest. Allerdings
können sich bis zum Ausgabezeitpunkt noch Details an den Aufgaben
ändern.
Die verlinkten Aufgabenstellungen mit einem "Entwurf"-Wasserzeichen im
Hintergrund stellen lediglich eine Orientierungshilfe dar. Die endgültigen
Aufgabenstellungen werden spätestens am Ausgabetag verlinkt.
Nr. |
Titel |
Kurzbeschreibung |
Ausgabe |
Bearbeitungszeit (Werktage) |
2er-Gruppen |
Abzugebende Dateien |
Zusatzinfos |
1 |
lilo
|
Einfach verkettete Liste |
Montag, 14.04.2014 |
7 |
Nein |
lilo.c
|
|
2 |
wsort
|
Sortierprogramm ähnlich sort(1) |
Montag, 28.04.2014 |
6 |
Ja |
wsort.c
|
|
3 |
halde
|
Einfache dynamische Freispeicherverwaltung |
Montag, 05.05.2014 |
11 |
Ja |
halde.c, Makefile, test.c
|
|
4 |
clash
|
Kleine Shell mit Vorder- und Hintergrundprozessen |
Montag, 19.05.2014 |
10 |
Ja |
clash.c, plist.c, Makefile
|
plist API
|
5 |
crawl
|
Verzeichnisse, Rekursion |
Montag, 02.06.2014 |
9 |
Ja |
Makefile, argumentParser.c, crawl.c
|
|
6 |
piper
|
Threads, Semaphore |
Montag, 16.06.2014 |
10 |
Nein |
piper.c, sbuf.c
|
|