Linker, loader en uitvoerbare formaten
Hoe wordt het fysieke geheugen gebruikt als 100 processen dezelfde gedeelde bibliotheek gebruiken?
- APagina's met niet-herschreven code delen één kopie, en pagina's met te schrijven data heeft elk proces zelf
- BZowel code als data hebben per proces 100 kopieën
- CAlles, inclusief datapagina's, wordt gedeeld en processen kunnen elkaars waarden zien
Antwoord en toelichting tonen
Antwoord: A. Pagina's met niet-herschreven code delen één kopie, en pagina's met te schrijven data heeft elk proces zelf
Het OS koppelt de gedeelde bibliotheek aan de virtuele adresruimte van elk proces en laat pagina's met niet-herschreven code en constanten naar dezelfde fysieke pagina wijzen. Pagina's met te schrijven data, zoals variabelen, worden per proces apart gehouden, bijvoorbeeld door op het moment van schrijven een kopie te maken (copy-on-write). Zo is ook bij 100 processen geheugen voor de bibliotheekcode maar één keer nodig.
Verder: nog 9 vragen over Linker, loader en uitvoerbare formaten