Universität Ulm, Fakultät für Mathematik und Wirtschaftswissenschaften, SAI, Vorlesungen, WS 2006/2007
Allgemeine Informatik III / Systemnahe Software I
im Wintersemester 2006/2007
Veranstalter Dr. Andreas F. Borchert mit Christian Ehrhardt
Typ Vorlesung mit Übungen
Umfang 2 V + 2 Ü (6 LP)
Zuordnung Praktische Informatik, Technische Informatik
Termin Vorlesung: Montag, 10 - 12 Uhr im H3
Übungen: Dienstag, 15 - 17 Uhr im H3
Beginn Die erste Vorlesung wird am Dienstag, den 17. Oktober, um 15 Uhr im H3 stattfinden (zu dem Termin, an dem in den darauffolgenden Wochen die Übungen stattfinden).

Die ersten Übungen werden am 24. Oktober um 15 Uhr im H3 stattfinden.

Scheinkriterien Zum Erwerb des Übungsscheins sind 50% der Übungspunkte notwendig.
Vorlesung Inhalt:
  1. Einführung in die Programmiersprache C
  2. Dynamische Speicherverwaltung
  3. Entwicklungswerkzeuge im Umfeld von C
  4. Dateisysteme
  5. Systemnahe Programmierung

Ziele:

  • Erwerb von Grundkenntnissen der Programmiersprache C, wobei ein besonderer Wert gelegt wird auf den Umgang mit der dynamischen Speicherverwaltung und mit den Zeigern in C. Ziel ist es auch, den versehentlichen Einbau von Sicherheitslücken zu vermeiden.
  • Erlernen des Umgangs mit den klassischen Entwicklungswerkzeugen unter UNIX wie beispielsweise make.
  • Verständnis der Abstraktion eines Dateisystems, einiger Implementierungen und praktische Erfahrungen mit der zugehörigen System-Schnittstelle.

Skript Skript (die Kapitel 13 bis 16 wurden dem alten Skript entnommen)

Vortragsfolien: 17. Oktober, 20. November, 27. November, 15. Januar, 22. Januar, 29. Januar, 5. Februar, 12. Februar.

Beispiele: Experimentierkasten zur am 11. Dezember vorgestellten Speicherverwaltung (Dabei handelt es sich um ein komprimiertes tar-Archiv, das mit tar xvfz 2006-12-11.alloc.tar.gz ausgepackt werden kann. Im ausgepackten Verzeichnis befindet sich eine Datei namens READ_ME mit weiteren Hinweisen. Hinweis: Ein Fehler wurde am 15. Dezember entfernt.)

Schriftliche Prüfung Diejenigen Teilnehmer, die entsprechend der Studien- und Prüfungsordnung ihres Studiengangs eine Prüfung am Ende des Semesters benötigen, können sich für folgenden Termin beim Studiensekretariat verbindlich anmelden. Das betrifft die Studiengänge Bachelor und Master in Informatik und die Diplom-Studiengänge Elektro-Technik und Informationstechnologie. Ohne diese Anmeldung ist keine Teilnahme möglich.

Termin: Mittwoch, 14. Februar, 16:00 Uhr (s.t.!) in der Helmholtzstraße 18, Zimmer E60.

Die Prüfung geht über 120 Minuten. Schriftliche Unterlagen (Skript, Übungsmaterialien etc) sind als Hilfsmittel zugelassen.

Diejenigen Teilnehmer, die aus besonderen Gründen einen benoteten Schein benötigen, mögen sich bitte unter Angabe der Gründe an mich per E-Mail wenden. In diesen Ausnahmefällen ist dann eine Teilname auch ohne Anmeldung durch das Studiensekretariat möglich.

Notenskala der Klausur

Einen Lösungsvorschlag findet man hier, das eigene Ergebnis kann in slc erfragt werden.
PunkteNoteHistogramm
90-781.0XX
77-741.3X
73-701.7
69-662.0X
65-622.3X
61-582.7
57-543.0
53-503.3XXX
49-463.7
46-404.0XX
0-395.0XXX

Am Donnerstag, den 22. Februar besteht von 10-12h die Möglichkeit, die eigene Klausur in der einzusehen. (Helmholtzstr. 18, Raum E23)

Wettbewerb Im Zusammenhang mit Blatt 9 gibt es einen Wettbewerb mit attraktiven Preisen für die erfolgreichsten Teilnehmer. Für besonders erwähnenswerte und/oder besonders originelle Lösungen wird es ggf. noch einige kleinere Sonderpreise geben. Hier gibt es Informationen zum aktuellen Stand.
Übungen Bitte melden Sie sich zu den Übungen in SLC an.
Blatt Punkte Abgabetermin Angabe Sonstiges Lösung
1 10 31. Oktober 2006 [HTML], [PS]   stein.c, kgv.c,
2 10 7. November 2006 [HTML], [PS] que_sera.orig.c, strophe.h

The Man Who Knew Too Much in der Internet Movie Database

Lösung
3 10 14. November 2006 [HTML], [PS] Beispieltexte, Blum-Blum-Shub in der Wikipedia blum.c
4 10 21. November 2006 [HTML], [PS] Die Integerwerte der Unicode-Zeichen des griechischen Alphabets,
Das griechische Alphabet in UTF-8,
UTF-8 Definition (RFC 3629),
Unicode Charts
Lösung
5 10 28. November 2006 [HTML], [PS] Pell'sche Gleichung in Mathworld Lösung
6 10 5. Dezember 2006 [HTML], [PS] Beispiel Eingaben, Passende Ausgaben BFS.c
7 10 12. Dezember 2006 [HTML], [PS]   SCS.c
8 10 19. Dezember 2006 [HTML], [PS] Beispiele, Quadtrees in Wikipedia quadtree.c
9 20 16. Januar 2007 [HTML], [PS] Testumgebung, Seite zum Wettbewerb, Die Preise Sehr kurze Lösung (Martin Hasch),
Lösung 1 (normales Verfahren),
Lösung 2 (alternatives Verfahren),
10 10 23. Januar 2007 [HTML], [PS]   Lösung
11 10 30. Januar 2007 [HTML], [PS] Hinweis: Die Funktion getopt verträgt sich nicht mit -std=c99. Statt dessen empfiehlt sich die Verwendung von -std=gnu99. sumit.c
12 10 6. Februar 2007 [HTML], [PS]   archive.c
13 10 13. Februar 2007 [HTML], [PS]   Lösung
Materialien
Hilfsmittel