Multicore en synchronisatie

Wat gebeurt er in het MESI-protocol wanneer die core naar een regel in de toestand Exclusive (E) schrijft?

  1. AEerst wordt een ongeldigverklaringsverzoek naar alle andere cores gestuurd, daarna wordt geschreven
  2. BSchrijven is niet mogelijk, dus er wordt eerst naar het hoofdgeheugen geschreven en dan opnieuw gelezen
  3. CAndere cores hoeven niet te worden geïnformeerd en de regel gaat direct over naar de M-toestand
Antwoord en toelichting tonen

Antwoord: C. Andere cores hoeven niet te worden geïnformeerd en de regel gaat direct over naar de M-toestand

De E-toestand is de toestand waarin alleen deze core de regel heeft en de inhoud gelijk is aan het hoofdgeheugen. Omdat bekend is dat andere cores geen kopie hebben, kan bij schrijven zonder ongeldigverklaringsbericht naar de M-toestand worden overgegaan. Het voordeel van de E-toestand is dat bij het veelvoorkomende patroon waarbij gegevens die maar door één core worden gebruikt worden gelezen en dan geschreven, communicatie wordt bespaard. Bij schrijven vanuit de S-toestand moeten de andere kopieën wel ongeldig worden gemaakt.

Toestandsovergangen van het MESI-protocol Schrijft zelf Ander schrijft Ander schrijft Leest zelf (ook elders) Ander schrijft Leest zelf (nergens anders) Schrijft zelf (rest ongeldig) Ander leest (write-back) Schrijft zelf (stil) Ander leest M I S E Toegang door eigen kern Toegang andere kern (snoop) M: gewijzigd, exclusief E: intact, exclusief S: intact, gedeeld I: ongeldig
Toestandsovergangen van het MESI-protocol · Bekijken in het figurenoverzicht
Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Multicore en synchronisatie

  1. Wat gebeurt er in een ongeldigverklarend (invalidate) coherentieprotocol wanneer een core naar een regel in de toestand Shared (S) schrijft?
  2. Wat is het gangbare gedrag in het MESI-protocol wanneer core 1 een regel wil lezen die core 0 in de toestand Modified (M) heeft?
  3. Welke uitleg over de snooping-methode voor cachecoherentie is juist?
  4. Waarom wordt in systemen met veel cores directory-gebaseerde coherentie gebruikt in plaats van snooping?
  5. Coherentieprotocollen zijn er in ongeldigverklarende en updatende vorm. Welke is de meest passende reden dat veel CPU's het ongeldigverklarende type gebruiken?

Vergelijkingen bij dit onderwerp