Strony pamięci, które mogą być zmodyfikowane zarówno przez proces jak i jego potomka, otrzymują znacznik „kopiowane przy zapisie”.
Gdy jeden z procesów modyfikuje pamięć, kernel przechwytuje to wywołanie i kopiuje modyfikowane strony tak, aby zmiany dokonane przez jeden proces były niewidoczne dla drugiego. Od tej chwili proces nadrzędny i potomny zaczynają odwoływać się do fizycznie różnych stron.
Kolejnym zastosowaniem jest funkcja calloc, która może być zaimplementowana przy pomocy strony pamięci fizycznej wypełnionej zerami. Gdy przydzielana jest pamięć, wszystkie zwracane w wyniku tej operacji strony pamięci wirtualnej odnoszą się do fizycznej strony wypełnionej zerami i oznaczane są jako „kopiowane przy zapisie”. Dzięki temu ilość fizycznej pamięci zaalokowanej przez proces nie zwiększa się tak długo, jak długo nie są zapisywane żadne dane. Technika ta wykorzystywana jest zwykle w przypadku dużych alokacji.