Inhoudsopgave:
Definitie - Wat betekent Shared Memory?
Gedeeld geheugen voor software is een type geheugen dat kan worden gedeeld door meerdere applicaties of processen met de bedoeling om communicatie tussen applicaties te bieden of overbodige datakopieën te vermijden. Dit is een efficiënte manier om gegevens te delen of door te geven, omdat het de noodzaak wegneemt om andere processen zoals invoer / uitvoer (I / O) te gebruiken. De ene toepassing slaat de gegevens op in het gedeelde geheugen, terwijl een andere toepassing deze kan gebruiken wanneer deze wordt gevonden.
In de context van processors is gedeeld geheugen een onderdeel van RAM (Random Access Memory) dat toegankelijk is voor alle processors in een multi-processorsysteem.
Techopedia verklaart Gedeeld geheugen
Gedeeld geheugen voor software is een manier voor verschillende programma's om te communiceren en gegevens door te geven zonder meer overhead van communicatieprocessen. Met gedeeld geheugen schrijft een programma gegevens naar het gedeelde geheugen die het nodig heeft om een ander programma te ontvangen.
Als programma A bijvoorbeeld een lijst aan programma B wil geven, worden de gegevens in het gedeelde geheugen opgeslagen en gemarkeerd met een semafoor of een ander markeringssysteem om aan te geven dat het klaar is om te worden gelezen door programma B.
Wanneer programma B het bestand vindt, controleert het de semafoor om te zien of het dat bestand mag aanraken. Indien toegestaan, doet het wat het moet doen met het bestand, plaatst het in het gedeelde geheugen of werkt het bij. Het werkt ook de semafoor bij, zodat programma A weet dat het bestand moet worden overgenomen.
In termen van hardware, met name microprocessors, is gedeeld geheugen een groot blok RAM dat door meerdere processors wordt gebruikt. Het is gemakkelijk te programmeren omdat alle processoren dezelfde weergave van gegevens delen, wat snellere communicatie mogelijk maakt. Dit kan echter ingewikkeld worden omdat processors geheugen opslaan voor snellere toegang, wat kan leiden tot problemen zoals cache-coherentie.
