Wederzijdse uitsluiting: verschil tussen versies

Verwijderde inhoud Toegevoegde inhoud
Geen bewerkingssamenvatting
Regel 7:
Er zijn zowel hardware- als softwareoplossingen voor het bereiken van wederzijdse uitsluiting. De verschillende mogelijkheden worden hieronder toegelicht.
 
===Hardware OplossingenHardwareoplossingen===
==== Wederzijdse uitsluiting door interruptblokkering ====
Op een [[uniprocessor]]systeem kan wederzijdse uitsluiting worden bereikt door het tijdelijk uitschakelen van het [[interrupt]]mechanisme. Interrupts worden gebruikt bij de [[scheduling]] van [[Thread (informatica)|thread]]s en zijn verantwoordelijk voor het onderbreken van lopende [[processen]]. Als er geen interrupts kunnen plaatsvinden tijdens het uitvoeren van de [[kritieke sectie]], dan kunnen we de wederzijdse uitsluiting garanderen.
Regel 13:
Het nadeel van deze aanpak is dat het [[scheduling]] mechanisme tijdelijk wordt verstoord. Dit kan de efficiëntie van de lopende programma's nadelig beïnvloeden. Deze methode is niet geschikt voor multiprocessors, omdat de verschillende processors onafhankelijk werken en er geen interrupt communicatie tussen de processors plaatsvindt. We kunnen niet verhinderd dat de verschillende processors afzonderlijke processen uit voeren, die tevens gebruik maken van dezelfde gedeelde bronnen.
 
==== Wederzijdse uitsluiting met machine instructiesmachineinstructies ====
Op een multiprocessor systeemmultiprocessorsysteem delen verschillende processors toegang tot eenzelfde geheugen. Hier kan wederzijdse uitsluiting worden bereikt door gebruik te maken van atomaire instructies, die in 1één klokcyclus uitgevoerd worden. Een atomaire instructie kan niet onderbroken worden, waardoor de wederzijdse uitsluiting gegarandeerd is.
 
De meest gebruikte atomaire instructies voor wederzijdse uitsluiting: