Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

23-Jun-05 Bernhard Tellenbach

Ähnliche Präsentationen


Präsentation zum Thema: "23-Jun-05 Bernhard Tellenbach"—  Präsentation transkript:

1 23-Jun-05 Bernhard Tellenbach tellenbach@tik.ee.ethz.ch
TI 2 Übung 5 23-Jun-05 Bernhard Tellenbach

2 TI2 Übung 5 Prüfungsvorbereitung Allgemeine Hinweise zur Prüfung
Bemerkungen zu den Aufgaben Aufgabe 5 (Semaphore) Selbständiges Lösen der Übung 5 - 2 - © TIK/CSG ( )

3 Prüfungsvorbereitung
Begriffe/Konzepte kennen Nachschlagen erlaubt, kostet aber zu viel Zeit Topsy Aufrufe aus den Übungen kennen Learning by doing, es gibt viele alte TI Prüfungen! Bei Unklarheiten Kollegen fragen (Lerngruppe) Falls immer noch unklar, Assistent kontaktieren Fragestunde am von 9:00-13:00 im VAW B1 nutzen!! - 3 - © TIK/CSG ( )

4 Vorgehen bei Prüfungen
Eigentlich allen klar, wird während der Prüfung aber oft vergessen... Alle Aufgabentexte durchlesen Welche sind für mich einfach, welche schwierig? Wo kann ich mit wenig Aufwand viele Punkte holen? Programmieraufgaben: Aufwand meist hoch! → Reihenfolge festlegen! - 4 - © TIK/CSG ( )

5 Bemerkungen zu den Aufgaben I
Zuerst die anspruchsvollen Aufgaben Anspruchsvolle Aufgaben: 1, 4 und 5 und 2 e) Begriff/Konzepte: Aufgaben 2 (ausser e) ), 3 und 6 Aufgabe 1: Interprozess Kommunikation Aufgabe 2: Ablaufplanung (Scheduling) Aufgabe 3: Speicherverwaltung Aufgabe 4: Wechselseitiges Ausschlussproblem Aufgabe 5: Semaphore Aufgabe 6: Zuverlässige Datenübermittlung - 5 - © TIK/CSG ( )

6 Bemerkungen zu den Aufgaben II
Auf den ersten Blick schwierige Aufgaben sind beim genauerer Betrachtung oft einfach Bspl: Aufgabe 5 (Semaphore) Es gibt einen einfacheren Ansatz als der als Hinweis angagebene! Lösungsansatz suchen. Zeit: 15 Minuten - 6 - © TIK/CSG ( )

7 Aufgabe 5 (Semaphore) Gemäss Hinweis:
Agent teilt mit, welche Betriebsmittel er ausgewählt hat Die beiden Raucher, welche eines der Betriebsmittel jeweils besitzen, werden aktiv Jeder der beiden muss feststellen, welcher andere Raucher aktiv ist. Danach wissen sie, welcher der noch inaktive Raucher ist Aktivieren des inaktiven Rauchers durch einen der aktiven Raucher - 7 - © TIK/CSG ( )

8 Benötigt pro Raucher eine Testvariable
Problem: Wie weiss ein Raucher, ob er vom Agenten oder von einem anderen Raucher geweckt wurde? Von Raucher augeweckt? Benötigt pro Raucher eine Testvariable Testvariable des inaktiven Rauchers wird vom Raucher, der ihn aufweckt, gesetzt Agent: Signal(B1), Signal(B2) weckt weckt wait(B1) wait(B2) wait(B3) JA: Rauchen Nein: Wen aufwecken? weckt R1 R2 R3 Jeder Raucher weckt “seinen“ Raucher, falls dieser rauchen darf! - 8 - © TIK/CSG ( )

9 z.B. für jedes Betriebsmittel eine globale Variable (w1, w2 ,w3)
Problem: Wie merken die beiden vom Agenten geweckten Raucher, welcher Raucher nicht geweckt wurde (dieser darf dann schliesslich rauchen)? Information, welch Raucher vom Agenten geweckt wurden, muss global abrufbar sein z.B. für jedes Betriebsmittel eine globale Variable (w1, w2 ,w3) Falls nötig: Schreibzugriffe über Semaphor regeln (MuLö: Ja) weckt wait(s) w1++, w3++ signal(s) while(w1<2 and w3<2) noop if w3=2 signal(B3) ... wait(s) w2++, w3++ signal(s) while(w2<2 and w3<2) noop if w2=2 signal(B2) ... R3 R2 R1 wait(B3) Von Agenten augeweckt Wird von R2 geweckt, raucht. - 9 - © TIK/CSG ( )

10 Ein anderer Lösungsweg (ignorieren des Hinweises, ebenfalls in MuLö):
Verlangt: Der Agent informiert die Raucher über die von ihm gewählten Betriebsmittel über signal Operationen R3 R2 R1 Agent: Signal(notB3) wait(notB1) wait(notB2) wait(notB3) weckt Rauchen signal(Rückmeldung) Der Agent wählt zwei Betriebsmittel aus und meldet, welches er nicht gewählt hat - 10 - © TIK/CSG ( )

11 Selbständiges Lösen der Übung 5
Wir stehen für Fragen zur Verfügung Testate: Übung zu gutem Teil gelöst oder ab Uhr (Di) / (Fr) - 11 - © TIK/CSG ( )

12 * =(Hilfs)Assistent fragen
Algorithmus zum Lösen von TI2 Aufgaben: Text genau durchlesen Lösungsweg nicht gefunden* Lösungsweg gefunden Gibt es noch einen einfachern Lösungsweg? (z.B. Aufgabe 4) Armes Schwein! Weiter zur nächste Aufgabe Es hat noch... Ja (nicht gefunden) Bereits alle versucht Ja (gefunden) Schade... Nein * Armes Schwein! Löse die Aufgabe Ja Ok, dann weiter Zur nächsten... Ich hänge fest! Problem in kurzer Zeit überweindbar? * =(Hilfs)Assistent fragen - 12 - © TIK/CSG ( )


Herunterladen ppt "23-Jun-05 Bernhard Tellenbach"

Ähnliche Präsentationen


Google-Anzeigen