Ferdinand am Samstag, 13. Dezember 2008

Da sich in den letzten Tagen schon einige Leute bei mir gemeldet haben… Ich weiß dass ich in den letzten Wochen nicht zum Blogschreiben gekommen bin und möchte das gerne hiermit nachholen. Bitte verzeiht mir gleich zu Beginn, Form und Länge des Artikels. Ich habe hier mehr für mich geschrieben, um mich an die Vorlesungen in diesem Semester zu erinnern. Was neu für mich war, welche Fächer mir etwas gebracht haben und welche nicht.

Mein Semester ist vorbei. Das komplette Wintersemester, alle Prüfungen – wirklich alles. Dafür war es in der letzten Woche um so stressiger. Für alle Informatiker: Noten werden hier nach dem Prinzip SOPRA vergeben und damit ist eigentlich alles gesagt. Aber Schritt für Schritt. Ich habe ja im Moment wirklich Zeit für einen kompletten Artikel im Gegensatz zu Raimis Twitter Meldungen

Ich hatte mich schon vor einigen Wochen entschlossen aus verschiedenen Gründen ein paar von meinen Kursen abzulegen. Da war zum einen dieser interkulturelle Dialog mit Mexiko: Irgedwie bin ich mit der Art des Unterrichts nicht zurecht gekommen. Ich hatte ständig das Gefühl mehr über Mexiko zu lernen, wenn ich einfach jedes Wochenende irgendwo hinfahre und mir das Land einfach anschaue. Der zweite Kurs den ich abgelegt habe war Webprogrammieren. Hier war mir das Niveau einfach zu niedrig. Sorry das so direkt zu sagen, ich hatte hier auch wirklich gute Vorlesungen, aber Webprogrammieren kam mir wie Zeitverschwendung vor (beim php Einstieg wurde unter anderem ausführlich die syntax und Semantik einer for-SChleife erklärt, xhtml existierte für den Dozenten noch nicht …) Der dritte Kurs den ich abgewählt habe war „Transmision de Datos“. Dieser war eigentlich wirklich gut, aber leider für einem anderen Studiengang. Wie in Ulm auch, sind hier verschiedene Ingeneurswissenschaften unter einem Dach zusammengefasst und in meinen Unterlagen waren die Vorlesungen ausschließlich nach Instituten sortiert. Ich hatte mir da eine Vorlesung über WLAN und Bluetooth vorgestellt – Datenübertragung auf Protokollebene… Es ging dann eher darum was eine Manchaster kodierung ist und es war eine Regelvorlesung für Netzwerktechnikern im hören Semester (die meiste Zeit habe ich nur Bahnhof verstanden), also ganz nahe an der Physik.
Übrig blieben also nur „Betriebssysteme“ und „eingebettete Systeme“. Ich habe echt lange gezögert drei Kurse abzuwählen. Es blieb mir ja nur noch weniger als die Hälfte. Aber letztendlich war es mir dann doch lieber einige wenige Kurse auf gutem Niveau gut zu bestehen, als in anderen Kursen meine Zeit abzusitzen. (Ok: das Hauptargument gegen Webprogrammieren war: das es um 7:00 Uhr in der Früh war ;-)

Betriebssysteme hat mir insgesamt gut gefallen. In dieser Vorlesung haben wir viel über Simulationen gelernt. Am Ende des Semesters hatte ich zu allen wichtigen Teilen eines OS eine kleine Simulation geschrieben. Das sieht zum Beispiel beim virtuellem Speicher so aus: Eine Programmcode, den ich nicht verändern kann, erzeugt ein shared memory und ein paar Prozesse. Die Simulation sorgt dafür, dass die Processe aufgerufen werden (und sie brauchen natürlich mehr Speicher als sie im shared memomry haben). Die Aufgabe bestand darin eine kleine Speicherverwaltung zu schreiben (um zu wissen was schon belegt ist), nach einem Verdrängungsalgorithmus (Technische Infomatik 1) eine Seite auswählen, und diese in eine Textfile schrieben (Verdrängung auf die Festplatte… Und alle Prozesse haben Zugriff, wie einfach die Welt doch sein kann). Klar das so ne Simulation nur dann funktioniert, wenn das echte Betriebssytem keinen Ärger macht. Aber es ging auch nur um 48kB shared memory, bei 1 GB RAM.
Daneben gab es bei Betriebssystemen auch Klausuren, die bei den Mexikanern gefürchtet sind. Entsprechend habe ich mich auf sie vorbereitet. Am Ende hatte ich aber immer ausreichend Zeit mir die Fragen erst mal mit Wörterbuch zu übersetzten und Fabi und ich (die beiden Deutschen)waren die besten aus dem Kurs. Jaja – meine Prüfungsvorbereitungen habe ich während des Vordiploms perfektioniert ;-)

