Universität Ulm, Fakultät für Mathematik und Wirtschaftswissenschaften, IAI, Vorlesungen, WS 2013/2014
Systemnahe Software I
im Wintersemester 2013/2014
Veranstalter Dr. Andreas F. Borchert mit Fabian Berstecher
TypVorlesung mit Übungen
Umfang 2 V + 2 Ü (6 LP)
Termin Termine:
Vorlesung: Dienstag 16-18 Uhr, H15
Übungen: Donnerstag 16-18 Uhr, H12
Beginn

Dienstag, den 15. Oktober, 16 Uhr im H15.

Übungen: Donnerstag, den 17. Oktober, 16 Uhr im H12

Die letzten Übungen finden am 6. Februar 2014 statt. Hier wird das letzte Übungsblatt besprochen und auf Fragen eingegangen. Die letzte Vorlesung ist am 10. Februar 2014 und dient der Vorbereitung auf die schriftliche Prüfung.

Prüfungen

Die Vorlesung ist für die Bachelor-Studiengänge Mathematik, Wirtschaftsmathematik, Wirtschaftswissenschaften, Informatik, Medieninformatik, Software Engineering, Physik, Wirtschaftsphysik, Informationssystemtechnik, Elektrotechnik und für die Master-Studiengänge Informatik und Medieninformatik vorgesehen (Technische und Systemnahe Informatik). Bei einer erfolgreichen Teilnahme an den Übungen und der schriftlichen Prüfung können sechs Leistungspunkte erworben werden.

Studierende der Bachelor-Studiengänge Physik und Wirtschaftsphysik, die noch nach der alten Studien- und Prüfungsordnung von 2010 studieren, können auch alternativ zwei Leistungspunkte erhalten, wenn sie sich im Uniportal rechtzeitig für Systemnahe Software I für Physiker eintragen. In diesem Falle werden die beiden Leistungspunkte vergeben, wenn bis zu Weihnachten die Teilnahme an den Übungen erfolgreich war. (Dazu gehört auch die erfolgreiche Teilnahme an einem Testat im Dezember.) Wichtig ist dabei zu bedenken, dass eine Registrierung für Systemnahe Software I für Physiker eine Teilnahme an der regulären 6-LP-Variante ausschließt. Die Option der 2-LP-Variante steht bei der neuen Ordnung von 2013 nicht mehr zur Verfügung, die alle Studierenden der Bachelor-Studiengänge Physik und Wirtschaftsphysik betrifft, die ihr Studium im WS 2013/2014 begonnen haben (siehe § 22).

Die Prüfung der 6-LP-Variante für die Bachelor- und Master-Studiengänge erfolgt schriftlich über 120 Minuten. Voraussetzung für die Zulassung zur schriftlichen Prüfung ist die erfolgreiche Teilnahme an den Übungen (Vorleistung). Als Hilfsmittel sind nur bis zu fünf handgeschriebene Zettel im A4-Format zugelassen. Die Termine der beiden offenen schriftlichen Prüfungen fallen auf den 17. Februar und 7. April 2014. Die Prüfung am 17. Februar findet von 8:00 bis 10:00 Uhr im H4/5 statt.

Die zweite Prüfung findet am 7. April 2014 von 14:00 bis 16:00 Uhr im H15 statt.

Zur Vorleistung sollte man sich bis spätestens zum 3. Februar anmelden. Dieser Termin gilt auch dann, wenn der Wunsch besteht, einen späteren Prüfungstermin wahrzunehmen. Die Vorleistung gilt als erfüllt, wenn mindestens 65 Übungspunkte erworben wurden (in den Übungsblättern 1 bis 12). Sobald die Vorleistung von mir bestätigt wird, ist eine Anmeldung zur schriftlichen Prüfung bis spätestens zum 13. Februar möglich.

Die Anmeldung im Uniportal für die 2-LP-Variante (Systemnahe Software I für Physiker) muss ebenfalls bis spätestens zum 3. Februar erfolgen. Beachten Sie bitte, dass Sie sich nicht gleichzeitig für die 2-LP- und die 6-LP-Variante anmelden dürfen.

Für die Vorbereitung auf die schriftliche Prüfung steht eine Probeklausur zur Verfügung, die am 11. Februar in der Vorlesung besprochen wird. Eine Beispiellösung dazu gibt es hier.

Inhalte Die Vorlesung dient der Einführung in die systemnahe Software. Unter systemnah wird die Nähe zur Prozessorarchitektur und den Schnittstellen des Betriebssystems verstanden. Ein tieferes Verständnis der systemnahen Programmierung ist insbesondere hilfreich bei der Entwicklung hochperformanter Software, wie sie beispielsweise bei numerischen Anwendungen benötigt wird. Zu den auf dieser Vorlesung aufbauenden Vorlesungen gehören u.a. Systemnahe Software II (im Sommersemester), Parallele Programmierung mit C++ und High Performance Computing. Im einzelnen werden u.a. folgende Punkte behandelt:
  • Einführung in die Programmiersprache C
  • Datentypen und ihre Repräsentierung
  • Dynamische Speicherverwaltung
  • Entwicklungswerkzeuge im Umfeld von C
  • Sicheres Programmieren mit C und Codierungsstandards (MISRA)
  • POSIX-Dateisysteme einschließlich der zugehörigen Schnittstellen
Skript

Begleitend zur Vorlesung gibt es ein Skript und die in der Vorlesung verwendeten Folien und Beispiele stehen ebenfalls zur Verfügung:

Voraussetzungen

Es werden einführende Vorlesungen in die praktische Informatik vorausgesetzt. Denkbar sind entweder Allgemeine Informatik I und II oder Praktische Informatik I und II.

Übungen

Bitte melden Sie sich zu den Übungen im SLC an.

Auf Grund der großen Teilnehmerzahl werden wir keine herkömmlichen Tutorien anbieten. Stattdessen reichen Sie ihre Lösungen in 2er bis 4er-Gruppen über unser Submission-System ein. Die Deadline für die Abgabe der Lösungen ist jeweils der Beginn der nächsten Übungsstunde. Ihre Einreichungen werden dann in der folgenden Woche von unseren Tutoren korrigiert und bepunktet.

Für Fragen und bei Problemen stehen unsere Tutoren in den Computer-Pools in O27/211+213 zur Verfügung. Die Sprechzeiten sind wie folgt:

Blatt Deadline Aufgabe Sonstiges Musterlösung
1 24.10.2013 [PDF] [hinweis.txt]
2 31.10.2013 [PDF] chuck-a-luck.c
3 07.11.2013 [PDF] heidenroeslein-orig.txt strophe.h heidenroeslein.c macros.h dreikreuze.c
4 14.11.2013 [PDF],Update 8.11.2013 [key.h] [secret.txt] [hinweis.txt] enigma.c crack.c
5 21.11.2013 [PDF] [berge] sortthings.c
6 28.11.2013 [PDF] [cities.txt] [states.txt] [alloc.c] [list.c] words.c
7 05.12.2013 [PDF] [enum.c] [union.c] [sscanf.c] fcalc.c
8 19.12.2013 [PDF] [testumgebung.pdf] [wettbewerb.pdf] [testumgebung.tar] my_alloc.c
9 09.01.2014 [PDF] [image.c] [hinweis.txt] mandelbrot.tar
10 16.01.2014 [PDF] [Bespiele] du_hogs.c
11 23.01.2014 [PDF] [Makefile] extract_urls.c
12 30.01.2014 [PDF] [Makefile] tr.c
13 unbewertet [PDF] [Makefile] bid.c
Weitere Materialien