Zum Inhalt springen
Sitzung: Jeden Freitag in der Vorlesungszeit ab 16 Uhr c. t. im MAR 0.005. In der vorlesungsfreien Zeit unregelmäßig (Jemensch da?). Macht mit!

Informatik 4 (StuPO90)/Gedächtnisprotokoll Klausur SoSe 2007: Unterschied zwischen den Versionen

Aus FreitagsrundenWiki
 
(13 dazwischenliegende Versionen von 5 Benutzern werden nicht angezeigt)
Zeile 13: Zeile 13:
** Grund: Nicht unterbrechbarer Zeitraum mötlichst klein, damit keine/wenige Interrupts verloren gehen.
** Grund: Nicht unterbrechbarer Zeitraum mötlichst klein, damit keine/wenige Interrupts verloren gehen.


<br>


== Aufgabe 2: Assembler (15 Punkte) ==
== Aufgabe 2: Assembler (12 Punkte) ==
Programmieren sie in Assembler die Funktion _binom(int *a, int *b)
Programmieren sie in Assembler die Funktion _binom(int *a, int *b) (10 Punkte)


*Berechne a²+2ab+b² (!) und speichere das ergebnis in *b und gib 0 bei geglückter Operation zurück.
*Berechne a²+2ab+b² (!) und speichere das ergebnis in *b und gib 0 bei geglückter Operation zurück.
Zeile 23: Zeile 22:
**Falls das passiert gib ebenfalls -1 zurück.(Rückgaben erfolgen wie üblich im Register D0)
**Falls das passiert gib ebenfalls -1 zurück.(Rückgaben erfolgen wie üblich im Register D0)
*Schreibe desweiteren eine Subroutine, die das Quadrat einer Zahl berechnet (geht in 2 Zeilen).
*Schreibe desweiteren eine Subroutine, die das Quadrat einer Zahl berechnet (geht in 2 Zeilen).
<br>
 
Gib den Stack nach dem Aufruf der Subroutine und der Sicherung der Register an (2 Punkte)


== Aufgabe 3: Semaphoren (10 Punkte) ==
== Aufgabe 3: Semaphoren (10 Punkte) ==
Elefanten und Mäuse gehen auf ein Schiff.
Elefanten und Mäuse gehen auf ein Schiff.
Dabei sollen immer möglichst doppelt so viele Möuse wie Elefanten auf dem Schiff sein.
Dabei sollen immer möglichst doppelt so viele Mäuse wie Elefanten auf dem Schiff sein.
Nur eine Differenz von 1 ist erlaubt..
Nur eine Differenz von 1 ist erlaubt..
<br>


= Aufgabe 4: Monitore (12 Punkte) =
sei n die Anzahl der Elefanten und m die Anzahl der Mäuse.
 
wenn n Elefanten auf dem Schiff sind, dann muss beachtet werden:
 
*wenn m > 2n ist, dann muss eine Maus an Bord kommen
*wenn m < 2n ist, dann muss ein Elefant an Bord kommen
*wenn m = 2n ist, dann muss man schauen:
*um das Gleichgewicht zu erhalten können an Bord kommen:
:Elefant, Maus, Maus oder Maus, Elefant, Maus, damit keine Verletzung der ersten 2 Punkte zustandekommt.
 
die Aufgabe hat echt reingehauen
 
== Aufgabe 4: Monitore (13 Punkte) ==
In einem Schwimmbad gibt es ein Schwimmbecken.
In einem Schwimmbad gibt es ein Schwimmbecken.
Es gibt Turmspringer, Schwimmer und den Bademeister.
Es gibt Turmspringer, Schwimmer und den Bademeister.
Zeile 41: Zeile 52:
*Der Bademeister darf erst Feierabend machen (weggehen), wenn kein Schwimmer mehr im Becken ist
*Der Bademeister darf erst Feierabend machen (weggehen), wenn kein Schwimmer mehr im Becken ist
*Der Bademeister darf insbesondere auch dann gehen, wenn noch Schwimmer am Beckenrand warten (voraussgesetzt, es befindet sich kein Schwimmer im Becken).
*Der Bademeister darf insbesondere auch dann gehen, wenn noch Schwimmer am Beckenrand warten (voraussgesetzt, es befindet sich kein Schwimmer im Becken).
<br>
*Es kann davon ausgegangen werden, dass es maximal einen Bademeister gibt.
Irgendwie komme ich nicht auf 50 Punkte :>
 
== Aufgabe 5: Betriebsmittelvergabe (5 Punkte) ==
 
Die Betriebsmittel werden in der Aufgabe nach preämptiver Planung nach Laufzeit
vergeben, gegeben sind folgende Prozesse:
 
[[Bild:Info4-ss2007-5.png]]
 
Geben Sie für die jewelige Zeit die Vergabereihenfolge für die Prozesse an:
 
