Registrierung Kalender Mitgliederliste Teammitglieder Suche Häufig gestellte Fragen Zur Startseite

Informatiker Board » Themengebiete » Theoretische Informatik » Erzeuger-Verbraucher-Problem » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | An Freund senden | Thema zu Favoriten hinzufügen
Zum Ende der Seite springen Erzeuger-Verbraucher-Problem
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Chris2293
Grünschnabel


Dabei seit: 16.05.2015
Beiträge: 2

Erzeuger-Verbraucher-Problem Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Meine Frage:
Das Erzeuger-Verbraucher-Problem ist eine abstrakt formulierte Problemdarstellung der Prozessorsynchronisation in Betriebssystemenen, welche eine Regelung der Zugriffreihenfolge durch elementerzeugende (schreibende ) und elementverbrauchende (lesende) Prozesse darstellt. Folgende Aufgabe ist zu bearbeiten. Gegeben sei das bekannte Erzeuger-Verbraucher-Problem mit dem Puffer W ( Kapazität n Elemente ). Um wechselseitigen Ausschluss zu erreichen, sei folgender Lösungsversuch mit dem Semaphor wa gegeben(Pseudocode)

01 Deklaration ;
02 wa(1) ;
03
04 Erzeuger E;
05 while (true) {
06 produziere Element;
07 wa.P();
08 schreibe Element nach W;
09 wa.V()
10 }
11
12 Verbraucher V;
13 while (true) {
14 wa.P();
15 entnehme Element aus W falls Element
vorhanden, sonst warte ;
16 wa.V();
17 verarbeite Element;
18 }
19
20

a) Laufen beide Prozesse verklemmungsfrei? Welche Probleme können auftreten?
b) Geben Sie eine verbesserte Version an, in der keine Probleme mehr auftreten, indem Sie
zwei weitere Semaphore geeignet deklarieren und Aufrufe von P() und V() einfügen.

Meine Ideen:
Hallo erstmal, ich bin zur Zeit Student und habe als Teilgebiet meines Studiums die Grundlagen der Informatik ( wirklich nur Grundlagen! ).
Jetzt habe ich folgende Aufgabe in meiner Aufgabensammlung, die ich nicht lösen kann. Wirklich eigene Ideen dazu habe ich leider auch nicht. Bei meinem Erstversuch bin ich schon durchgefallen und in ein paar Wochen steht der Zweitversuch an. Bitte um Hilfe!!

Chris2293 hat dieses Bild (verkleinerte Version) angehängt:
Frage4-21.jpeg

16.05.2015 17:26 Chris2293 ist offline E-Mail an Chris2293 senden Beiträge von Chris2293 suchen Nehmen Sie Chris2293 in Ihre Freundesliste auf
ed209
Routinier


Dabei seit: 07.09.2006
Beiträge: 324

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

a.) Ich bin mit der Syntax die Ihr da benutzt nicht vertraut. Kannst du erläutern was "wa.P();" und "wa.V();" genau bedeuten?

b.) Wie habt ihr "verklemmungsfrei" definiert?
17.05.2015 18:30 ed209 ist offline E-Mail an ed209 senden Beiträge von ed209 suchen Nehmen Sie ed209 in Ihre Freundesliste auf
Chris2293
Grünschnabel


Dabei seit: 16.05.2015
Beiträge: 2

Auf diesen Beitrag antworten Zitatantwort auf diesen Beitrag erstellen Diesen Beitrag editieren/löschen Diesen Beitrag einem Moderator melden       Zum Anfang der Seite springen

Hey also das kann ich leider auch nicht genau sagen. Wir arbeiten eigentlich mit Java und diese Aufgabe stand so zur Übung auf den Laufwerk des Dozenten. Ich frag mal einen Kommilitonen und schreibe dann nochmal!
17.05.2015 23:10 Chris2293 ist offline E-Mail an Chris2293 senden Beiträge von Chris2293 suchen Nehmen Sie Chris2293 in Ihre Freundesliste auf
Baumstruktur | Brettstruktur
Gehe zu:
Informatiker Board » Themengebiete » Theoretische Informatik » Erzeuger-Verbraucher-Problem