Geheugen in de vorm van opslag, in dit geval. Copy-on-write zit in best veel andere bestandssystemen en houdt in dat als je op "kopieer" klikt, er wel een nieuwe entry wordt aangemaakt in de bestandstabel van je bestandssysteem, maar er geen data wordt gekopieerd. Zodra je begint nieuwe data toe te voegen of andere data te overschrijven, wordt alleen dat verschil opgeslagen.
Dit lijkt een beetje op hard links, maar hij hard links wordt het origineel aangepast zodra je de "kopie" begint te bewerken. Bij CoW kun je de kopie gewoon aanpassen, en alleen de onbewerkte data blijft naar het origineel verwijzen. Pas je het origineel aan, dan werkt het natuurlijk andersom, en schrijf je voor het origineel alleen de verschillen weg.
Een voorbeeld van wat ik zelf heb gedaan op BTRFS: stel, je wil een kopie van Skyrim maken, eentje met mods en eentje zonder. Je kopieert de hele map van Skyrim naar Skyrim-mods. Vervolgens begin je textures te vervangen en bestanden toe te voegen. Op het eerste oog lijkt het alsof je nu twee keer zoveel opslag + de inhoud van je mods in gebruik hebt genomen, maar doordat het kopiëren van de map met CoW gedaan is, was die operatie 1) in milliseconden klaar en 2) refereert de meeste data van Skyrim-mods nog naar de bits op de schrijf die eigenlijk aan de map Skyrim toebehoren.
Effectief betekent dat dat de kopie enkele kilobytes aan metadata in beslag neemt + de mods die zijn toegevoegd. Zo kun je op één SSD tientallen of honderden verschillende mod-configuraties maken die allemaal hooguit een paar honderd MB innemen, en niet zoals bij ext4/NTFS/FAT32 allemaal vele gigabytes groot zijn.
Overigens kan NTFS dit trucje ook, maar zit dit volgens mij alleen inbegrepen bij serveredities van Windows.
Wil je hiermee experimenteren, en heb je een Linuxinstallatie draaien, zou ik zeggen: formatteer eens een schijf als BTRFS (en in geloof ook zfs, maar dan moet je even Googlen hoe dat exact werkt want ik gebruik dat niet zo) en speel wat met kopiëren en plakken. Helaas snappen de meeste tools voor het weergeven van schijfgebruik deze feature niet zo, dus je moet vooral de vrije ruimte in de gate houden, of bestandsysteemspecifieke tools gebruiken om te zien hoeveel ruimte er écht wordt gebruikt (bijvoorbeeld "btrfs fi du" in plaats van "du").
Een andere leuke truc die je hiermee kan uitvoeren, is dat je achteraf bestanden kan dedupliceren op deze manier. Zo heeft Steam de neiging alle kopieën van Proton opnieuw te downloaden en in mapjes naast elkaar te zetten, en de meeste bestanden zijn inhoudelijk allemaal hetzelfde. Ik heb
duperemove er overheen gegooid, en nu gebruikt iedere installatie van Proton eigenlijk alleen één versie plus de verschillen die tussen de versies aanwezig zijn qua schijfruimte.
Dit hoeft natuurlijk niet alleen over spellen te gaan, je kunt ook je foto's en dergelijke op die manier dedupliceren en ze op verschillende plekken in submappen neerzetten zonder dat ze extra schijfruimte opeten, en kunt naar hartenwens specifieke bestanden bewerken zonder dat de andere bestanden worden aangetast zoals je bij hard links/soft links zou hebben.