Lock - correct answer ✔✔provides mutual exclusion to shared data
Condition variable - correct answer ✔✔provides a queue for waiting threads inside a critical section
Hoare vs. Mesa monitors - correct answer ✔✔1.) Hoare Monitors (used in most textbooks)
a.) Signal() transfers the CPU directly to a waiting thread
2.) Mesa Monitors (used in most real operating systems)
a.) Signal() only puts a waiting thread on the scheduler's ready queue
b.) By the time the waken thread gets the CPU, the waiting condition may no longer be true and needs
to be retested
Correct a broken solution - correct answer ✔✔Reader() {
lock.Acquire();
while (activeWriters > 0
|| waitingWriters > 0) {
++waitingReaders;
okToRead.Wait(&lock);
--waitingReaders;
}
++activeReaders;
lock.Release();
// access database
lock.Acquire();
, --activeReaders;
if (activeReaders == 0 &&
waitingWriters > 0) {
okToWrite.Signal(&lock);
}
lock.Release();
}
Writer() {
lock.Acquire();
while (activeWriters > 0
|| activeReaders > 0) {
++waitingWriters;
okToWrite.Wait(&lock);
--waitingWriters;
}
++activeWriters;
lock.Release();
// access database
lock.Acquire();
--activeWriters;
if (waitingWriters > 0) {
okToWrite.Signal(&lock);
} else if (waitingReaders > 0) {
okToRead.Broadcast(&lock);
}
lock.Release();
}
Voordelen van het kopen van samenvattingen bij Stuvia op een rij:
√ Verzekerd van kwaliteit door reviews
Stuvia-klanten hebben meer dan 700.000 samenvattingen beoordeeld. Zo weet je zeker dat je de beste documenten koopt!
Snel en makkelijk kopen
Je betaalt supersnel en eenmalig met iDeal, Bancontact of creditcard voor de samenvatting. Zonder lidmaatschap.
Focus op de essentie
Samenvattingen worden geschreven voor en door anderen. Daarom zijn de samenvattingen altijd betrouwbaar en actueel. Zo kom je snel tot de kern!
Veelgestelde vragen
Wat krijg ik als ik dit document koop?
Je krijgt een PDF, die direct beschikbaar is na je aankoop. Het gekochte document is altijd, overal en oneindig toegankelijk via je profiel.
Tevredenheidsgarantie: hoe werkt dat?
Onze tevredenheidsgarantie zorgt ervoor dat je altijd een studiedocument vindt dat goed bij je past. Je vult een formulier in en onze klantenservice regelt de rest.
Van wie koop ik deze samenvatting?
Stuvia is een marktplaats, je koop dit document dus niet van ons, maar van verkoper kirus27. Stuvia faciliteert de betaling aan de verkoper.
Zit ik meteen vast aan een abonnement?
Nee, je koopt alleen deze samenvatting voor €15,67. Je zit daarna nergens aan vast.