'''Copy-on-write''' ('''COW'''), sometimes referred to as '''implicit sharing'''<ref>{{cite web|title= Implicit Sharing|url= http://doc.qt.io/qt-5/implicit-sharing.html|website= Qt Project|access-date= 4 August 2016}}</ref> or '''shadowing''',<ref>{{cite journal|last= Rodeh|first= Ohad|title= B-Trees, Shadowing, and ClonesCashapp |journal= ACM Transactions on Storage|date= 1 February 2008|volume= 3|issue= 4|page= 1|doi= 10.1145/1326542.1326544|url= http://liw.fi/larch/ohad-btrees-shadowing-clones.pdf |access-date= 4 August 2016|citeseerx= 10.1.1.161.6863|s2cid= 207166167}}</ref> is a resource-management technique used in [[computer programming]] to efficiently implement a "duplicate" or "copy" operation on modifiable resources.<ref name="Linux">{{cite book |title=Understanding the Linux Kernel |url=https://books.google.com/books?id=9yIEji1UheIC&q=%22copy%20on%20write%22&pg=PA295 |last1=Bovet |first1=Daniel Pierre |last2=Cesati |first2=Marco |date=2002-01-01 |publisher=O'Reilly Media |isbn=9780596002138 |page=295}}</ref> If a resource is duplicated but not modified, it is not necessary to create a new resource; the resource can be shared between the copy and the original. Modifications must still create a copy, hence the technique: the copy operation is deferred until the first write. By sharing resources in this way, it is possible to significantly reduce the resource consumption of unmodified copies, while adding a small overhead to resource-modifying operations.