Friedrich-Alexander-Universität Erlangen-Nürnberg  /   Technische Fakultät  /   Department Informatik

SPiC - Übungen im SS 2018

Allgemeines

Der Übungsbetrieb umfasst Tafel- und Rechnerübungen. Die Tafelübungen dienen der Vermittlung und Vertiefung des zur Bearbeitung der Übungsaufgaben notwendigen Wissens. In den Rechnerübungen sind die Arbeitsplätze des Rechnerraums für SPiC Studenten reserviert. In diesen Übungen sollen die Aufgaben bearbeitet werden, wobei in der Regel ein Betreuer zur Verfügung stehen wird um bei Bedarf Hilfestellung zu geben.

In den Aufgaben wird die Systemprogrammierung auf zwei verschiedenen Ebenen geübt: Zum Einen in Form eines Steuerprogrammes direkt auf Hardware eines AVR Mikrokontrollers, zum Anderen im (stark vereinfachten) Nachbau einiger gängiger Systemwerkzeuge auf einer Linux Systemschnittstelle.

Dokumentationsbereich

Hier finden Sie Verweise auf Datenblätter und andere für die Übungen interessante Dokumentation, sowie die Schnittstellen (API) -Dokumentation für die SPiCboard-Bibliothek.

Folien der Übungen

Kurzbeschreibung Übungswoche A4 (1x1) A5 (1x2) A6 (2x2)
1 Benutzerumgebung, Aufgabe 0, 1 16.04.2018 PDF PDF PDF
2 Optimierungen, Bitoperationen, Aufgabe 2 23.04.2018 PDF PDF PDF
3 Bitoperationen, Aufgabe 3 30.04.2018 PDF PDF PDF
4 Register, I/O-Ports, Module, Aufgabe 4 07.05.2018 PDF PDF PDF
Hands-On, Wiederholung 14.05.2018 pointer.c
5 Interrupts, Synchronisation, Stromsparmodi, Aufgabe 5 23.05.2018 PDF PDF PDF
6 Hands-on Aufgaben (Mikrocontroller) 30.05.2018 PDF PDF PDF
7 Linux-Umgebung, Fehlerbehandlung, Strings, Aufgabe 6 06.06.2018 PDF PDF PDF
8 Dateisystem, Aufgabe 7 13.06.2018 PDF PDF PDF
9 Prozesse, Signale, Aufgabe 8 20.06.2018 PDF PDF PDF
10 Threads, Hands-on Aufgaben (Linux) 04.07.2018 PDF PDF PDF

Übungsaufgaben

Nr. Titel Kurzbeschreibung Ausgabe Bearbeitungszeit
(in Tagen)
2er-Gruppen Abzugebende
Dateien
Punkte
1 blink Kennenlernen der Umgebung,
Implementierung eines LED-Blink-Programms
16.04.2018 7 Nein blink.c 3
2 snake C-Kontrollflusskonstrukte, Funktionen,
SPiCboard-Elemente
23.04.2018 7 Ja snake.c 12
3 spiel Bitoperationen 30.04.2018 7 Nein gesch.c 12
4 led-modul Zeiger, AVR I/O-Ports,
modulare Programmierung
07.05.2018 14 Ja led.c, test.c 14
5 ampel Interrupts, Powersave-Modi, Nebenläufigkeit,
Synchronisation, volatile
23.05.2018 14 Nein ampel.c 15
6 concat C unter Linux, Speicherallokation, Strings 06.06.2018 7 Nein concat.c 10
7 printdir POSIX, Strukturen 13.06.2018 7 Ja printdir.c 12
8 mish POSIX-Prozesse, Signale 20.06.2018 14 Ja mish.c 22

Abgabe und Bewertung der Übungsaufgaben

Die Abgabe erfolgt an den Rechnern im CIP-Pool, mit dem Skript /proj/i4spic/pub/abgabe und muss vor dem Abgabetermin erfolgen. Eine Abgabe nach dem Abgabetermin per eMail ist 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/i4spic/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 Abgabeprogramm 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 ausserdem nach Login im Waffel einsehbar.

Literaturempfehlungen

Zur Einführung in die Programmiersprache C haben wir in der Vorlesung die folgenden Bücher kurz vorgestellt:

  • C-Einführungsbuch "C als erste Programmiersprache": verfügbar bei Springerlink online und in /proj/i4gspic/pub/ (beides nur aus dem Uni-Netz)
  • Karlheinz Zeiner: Programmieren lernen mit C. Carl Hanser, 4. Auflage, 2000.
  • Steve Oualline: Practical C Programming. O'Reilly, 1991.
  • Peter Darnell, Philip Margolis: C: A Software Engineering Approach. Springer, 1991.
  • Brian Kernighan, Dennis Ritchie: The C Programming Language. Prentice Hall, 1988 (in der deutschen Übersetzung 1990 bei Hanser erschienen)

