Wat is Copy-on-write?

Methode waarbij gekopieerd geheugen in eerste instantie met het origineel wordt gedeeld en alleen die pagina wordt gekopieerd wanneer een van beide erin probeert te schrijven. Maakt het aanmaken van processen sneller en bespaart geheugen.

Japanse benaming: コピーオンライト

“Copy-on-write” komt voor in 5 oefenvragen uit 2 onderwerpen, bijv. Besturingssysteem en hardware, Linker, loader en uitvoerbare formaten.

Vakgebied: Besturingssysteem en hardware

Nu oefenen: vragen over Copy-on-write

Welk voordeel van copy-on-write bij het kopiëren van een proces is juist?

  1. AHet gekopieerde en het oorspronkelijke proces kunnen de geschreven inhoud altijd delen
  2. BAlleen beschreven pagina's worden later gekopieerd, dus het is snel en bespaart geheugen
  3. CBij elke schrijfactie worden alle pagina's gekopieerd, waardoor de veiligheid van de gegevens toeneemt
Antwoord en toelichting tonen

Antwoord: B. Alleen beschreven pagina's worden later gekopieerd, dus het is snel en bespaart geheugen

Als bij het kopiëren van een proces onmiddellijk het hele geheugen wordt gekopieerd, kost dat tijd en geheugen, en als direct daarna een ander programma wordt geladen, is die kopie verspild. Bij copy-on-write verwijzen beide paginatabellen alleen-lezen naar dezelfde fysieke pagina's; zodra een van beide schrijft, treedt een paginafout op en kopieert het besturingssysteem alleen die pagina. Wat is geschreven wordt niet gedeeld en blijft voor elk proces apart. Er worden ook niet alle pagina's gekopieerd.

“Copy-on-write” in de toelichting

Vragen met “Copy-on-write” (5)

  1. Welk voordeel van copy-on-write bij het kopiëren van een proces is juist?
  2. Hoe wordt het fysieke geheugen gebruikt als 100 processen dezelfde gedeelde bibliotheek gebruiken?
  3. Bij paginavervanging met FIFO kan het aantal paginafouten toenemen terwijl het aantal fysieke pagina's is vergroot. Hoe heet dit verschijnsel?
  4. Door welk mechanisme kan het besturingssysteem op vaste tijden de CPU terugnemen van een programma dat de CPU niet uit zichzelf afstaat, om naar een ander proces over te schakelen?
  5. Hoe heet de methode waarbij, wanneer het besturingssysteem van een virtuele machine een instructie met privileges uitvoert, de verwerking naar de hypervisor gaat en die het effect van de instructie namens de machine nabootst?

Verwante termen

Numerieke apertuur (NA) Gedeelde bibliotheek (shared library) LRU (least recently used) Thrashing Interrupt Hypervisor Demand paging Apparaatstuurprogramma (device driver) ASID (address space identifier) Bevoorrechte modus (privileged mode)

Naar de woordenlijst