Lecture: Systemnahe Programmierung
Course:
- Responsible: Prof. Dr. Michael Meier, Dr. Matthias Frank
- Dates: Tue. 14:30 to 16:00, weekly, AVZ III / Römerstr. 164 - HS 1
- Course number:
Exercises:
- Responsible: Dr. Matthias Frank, Matthias Wübbeling, Raphael Ernst
- Dates: n.n.
- Course number:
Other:
- Term: Bachelor Computer Science, Bachelor Lehramt
- Requirements:
- Faculty: BA-INF 034/129
- Effort: 2L + 2E / 6CP
Ankündigungen - wichtige Termine
(erledigte Ankündigungen und erledigte Termine siehe ganz unten)
Die Ergebnisse der Wiederholungsklausur vom 27.3. wurden am 17.4. ins BASIS/POS-System eingetragen. Statistik/Graphiken zum Ausfall sind hier zu finden.
Eine Klausureinsicht findet am Freitag 25.04.2014 von 12.30h bis 13.15h im LBH in Raum II.27/27a statt.
Wiederholungsklausur am Donnerstag 27.03.2014, 9.30-11.00h, Hörsaal 1, Römerstr. 164
Die Ergebnisse der Modulklausur vom 14.2. wurden am 13.3. ins BASIS/POS-System eingetragen. Statistik/Graphiken zum Ausfall sind hier zu finden.
Eine Klausureinsicht findet am Mittwoch 19.03.2014 von 12.30h bis 13.15h im LBH in Raum II.27/27a statt.
Modulklausur am Freitag 14.02.2014, 9.30-11.00h:- Nachnamen Buchstaben A-L in Hörsaal 1, Römerstr. 164- Nachnamen Buchstaben M-Z in Hörsaal 2, Römerstr. 164
Zulassungsliste zu den Modulprüfungen (Stand 03.02.2014), die endgültige Zulassung ist über das BASIS/POS-System einzusehen - bitte die begleitende Mail auf der Mailingliste beachten.
Zwischenstand der erreichten Übungspunkte (bis einschließlich Übungsblatt 7, Stand 19.12.2013) - bitte die begleitende Mail auf der Mailingliste beachten.
Gruppenzuteilung der Sys-Prog Übungen (Update 23.10.2013) - bitte die begleitende Mail auf der Mailingliste beachten.
Für die letzte Vorlesungswoche vor Weihnachten ist die Veröffentlichung einer vorläufigen Zulassungsliste (Stand bis einschl. Übungsblatt 7) geplant.
Eine endgültige Zulassungsliste wird Ende Januar/Anfang Februar 2014 hier veröffentlicht.
Klausurtermine:
- erste Prüfungsmöglichkeit: Freitag 14.02.2014, 9.30-11.00h (Dauer 90 min.), vormittags, Römerstr. 164 HS 1+2
- Wiederholungsprüfung: Donnerstag 27.03.2014, 9.30-11.00h (Dauer 90 min.), vormittags, Römerstr. 164 HS 1
- bitte bis spätestens 30.11.2013 über BASIS/POS zur Teilnahme an der Prüfung anmelden
Krankmeldungen für Prüfungstermine werden nur als Original und mit dem Formblatt "Anlage zur Krankmeldung" akzeptiert und sind spätestens drei Tage nach dem Prüfungstermin im Prüfungsbüro Informatik einzureichen. Zusätzlich sind die Organisatoren der Systemnahen Programmierung per E-Mail über die eingereichte Krankmeldung zu informieren.
Programmiersprache C
Im Bereich der systemnahen Programmierung wird als Programmiersprache häufig kein objektorientiertes Java oder C++ verwendet, sondern C. Um die Vorlesung erfolgreich absolvieren zu können, ist die Kenntnis von C sehr wichtig. Aus dem Modul BA-INF 014 "Algorithmisches Denken und imperative Programmierung" (aka ADiP) sind Konzepte einer imperativen Programmiersprache bekannt (im besten Falle wurde C behandelt).
Davon unabhängig wird es in der zweiten Vorlesungswoche einen sehr kurzen Überblick über die wichtigsten Konzepte von C geben - dies kann aber auf keinen Fall eine praktische (tiefere) Einarbeitung in C ersetzen!
Der Klassiker über die Programmiersprache C ist nach wie vor das Buch von Brian W. Kernighan und Dennis Ritchie: The C Programming Language. Für Teilnehmer/innen mit Vorkenntnissen und Erfahrungen mit Java könnten die folgenden Links hilfreich sein:
- http://www.comp.lancs.ac.uk/~ss/java2c/: Kurze Einführung in C für Java-Programmierer
- http://www.cs.princeton.edu/introcs/faq/c2java.html: Tabellarische Gegenüberstellung von Java und C
Mailingliste
Für die Vorlesung Systemnahe Programmierung wurde eine Mailingliste eingerichtet, über die aktuelle Informationen zur Vorlesung und den Übungen verbreitet werden sollen. Die Anmeldung ist unter dieser Adresse möglich. Es werden nur Anmeldungen von Studenten akzeptiert, die auch für die Übungen angemeldet sind. Die Mails der Mailingliste werden archiviert.
Folien und Präsentationen
Von den Studentenrechnern des Instituts aus sind die Dateien frei zugänglich (ebenso per Verbindung über VPN); Zugriffe von anderen Rechnern erfordern ein Paßwort, welches in der ersten Vorlesung bekannt gegeben wird/wurde. Bitte erfragen Sie diese Zugangsdaten nicht per E-Mail! Nachzügler erfahren bei Bedarf die Zugangsdaten von Kommilitonen, den Dozenten oder den Tutoren.
Kapitel | PDF-File |
---|---|
0. Allgemeine Informationen | Folien 1-19 |
C-Crash-Kurs für Java-Programmierer | Folien 1-37 |
1. Netzwerkprogrammierung in C1.1. Motivation | |
1.3. I/O-Multiplexing | Folien 88-131 |
2. Maschinenprogrammierung in Assembler2.1. Motivation | Folien 1-75 |
2. Ergänzung: Fall-Studien | Folien-Update (vgl. Folie 9) |
2. Ergänzung: Speicherverwaltung | Folien 1-18 |
3. Fortgeschrittene Konzepte der Systemprogrammierung3.1. Processes | Folien 1-46 |
3.2. Threads 3.2.1. Fundamentals 3.2.2. Threads in Linux | Folien 1-40 |
3.2.3. Thread Synchronization 3.2.4. Deadlocks 3.2.5. Important Threading Mechanisms | Folien 41-108 |
3.3. Interprocess Communication IPC 3.3.1. Basics 3.3.2. Files 3.3.3. Message Passing 3.3.4. Shared Memory 3.3.5. Semaphores 3.3.6. Signals | (beide neu am 4.2.2014) |
Übungszettel
Hinweise zum Übungsbetrieb (erscheinen nach Beginn des Vorlesungsbetriebs)
Die PDF-Dateien können mit dem Acrobat Reader angesehen und ausgedruckt werden. Das Programm ist kostenlos erhältlich und ist auf fast allen Rechnern des Instituts installiert.
Erledigte Ankündigungen - erledigte Termine
Die erste Vorlesung war am Dienstag 15.10.2013 um 14.30h in HS 1 in der Römerstr. 164.
Dort wurden alle weiteren Informationen zur Organisation von Vorlesung und Übungen gegeben (Hinweise zum Übungsbetrieb HIER).
Der erste Übungszettel erscheint in der Woche vom 15.10.2013 (siehe unten), der eigentliche Übungsbetrieb beginnt dann in der (dritten) Woche ab Montag 28.10.2013.
Eintragung/Anmeldung zu den Übungen via TVS wird nach der ersten Vorlesung am 15.10. geöffnet (Link hier). Die Registrierung bleibt (verlängert) offen bis Di 22.10.2013 um 08.59h morgens. Die Gruppenzuordnung sowie die Zugangsdaten zu SVN werden am Dienstag 22.10.2013 per Mail bekannt gegeben. Biite beachtet im weiteren die Hinweise der Mail(s) an die Mailingliste.
Für späte Nachzügler scheint ein Einstieg jetzt (Stand 18.11.2013) nicht mehr sinnvoll möglich.