Seite 1 von 1

Hausübung 13 Aufgabe 5

Verfasst: 1. Feb 2012 19:06
von der Interpeter
"Wenn zu einem Zeitpunkt in der Warteschlange sowohl ein neuer Prozess als auch ein alter, noch nicht fertig
gerechneter, gerade aus dem Prozessor ausgelagerter Prozess eintreffen, nehmen Sie an, dass der neue Prozess minimal
früher eintrifft und daher vor dem alten Prozess in der Warteschlange eingereiht wird."

Mir ist noch nicht ganz klar wie das gedacht ist.

Mal als Beispiel: Wie ginge es da jetzt weiter, würde P2 oder P3 als nächstes bearbeitet?

Bild

Re: Hausübung 13 Aufgabe 5

Verfasst: 1. Feb 2012 22:49
von flofalk
Die gleiche Frage habe ich mir auch schon gestellt.

Ich würde aus deinem Beispiel jetzt P2 bearbeiten, denn es heißt ja "ein alter, noch nicht fertig gerechneter, gerade aus dem Prozessor ausgelagerter Prozess". Das bedeutet meiner Ansicht nach, dass nur Prozesse die schonmal (teilweise) gelaufen sind darunter fallen. Was für P2 aus dem Beispiel ja nicht gilt, da P2 nur wartet.

Re: Hausübung 13 Aufgabe 5

Verfasst: 2. Feb 2012 00:11
von mw1039
Angenommen timeslices waeren 3 Zeiteinheiten lang und P2 wuerde zum Zeitpunkt 3 ankommen: Dann wuerde ja auch zum Zeitpunkt 3 P1 aus dem Prozessor aus- und in die Queue eingelagert werden. Dann muss man sich entscheiden: Kommt erst P2 dran, oder kommt erst P1 mit seinem naechsten timeslice dran. Oder noch genauer: Kommt erst P2 in die Queue oder erst P1 vom Prozessor in die Queue?
Und immer wenn ein solcher Fall auftritt, soll angenommen werden, dass der neue Thread (hier P2) ein Stueckchen frueher ankommt und deshalb vor dem alten (hier P1) in die Queue kommt.

Re: Hausübung 13 Aufgabe 5

Verfasst: 2. Feb 2012 14:06
von der Interpeter
Das ist klar.

Aber wie verhält es sich wenn ältere noch nicht bearbeitete Prozesse in der Queue sind?
Kommt dann der älteste nicht bearbeitete Prozess an die Reihe oder der zum passenden Zeitpunkt (wie von dir beschrieben) neu in die Queue eingelagerte?

Darum auch das Beispiel mit den 3 Prozessen. Wenn der timeslice von P1 fertig ist wartet P2 schon 1ZE, P3 kommt frisch in die Queue.

Da würde ich jetzt als nächstes P2 bearbeiten da es schon 1ZE wartet.
Ich denke der Fall mit dem früher ankommenden Prozess aus deinem Beispiel kommt nur zum Tragen wenn die Queue leer ist.

Ist das richtig?

Re: Hausübung 13 Aufgabe 5

Verfasst: 2. Feb 2012 14:14
von mw1039
Jobs werden immer hinten in die Queue eingehaengt. D.h. es kommen erstmal die Jobs dran, die schon laenger in der Queue sind. Wenn das anders gehandhabt wuerde, koennte es passieren, dass Jobs, die schon laenger in der Queue sind, dort verhungern, weil immer wieder neue Jobs hinzukommen und sich vordraengeln duerfen.

Und bei der Frage, wer zuerst (hinten) an die Queue angehaengt wird, wird so verfahren, dass erst der neue Prozess reinkommt und dann der alte, gerade ausgelagerte.

Re: Hausübung 13 Aufgabe 5

Verfasst: 6. Feb 2012 22:52
von studypad
Ich habe das Gefühl die Aufgabenstellung widerspricht sich mit den hier getroffenen Aussagen:
Angenommen die 3 Zeiteinheiten sind rum und gerade zu diesem Zeitpunkt fängt Prozess P3 an obwohl P2 in der Warteschlange ist.
Nach Aufgabenblatt wäre jetzt P3 an der Reihe und nach der Aussage hier wäre nun P2 an der Reihe da P3 ja hinten angehängt wird..

Wie sollen wir es nun verstehen?
Vielleicht steh ich auch aufm Schlauch...

Re: Hausübung 13 Aufgabe 5

Verfasst: 6. Feb 2012 23:07
von Dennis Albrecht
Grundsätzlich gibt es erstmal eine Warteschlange, welche sich mit jeder Ankunft erweitert. Kommen nun zwei Prozesse gleichzeitig an, wird der Prozess bevorzugt, der gerade nicht bearbeitet wurde. Abgearbeitet wird immer am anderen Ende der Warteschlange. Das widerspricht auch nicht der Aufgabenstellung auf dem Aufgabenblatt. Einziger Unterschied zwischen den beiden Erklärungen ist, dass das Aufgabenblatt nur den Sonderfall behandelt und hier das gesamte (aber eigentlich bekannte) Verfahren erklärt wurde.

Als Beispiel: nach drei Zeiteinheiten wird Prozess zwei angefangen, da der schon am längsten in der Warteschlange wartet. Kannst dir auch für jeden Zeitpunkt aufschreiben, wie die ganze Warteschlange aussieht, dann musst du immer nur noch den ersten nehmen und die anderen aufrücken.

Gruß

Re: Hausübung 13 Aufgabe 5

Verfasst: 7. Feb 2012 09:38
von mw1039
Dennis Albrecht hat geschrieben:Kannst dir auch für jeden Zeitpunkt aufschreiben, wie die ganze Warteschlange aussieht,
Das sollte man auf jeden Fall tun. Es sei denn man kann die Warteschlange zu jedem Zeitpunkt im Kopf behalten.