CS 134 OS—7 Paging HW: Copy-On-Write Fork
3-Second Blueprint (English)
- Eagerly duplicating all parent pages during fork() wastes work when the child immediately calls exec() to load an ELF binary.
- Copy-on-write shares physical pages between processes, increments page reference counts, and clears PTE write bits.
- When either process writes (such as pushing exec stack arguments), a page fault prompts the kernel to copy only that page.
Copy-On-Write (COW) ForkPage Table Entry (PTE) BitsHardware Page Fault HandlerPage Reference Countingfork() and exec() Lifecycle
3-Sekunden-Fazit (Deutsch)
- Das sofortige Kopieren aller Speicherseiten bei fork() ist ineffizient, da meist direkt exec() ein neues ELF-Programm lädt.
- Copy-on-Write teilt physische Seiten zwischen Prozessen, erhöht Referenzzähler und löscht das Schreib-Bit im PTE.
- Erst ein Schreibzugriff (etwa auf den Stack) löst einen Page Fault aus, worauf der Kernel nur diese eine Seite kopiert.
Copy-On-Write (COW) ForkPage-Table-Entry-Bits (PTE)Page-Fault-BehandlungSeiten-Referenzzählungfork()-und-exec()-Ablauf
Note / Hinweis: Blueprints are AI-generated educational summaries (0% Politics · 0% Religion · 0% Brainrot) and do not constitute medical, legal, or financial advice. / KI-generierte Zusammenfassung zu Bildungszwecken – ersetzt keine medizinische, rechtliche oder finanzielle Fachberatung.