Du befindest dich hier: FSI Informatik » Prüfungsfragen und Altklausuren » Hauptstudiumsprüfungen » Lehrstuhl 4 » bsezs-2013-03

BS+EZS 15ECTS
Prüfer: Fabian Scheler / Daniel Lohman

Atmosphäre: Lockeres Gespräch in entspannter Atmosphäre. Es liegen einige A3 Papiere für Notizen bereit, welche man auch in Eigeninitiative zum grafischen erklären nutzen kann. Zuerst wurde EZS dann BS (ohne Wahlmöglichkeit mit welchem angefangen wird) geprüft. EZS wurde von Fabian Scheler und BS von Daniel Lohman geprüft und der jeweils andere übernahm die Beisitzerrolle.

Zeitlich wurde 20 Minuten lang EZS und BS 10 Minuten lang geprüft.

Inhalt:

1. EZS

  • Welche Arten von Echtzeitsystemen gibt es? → weich, fest, harte EZS mit Erklärung
  • Worin Unterscheiden sich ereignis-/zeitgesteuerte EZS?
  • Welche Probleme treten bei ereignisgesteuerten EZS auf? → Rangfolge, Zugriffskontrolle, Prioumkehr
  • Wie kann man Rangfolge implementieren? → für ereignisgesteuert: Im Code direkt zusammen (Nachteil?), Nachfolger aktivieren (am Beispiel von Nachrichten welche Paketweise gesendet wird und erst bei kompletter Nachricht Nachfolger gestartet wird erklärt)… bei zeitgesteuert: durch Ablaufplanung
  • Welche Mechanismen zur Synchronisation gibt es? NPCS, PI, PC mit genauerer Erklärung und Vorteile/Nachteile
  • Insbesondere wurde genauer gefragt: PC wann tritt dort PI auf
  • Stack Based PC wie funktioniert es
  • Zusatzfrage welche Probleme treten auf wenn man Stack Based auf Mehrprozessorsystemen ausführt?

2. BS

  • Hello World Application von Kunden gewünscht was braucht man für ein BS → Ausgabedivicetreiber, für C-Code Stack vorbereiten, am ende von main cpu stoppen,…
  • Da die Anwendung dem Kunden zu schnell beendet ist soll eine Losung erarbeitet werden → Tastaturdruck muss vor Hello Ausgabe kommen: erste Idee pollen
  • Zu viel Energieverschwendung (Green IT) wie besser machen? Interrupt von Tastatur, main CPU idle
  • Welche Probleme können auftreten bei Zugriff aus Interrupthandler und Anwendung(mit Codebeispiel)? → LostWakeUp, LostUpdate bei Zugriff auf Buffer ( Code war in etwa interrupt: buf[i++] Anwendung: buf[- -i])
  • Dann sollten Lösungen dafür aufgezeigt werden um Lost's zu vermeiden
  • Zuletzt soll das System mit 2 CPU's arbeiten was kommt neu hinzu? → IPI
  • Interrupthandler findet nur auf der 2. CPU statt auf der ersten läuft die main. Wie synchronisiert man jetzt den Zugriff?
  • Letzte frage: In welcher Reihenfolge muss man Interrupt sperren und einen lock holen?