Lecture: Systemnahe Programmierung

Course:

Exercises:

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 Nachklausur vom 25.3. wurden am 6.5. ins BASIS/POS-System eingetragen. Statistik/Graphiken zum Ausfall sind undefinedhier zu finden.

 

Eine Klausureinsicht findet am Mittwoch 13.05.2015 von 10.00h bis (max.) 10.30h im LBH in Raum II.08 statt.

Details zur Wiederholungs-Klausur am Mittwoch 25.3.2015 (vormittags) siehe unten. Bitte wie üblich aktuellen Studentenausweis und Lichtbildausweis zur Prüfung mitbringen.

 

Die Ergebnisse der Modulklausur vom 24.2. wurden am 2.3. ins BASIS/POS-System eingetragen. Statistik/Graphiken zum Ausfall sind undefinedhier zu finden.

Eine Klausureinsicht findet am Mittwoch 04.03.2015 von 9.30h bis (max.) 10.30h im LBH in Raum II.27/27a statt.

 

Eine endgültige Zulassungsliste ist nach der Vorführung von Übungsblatt 13 Anfang Februar 2015 undefinedhier zu finden (Stand 06.02.2015, vgl. auch Ankündigungen auf der Mailingliste).

  

Klausurtermine:

  • erste Prüfungsmöglichkeit: Dienstag 24.02.2015, vormittags, 9.30-11.00h (Dauer 90 min.), Uni-Hauptgebäude HS X
  • Wiederholungsprüfung: Mittwoch 25.03.2015, vormittags, 9.30-11.00h (Dauer 90 min.), Uni-Hauptgebäude HS X 
  • bitte bis spätestens 30.11.2014 ü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.

Bitte beachten Sie für Ihre strategische Planung der Teilnahme an den Prüfungen: Im Modul Systemnahe Programmierung wird es KEINEN dritten Prüfungstermin geben! Die zweite Prüfungsmöglichkeit deckt den Fall einer Krankheit beim ersten Termin ab.

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:

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 undefinedAdresse 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.

KapitelPDF-File

0. Allgemeine Informationen

undefinedFolien 1-20
C-Crash-Kurs für Java-ProgrammiererundefinedFolien 1-38

1. Netzwerkprogrammierung in C

1.1. Motivation
1.2. Netzwerkprogrammierung: Sockets & Co.

undefinedFolien 1-87
1.3. I/O-Multiplexing
1.4. Server-Strukturenu
1.5. Zusammenfassung
undefinedFolien 88-131
Go-Crash-Kurs für C- und Java-ProgrammiererundefinedFolien 1-40

2. Maschinenprogrammierung in Assembler

2.1. Motivation
2.2. Bezug zur Systemnahen Informatik (SS 2014)
2.3. Allgemeines zu 80x86 Assembler-Programmierung
2.4. Calling Conventions (aus C unter Linux)
2.5. Bezug zur 2-Adressmaschine (Systemnahe Informatik, SS 2014)
2.6. Assembler-Programmbeispiele
2.7. Socket-/Netzwerkprogrammierung in Assembler
2.8. Zusammenfassung

undefinedFolien 1-75
2. Ergänzung: Fall-StudienundefinedFolien 1-30
2. Ergänzung: SpeicherverwaltungundefinedFolien 1-18

3. Prozesse und Threads

3.1 Prozesse

3.2 Threads

3.3 IPC

 

undefinedFolien 1-54

undefinedFolien 1-142

undefinedFolien 1-114

 

 

Erledigte Ankündigungen - erledigte Termine

Die erste Vorlesung war am Dienstag 07.10.2014 um 14.30h in HS 1 in der Römerstr. 164.

Dort wurden alle weiteren Informationen zur Organisation von Vorlesung und Übungen gegeben (undefinedHinweise zum Übungsbetrieb HIER).

Der erste Übungszettel erscheint in der Woche vom 07.10.2014 (siehe unten), der eigentliche Übungsbetrieb beginnt dann in der (dritten) Woche ab Montag 20.10.2014.

Eintragung/Anmeldung zu den Übungen via TVS wurde nach der ersten Vorlesung am 07.10. geöffnet (ca. 18.15h) und auf der MAILINGLISTE angekündigt (undefinedTVS-Link hier). Die Registrierung bleibt offen bis Mo 13.10.2013 um 11.59h mittags. Die Gruppenzuordnung sowie die Zugangsdaten zu SVN werden am Dienstag 14.10.2014 (spätestens Mittwoch) per Mail bekannt gegeben. Biite beachtet im weiteren die Hinweise der Mail(s) an die MAILINGLISTE (mehr dazu siehe etwas tiefer).

 undefinedGruppenzuteilung der Sys-Prog Übungen (Stand 14.10.2014) - bitte die begleitende Mail auf der Mailingliste beachten.

Für späte Nachzügler scheint ein Einstieg jetzt (Stand 03.11.2014) nur noch schwer möglich.

Zu den Besonderheiten im Vorlesungs- und Übungsbetrieb um Weihnachten und den Jahreswechsel beachte die entsprechende Ankündigung auf der Mailingliste! Wir wünschen schöne Weihnachtstage und einen guten Rutsch ins neue Jahr 2015 !!!

Für die letzte Vorlesungswoche vor Weihnachten ist die Veröffentlichung einer vorläufigen Übungspunkteliste (Stand bis einschl. Übungsblatt 8) geplant ... undefinedHERE IT IS!