Eingebettete Systeme war das zweite Fach in dem ich rundum zufrieden war. Hier bestand die komplette Note aus mehreren praktischen Teilen und ein paar Fragen dazu. Als Hauptprojekt haben wir den Klingelton Generator von Nokia nachgebaut. Ich weiß, hört sich nicht sonderlich spektakulär an. Aber ich saß schon mal ewig dran, einen Play/Pause Knopf so zu programmieren, dass er jederzeit (also auch wenn gerade ein Ton gespielt wird) funktioniert. Sämtliche Programme laufen direkt auf dem Chip (also ohne OS) – wenn ein Programm abstürzt, funktioniert nichts anderes mehr. Ich habe ziemlich viel Code auf Interrupts (durch die Clock) umgeschrieben, da wir eine Woche vor der Abgabe noch ziemlich oft while-Schleifen als Delays mißbraucht hatten. Ansonsten Bestand die Arbeit in einem kleinen Parser und Editor für das Nokiaformat von Monotonen Klingeltönen – plus Treiber für alle Endgeräte die wir angesteuert haben.
Neben einer Vorlesung für embedded systems habe ich hier auch einen kleinen Programmierkurs für Fortgeschrittene bekommen. Zwar sehe ich die Kommentare von Leuten vor mir, die wie beim Guaveartikel schon vorher alles besser wussten (ich bin mir sicher das die Mehrheit ihre Unwissenheit nur nicht veröffentlichen wollte ;-))trotzdem: ich habe vor diesem Semster noch nie das Schlüsselwort volatile in einem Ⅽ Code benutzt (bzw. es war mir egal welche Variablen gerade im Stack und welche im Register sind), mir nie darüber Gedanken gemacht warum es besser ist for(;;) zu schreiben statt while(1)
Aber über manche Dinge macht man sich halt nur in der Not Gedanken… Und mein Register hatte halt nur acht Plätze.

   

Warum ich das ganze mit dem SOPRA verglichen habe: Irgendwie wird am Ende dann doch immer die Gruppenleistung benotet. Es gibt immer Leute im Team die absolut gar nicht tun geben wir ihnen doch das Pseudonym Duki. Außerdem diese wiederkehrende Fehleinschätzung wie viel Zeit so ein Projekt in Anspruch nimmt. Die letzte Woche habe ich mehr oder weniger durchgearbeitet. Montag 14 Stunden, Dienstag 14 Stunden. Mittwoch und Donnerstag 36 Stunden mit einer Stunde Schlaf im Computerraum. (Das ist mein neuer Rekord). Donnerstag bin ich um 23 Uhr nach Hause, am Freitag war ich um 9 : 00 wieder im Iteso – für die Abnahme des anderen Projektes. Erstaunlich ist dass man nach über 30 Stunden immer noch sinnvollen Code schreiben kann. Andere Basisfähigkeiten waren dafür nicht mehr so ausgeprägt. Wir haben es am Donnerstag Abend geschafft einen der Chips durchzuschmorren (Wahrscheinlich haben wir irgendwelche Kabel falsch verbunden, der Fehler war nicht mehr rekonstruierbar).

Zur Benotung: In beiden Fächer habe ich 10 von 10 Punkten…  In sofern bin ich froh, mich auf die richtigen Kurse konzetriert zu haben und im Ausland eine ordentliche Leistung als Ulmer Stundent geliefert zu haben ;-)

P.S.:

 –und morgen schreib ich irgendeinen lustigen Artikel‑

4 Kommentare zu “WS08”

  1. Du darfst abwählen?! Wenn ich einen Kurs geschmisse hätte wäre ich aus dem Land geworfen worden :|

  2. Klingt ja nach einem Wahnsinns Arbeitspensum verglichen mit Raimar…

    Achja, übertriebener Einsatz von durchgestrichenen Textpassagen nerven… ;-)

  3. find ich nicht ;)

  4. Programacion web realmente es mala para todos mi estimado, no se porque siguen ofreciendo esa materia en realidad

Trackbacks/Pingbacks

Schreibe einen Kommentar

Du kannst deinen Kommentar nach dem Absenden ändern.