Fachprojekt „Systemsoftwaretechnik”: 00a -
Organisation
Fachprojekt
„Systemsoftwaretechnik”
00a - Organisation
Alexander Krause
07.04.2025
🚀 by Decker
Code of Conduct
Wir in der Fakultät für Informatik fördern ein motivierendes und chancengleiches Umfeld, in welchem wir gemeinsam lernen, lehren und forschen.
Diskriminierung und sexualisierte Gewalt werden nicht toleriert, intensiv verfolgt und im Rahmen der rechtlichen Möglichkeiten sanktioniert.
Zu inakzeptablem Verhalten zählt u.a. belästigendes, beleidigendes, diskriminierendes, einschüchterndes, abwertendes und erniedrigendes Verhalten und Sprache.
Ansprechpartner*innen
Wenn Sie Diskriminierung oder sexualisierte Gewalt erleben oder beobachten oder Fragen zum Thema haben, können Sie sich beispielsweise an folgende Stellen wenden:
Das Team und die Ziele
Wer sind wir und was haben wir vor?
Ihr könnt …
Euch eigenständig in große Softwareprojekte einarbeiten,
den Linux-Kern konfigurieren, bauen und auch erweitern,
ein Fehlermuster analysieren und
Bestandteile des Fachprojekts
Tafelübung
Einführung in die Themen
Hilfestellung zur Lösung
jeweils einmal zu jeder Aufgabe
Rechnerübung
= betreutes Programmieren
Bearbeitung der Aufgaben
bei Bedarf gibt es Hilfestellung
Abgabe der Aufgaben
Diskussion eurer Aufgabenlösungen
Wichtig: Es gibt keine Anwesenheitspflicht! 😀
Zeitplan für die Übungsaufgaben
Zeitplan für die Woche
Passt Euch der Termin für die zweite Rechnerübung?
Anonsten ist das Labor frei. 😀
Aufgaben
Aufgabe
Fünf Aufgabenblätter
Bearbeitung in Gruppen (2er oder 3er Gruppen)
Zwischen zwei und vier Wochen Bearbeitungszeit
Abgabe
Hochladen (und taggen) im Abgaberepository
Ihr sprecht mich selbstständig an
Vorstellen der Lösung in der Rechnerübung bis zum Stichtag
Aufgabenblatt 0
Erste Schritte mit und im Linux-Kern
Arbeitsumgebung einrichten, eigenes Repository einrichten
Linux-Kernel herunterladen, konfigurieren und den Kernel übersetzen
Einrichten einer Debian-Installation in einer VM mit dem selbst kompilierten Kernel
Bearbeitungszeit: ca. 2 Wochen
Aufgabenblatt 1
Debugging im Linux-Kern
Einführung in integrierte Debugging-Werkzeuge
Ausprobieren der einzelnen Werkzeuge anhand separater Beispiele
Programmcode des Kerns selbst korrigieren
Bearbeitungszeit: ca. 3 Wochen
Aufgabenblatt 2
Debugging im Linux-Kern – von außen
Eine Übersicht über die Werkzeuglandschaft
Detailierrtere Vorstellung ausgewählter Werkzeuge
Eigene Untersuchung des Linux-Kern
Bearbeitungszeit: ca. 3 Wochen
Aufgabenblatt 3
Der eigene Linux-Treiber
Einführung in die Struktur von Linux-Treibern
Implementierung eines (ohne Hardware)
Bearbeitungszeit: ca. 3 Wochen
Aufgabenblatt 4
Capture the flag
Startpunkt ist der Quellcode für fehlerhaften Linux-Kern
Ziel ist, alle Fehler zu finden und zu beheben
Bearbeitungszeit: ca. 4 Wochen
Arbeitsplätze
OH16, E07
15 Laborarbeitsplätze mit Desktoprechnern
Nutzeraccounts + Home via NFS an allen Rechnern
Schneller, lokaler Speicher unter /fs/scratch/XXX
Remote Zugriff aus dem Internet auf Eure Daten: mars.cs.tu-dortmund.de
Hat jede(r) eine E-Mail mit seinem/ihrem Account erhalten?
Arbeitsumgebung
Diese Werkzeuge werden Euch u.a. begegnen:
Git als dezentrale Versionsverwaltung für geschriebenen Code
Editor/IDE eurer Wahl
Programmiersprache C
Make
Dokumentation
GDB/kGDB
Bitte frischt ggf. nochmal Eure Kenntnisse auf! (siehe roter Text)
Materialien und Kommunikation
Oder einfach an meinem Büro (OH16, E02) klopfen. 😀
Fachprojekt „Systemsoftwaretechnik”