Zum Thema UNIX-Systemprogrammierung sind die folgenden Bücher empfehlenswert:

  • Helmut Herold: Linux/Unix Systemprogrammierung, Addison-Wesley, München, September 2004.
  • A. S. Tanenbaum, A. S. Woodhull: Operating Systems: Design And Implementation, Prentice Hall, 1997.
  • R. W. Stevens: Advanced Programming in the UNIX Environment. Addison-Wesley, 1992.

UnivIS Informationen

Nachstehende Übungstermine sind vorläufig und werden sich vermutlich noch ändern bzw. erweitert werden.

Rechnerübungen zu Systemnahe Programmierung in C (RÜ SPiC)

Verantwortliche/Verantwortlicher
Benedict Herzog, M. Sc.

Angaben
Übung
2 SWS, Sprache Deutsch

Studienfächer / Studienrichtungen
PF ME-BA 2
WPF M-BA 2
WPF TM-BA 2
WPF MT-BA ab 5
WPF MT-MA-BDV 2

Kurse
      
Mo  8:30 - 10:00  01.153-113
Kurs RÜ SPiC
Tobias Burgschneider
      
Mo  10:15 - 11:45  01.153-113
Kurs RÜ SPiC
Maximilian Ott
      
Mo  12:15 - 13:45  01.153-113
Kurs RÜ SPiC
Markus Lohmayer
      
Mo  14:15 - 15:45  01.153-113
Kurs RÜ SPiC
Anatoliy Cherepantsev
      
Di  12:15 - 13:45  01.153-113
Kurs RÜ SPiC
Fabian Benschuh
      
Mi  8:30 - 10:00  01.153-113
Jonas Neuser
      
Do  10:15 - 11:45  01.153-113
Kurs RÜ SPiC
Maxim Ritter von Onciul
      
Do  14:15 - 15:45  01.153-113
Kurs RÜ SPiC
Anatoliy Cherepantsev
      
Fr  8:30 - 10:00  01.153-113
Kurs RÜ SPiC
Rebecca Felsheim


Übungen zu Systemnahe Programmierung in C (Ü SPiC)

Verantwortliche/Verantwortlicher
Benedict Herzog, M. Sc.

Angaben
Übung
2 SWS, Sprache Deutsch

Studienfächer / Studienrichtungen
PF ME-BA 2
WPF M-BA 2
WPF TM-BA 2
WPF MT-BA ab 5
WPF MT-MA-BDV 2

Voraussetzungen / Organisatorisches
Details zur Organisation werden im Rahmen der ersten Vorlesung besprochen!
Im Studiengang EEI wird für die Übungen zu "Grundlagen der systemnahen Programmierung in C" ein geringerer Stoffumfang behandelt, so dass die Veranstaltung hierfür insges. 1 SWS umfasst.

Kurse
      
Mo  8:15 - 9:45  0.031-113
Kurs Ü SPiC, erwartete Teilnehmer: 23
Maxim Ritter von Onciul
      
Mo  10:15 - 11:45  0.154-115
Kurs Ü SPiC, erwartete Teilnehmer: 23
Jonas Neuser
      
Mo  12:15 - 13:45  0.151-115
Kurs Ü SPiC, erwartete Teilnehmer: 23
Tobias Burgschneider
      
Di  12:15 - 13:45  T 0.75
Kurs Ü SPiC, erwartete Teilnehmer: 23
N.N.
      
Di  14:15 - 15:45  0.151-115
Kurs Ü SPiC, erwartete Teilnehmer: 23
Anatoliy Cherepantsev
      
Mi  8:15 - 9:45  0.151-115
Kurs Ü SPiC, erwartete Teilnehmer: 23
Maximilian Ott
      
Mi  14:15 - 15:45  T 0.75
Kurs Ü SPiC, erwartete Teilnehmer: 23
N.N.
      
Mi  16:00 - 17:30  01.255-128
Kurs Ü SPiC, erwartete Teilnehmer: 23
Rebecca Felsheim
      
Do  10:15 - 11:45  01.255-128
Kurs Ü SPiC, erwartete Teilnehmer: 23
Markus Lohmayer
      
Do  10:15 - 11:45  00.152-113
Kurs Ü SPiC, erwartete Teilnehmer: 23
Volkmar Sieh
      
Do  14:15 - 15:45  01.255-128
Kurs Ü SPiC, erwartete Teilnehmer: 23
Fabian Benschuh