/ Jana Völker

Das CAOS Projekt

""

Die Abbildung zeigt eine Auswahl der insgesamt 16 vorgestellten Projekte.

Im Zuge der Vorlesung Computer Architecture and Operating Systems – kurz CAOS – haben Bachelorstudierende der Informatik am Departement Mathematik und Informatik die Gelegenheit sich in hardwarenahe Projekte zu vertiefen.

Welche Kenntnisse vermittelt die Vorlesung?

In der Vorlesung von Prof. Florina Ciorba und Prof. Christian Tschudin erlernen Studierende zunächst einige hardwarenahe Grundlagen, wie beispielsweise den Aufbau von logischen Gattern, CPU-Typen, Assembler-Programmierung, Speicherhierarchie und Rechner-Peripherie. Im weiteren Verlauf kommen sofwarenahe Inhalte, wie der Aufbau von Betriebssystemen, Dateisysteme, Multitasking, bis zu DLL und Micro-Kernelarchitektur hinzu. Die Veranstaltung besteht aus einem theoretischen und einem praktischen Teil. Nebst einer Klausur arbeiten die Studierenden in Gruppen an einem selbstgewählten Projekt und präsentieren ihre Ergebnisse am Ende des Semesters. Im Rahmen dieser Gruppenarbeiten haben Studierende die Möglichkeit, sich bei der Auswahl ihrer Projekte etwas mehr auf Hardware zu konzentrieren, als in anderen Veranstaltungen, die sie im Laufe ihres Bachelorstudiums belegen werden. «Diese Vorlesung und insbesondere ihre Projektkomponente ist sehr wichtig, um ein umfassendes Verständnis von Computersystemen zu vermitteln und woraus sie bestehen - Computerarchitektur - und was sie zum Ticken bringt – Betriebssysteme» so Prof. Ciorba.

LED, CPU und Co.

Die Studierenden gestalten ihr Projekt von Grund auf. Das beginnt bei der theoretischen Konzeption, beinhaltet aber auch die Beschaffung der einzelnen Komponenten, die damit verbundene Recherche und natürlich den Zusammenbau aller Komponenten zum fertigen Exponat und das Schreiben des dazugehörigen Codes. Die Projektideen sind vielfältig: Von selbstgebauten CPUs über LED-Pingpong, -Würfel und -Anzeigeboards bis zu digitalen Instrumenten. Insgesamt wurden in diesem Jahr 16 Projekte vorgestellt.

«[Das Projekt] erlaubt einen ersten Blick über den ‘Programmierer-Tellerrand’ hinaus, und ermöglicht ein tieferes Verständnis für das Funktionieren von Computern» finden Flurina, Vera und Yasmin, die zusammen ein Theremin gebaut haben. «Das Projekt […] war ein absolutes Highlight im Studium, genauso wie im Semester vorher das Programmierprojekt. Das Arbeiten mit Arduinos, Verwenden von Lötstationen und elektrischen Komponenten in der eigenen Arbeitszeit war grossartig» findet auch Patrick, der mit seiner Gruppe einen LED-Würfel gebaut hat. Sich projektbezogen mit Hard- und Software von Grund auf zu befassen ist «wie lesen und schreiben lernen, man kann die Historie der Informatik nachvollziehen und es wird klar, wie man zum heutigen Stand ist» fügt ein weiterer Kommilitone hinzu, der mit seiner Gruppe eine CPU gebaut hat. Auch die hardwarenahe Programmierung mit C vermittelt wichtige Basics «es lohnt sich auf jeden Fall immer sich mit C, der Mutter aller Programmiersprachen, auseinander zu setzten, denn beinahe alles was wir heute kennen baut darauf auf. Ausserdem macht das Programmieren mit C einfach Spass» heisst es weiter.

Bis zur Abschlusspräsentation stehen die Studierenden vor verschiedenen Hürden. Gefragt sind gutes Zeit- und Krisenmanagement, Teamwork und die Fähigkeit Fehler zu finden und zu beheben. «Wir hatten glücklicherweise eine gut funktionierende Gruppendynamik, was sich in unserer Zusammenarbeit und Planung widerspiegelte. In der Gruppe am Projekt zu arbeiten und sich die Fragen, Ideen, Verzweiflung und Erfolgsmomente zu teilen, war meistens sehr belohnend und schenkte uns viele neue Einsichten im Themenbereich.» finden Flurina, Vera und Yasmin. Ausserdem mussten die Gruppen selbst libraries programmieren und implementieren, da die Verwendung bestehender libraries nicht vorgesehen ist. «Es gibt inzwischen vielleicht praktischere Lösungen aber einmal alles allein zu machen, vermittelt gewisse Grundlagen – die Informatik ist schliesslich historisch gewachsen und es baut vieles aufeinander auf.» wissen die Studierenden.

Ganz im Sinne der Parallelisierung wurden für die Abschlusspräsentationen diesmal gleich mehrere Räume und Kameras genutzt, um trotz der besonderen Umstände maximale Sicherheit und einen reibungslosen Ablauf zu gewährleisten.

Das Fazit

Das Projekt bietet die Möglichkeit «selber kreativ zu werden» und in den Übungen konnte «das Gelernte wirklich ausprobiert werden» finden Flurina, Vera und Yasmin. Patrick würde den Studierenden der kommenden Semester empfehlen «ein hardwarelastigeres Projekt anzustreben». «Computer Architecture ist einfach faszinierend! Ein paar Spannungsquellen und elektrische Signale - alles basiert auf logischen Gattern und es kann unglaublich viel daraus entstehen.» resümiert ein Kommilitone.

Ab dem Herbstsemester 2021 wird die Vorlesung in die separaten Veranstaltungen Computer Architecture bei Prof. Tschudin und Operating Systems bei Prof. Ciorba aufgeteilt.