<nowiki>
-----------------------------------
1 2 3 4 5 6 7 8 9 10
</nowiki>
Geben Sie zusätzlich die zeitlichen Verläufe der Inhalte der Warte-Queues an
und berechnen Sie die mittlere Wartezeit.
 
 
 
== Siehe auch ==
 
[[Informatik 3/Gedächtnisprotokoll Klausur SS07]]
 
[[Informatik B/Gedächtnisprotokoll mündliche Nachprüfung SS07]]

Aktuelle Version vom 28. Februar 2008, 20:53 Uhr

Aufgabe 1: Kurze Fragen (10 Punkte)

  • Unterschiede und Vorteile von synchroner und asynchroner Nachrichtenübertragung?
    • blockierend / nicht blockieren vs. Nachricht geht evtl. verloren
  • Vorteile von leichtgewichtigen Prozessen
    • schnellerer Prozesswechsel, da gemeinsamer Adressraum
    • einfache Implementierung
    • eigener Scheduler ?
  • Erkläre die zwei Stufen von Interruptbehandlung. Grund der Zweistufigkeit?
    • Stufe 1: nicht unterbrechbar, nur nötigste Behandlung (speichern).
    • Stufe 2: abschließende Behandlung des interrupts...
    • Grund: Nicht unterbrechbarer Zeitraum mötlichst klein, damit keine/wenige Interrupts verloren gehen.


Aufgabe 2: Assembler (12 Punkte)

Programmieren sie in Assembler die Funktion _binom(int *a, int *b) (10 Punkte)

  • Berechne a²+2ab+b² (!) und speichere das ergebnis in *b und gib 0 bei geglückter Operation zurück.
  • Falls a<0 oder a>32767 oder b>32767 oder b<-32768 gib sofort -1 zurück.
  • Bei der addition der werte a², b² und 2ab kann es zum Überlauf kommen.
    • Falls das passiert gib ebenfalls -1 zurück.(Rückgaben erfolgen wie üblich im Register D0)
  • Schreibe desweiteren eine Subroutine, die das Quadrat einer Zahl berechnet (geht in 2 Zeilen).

Gib den Stack nach dem Aufruf der Subroutine und der Sicherung der Register an (2 Punkte)

Aufgabe 3: Semaphoren (10 Punkte)

Elefanten und Mäuse gehen auf ein Schiff. Dabei sollen immer möglichst doppelt so viele Mäuse wie Elefanten auf dem Schiff sein. Nur eine Differenz von 1 ist erlaubt..

sei n die Anzahl der Elefanten und m die Anzahl der Mäuse.

wenn n Elefanten auf dem Schiff sind, dann muss beachtet werden:

  • wenn m > 2n ist, dann muss eine Maus an Bord kommen
  • wenn m < 2n ist, dann muss ein Elefant an Bord kommen
  • wenn m = 2n ist, dann muss man schauen:
  • um das Gleichgewicht zu erhalten können an Bord kommen:
Elefant, Maus, Maus oder Maus, Elefant, Maus, damit keine Verletzung der ersten 2 Punkte zustandekommt.

die Aufgabe hat echt reingehauen

Aufgabe 4: Monitore (13 Punkte)

In einem Schwimmbad gibt es ein Schwimmbecken. Es gibt Turmspringer, Schwimmer und den Bademeister. Synchronisiere mit den Folgenden Regeln über Monitore:

  • Turmspringer und Schwimmer dürfen das Schwimmbecken nicht gleichzeitig benutzen.
  • Wenn kein Bademeister anwesend ist, darf kein Schwimmer ins Becken.
  • Turmspringer dürfen auch ins Becken springen, wenn Schwimmer warten, weil kein Bademeister da ist.
  • Wenn ein Bademeister anwesend ist, haben die Schwimmer vor den Turmspringern Vorrang.
  • Der Bademeister darf erst Feierabend machen (weggehen), wenn kein Schwimmer mehr im Becken ist
  • Der Bademeister darf insbesondere auch dann gehen, wenn noch Schwimmer am Beckenrand warten (voraussgesetzt, es befindet sich kein Schwimmer im Becken).
  • Es kann davon ausgegangen werden, dass es maximal einen Bademeister gibt.

Aufgabe 5: Betriebsmittelvergabe (5 Punkte)

Die Betriebsmittel werden in der Aufgabe nach preämptiver Planung nach Laufzeit vergeben, gegeben sind folgende Prozesse:

Geben Sie für die jewelige Zeit die Vergabereihenfolge für die Prozesse an:

-----------------------------------
1 2 3 4 5 6 7 8 9 10

Geben Sie zusätzlich die zeitlichen Verläufe der Inhalte der Warte-Queues an und berechnen Sie die mittlere Wartezeit.


Siehe auch

Informatik 3/Gedächtnisprotokoll Klausur SS07

Informatik B/Gedächtnisprotokoll mündliche Nachprüfung SS07