Fragen zu Lab1
Fragen zu Lab1
Hallo, allerseits!
In der Aufgabenstellung heißt es: "Your model must not prevent a philosopher from thinking or eating."
Frage: Darf ein Philosoph sich selbst vom Essen abhalten?
Grüße
Daki
In der Aufgabenstellung heißt es: "Your model must not prevent a philosopher from thinking or eating."
Frage: Darf ein Philosoph sich selbst vom Essen abhalten?
Grüße
Daki
Nein, mein Nick hat nichts mit Kissen zu tun!
-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Nein. Der Philosoph kann vom Essen abgehalten werden, weil er keine zwei Gabeln aufheben kann, aber durch sonst nichts. Es sollte immer die generelle Möglichkeit bestehen, dass ein Philosoph, ob er gerade isst oder nicht, so bald wie möglich (wieder) essen kann.
Re: Fragen zu Lab1
Kann der Philosoph denn mit einer Gabel in der Hand denken?
Tutor:
GdI I (SS12)
GdI I (WS12/13)
GdI I (SS12)
GdI I (WS12/13)
Re: Fragen zu Lab1
Es heißt aber ferner: "The philosopher has problems with picking up two forks simultaneously, which means they always picks up one fork first, then the other one. (So an atomic block for picking up two forks is not allowed.)"Nathan Wasser hat geschrieben:Nein. Der Philosoph kann vom Essen abgehalten werden, weil er keine zwei Gabeln aufheben kann, aber durch sonst nichts.
Wir stellen uns das in der Situation schwierig vor, Deadlocks zu verhindern, wenn sich kein Philosoph dazu bereit erklärt, nicht essen zu wollen. Würde ein Philosoph von sich aus sagen, "ich esse nicht" (und dies z.B. damit zeigt, dass er eine Gabel wieder zurücklegt), dann würde er zwar sich selbst vom Essen abhalten, aber auch Deadlocks verhindern. Oder gibt es tatsächlich noch andere Lösungen?
Daki
Nein, mein Nick hat nichts mit Kissen zu tun!
-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Es gibt tatsächlich auch andere Lösungen.
-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Um auf die zugrundelegende Frage zu antworten: Natürlich kann es sein, dass ein Philosoph eine Gabel hält und auf die andere warten muss.tbecker hat geschrieben:Kann der Philosoph denn mit einer Gabel in der Hand denken?
Re: Fragen zu Lab1
Aber es kann ja durchaus sein, dass jeder Philosoph die linke Gabel in die Hand nimmt (hintereinander natürlich) und dann auf die rechte wartet -> Deadlock.
Was soll dann in so einem Fall passieren?
Was soll dann in so einem Fall passieren?
-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Es soll gar nicht erst dazu kommen.Yakumo500 hat geschrieben:Aber es kann ja durchaus sein, dass jeder Philosoph die linke Gabel in die Hand nimmt (hintereinander natürlich) und dann auf die rechte wartet -> Deadlock.
Was soll dann in so einem Fall passieren?
Re: Fragen zu Lab1
Danke für die Antwort. Dann hätte ich aber noch eine Frage:
Kann man den einzelnen Philosophen Anweisungen geben? Also z.B. sowas wie jeder Philosoph nimmt zuerst die linke Gabel und erst dann die rechte Gabel?
Kann man den einzelnen Philosophen Anweisungen geben? Also z.B. sowas wie jeder Philosoph nimmt zuerst die linke Gabel und erst dann die rechte Gabel?
-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Jeder Philosoph ist ein eigenständiger Mensch, der keine Anweisungen befolgt - kein übergeordneter Prozess darf den Philosophen sagen was sie tun sollen - sondern sich so individuell wie er will verhält.
Jetzt hört auf mit den Fragen und fangt an mit dem Lösen.
Jetzt hört auf mit den Fragen und fangt an mit dem Lösen.

Re: Fragen zu Lab1
Ist es eigentlich so, dass es immer die maximal mögliche Anzahl an Philosophen essen darf,also im falle N=5 2 Philosophen essen dürfen? Oder immer nur einer?
-
- Windoof-User
- Beiträge: 32
- Registriert: 2. Mai 2011 10:43
Re: Fragen zu Lab1
Es muss kein Problem sein 2 Philosophen zu essen, aber nicht 3. 

-
- Kernelcompilierer
- Beiträge: 430
- Registriert: 16. Okt 2009 09:48
Re: Fragen zu Lab1
Es dürfen soviele Philosophen gleichzeitig essen wie durch die Gabeln gestattet. Also für das Beispiel mit 5 Philosophen - wie schon erkannt - nicht mehr als 2. Es müssen aber nicht zu jedem Zeitpunkt genau zwei Philosophen essen, es darf auch mal nur einer essen oder auch gar keiner.
Re: Fragen zu Lab1
Werden die Gabeln genauso zufällig und nicht glechizeitig wieder zurückgelegt, wie sie aufgehoben wurden?
Re: Fragen zu Lab1
was soll denn in die abgabe dann alles mit rein? alle asserts die uns so eingefallen sind? was ist mit weiteren ausgaben? haben uns noch einige prints eingebaut damit wir den code leichter testen konnten, aber das macht den code an sich unübersichtlicher.
wenn die asserts drin bleiben sollen: sollen die dann auch mit jedem N funktionieren?
wenn die asserts drin bleiben sollen: sollen die dann auch mit jedem N funktionieren?