Копирование при записи

Материал из Википедии — свободной энциклопедии
Перейти к: навигация, поиск

Механизм копирования при записи (англ. Copy-On-Write, COW) используется для оптимизации многих процессов, происходящих в операционной системе, таких как, например, работа с памятью или файлами на диске (пример — ext3cow).

Главная идея copy-on-write — при копировании областей данных создавать реальную копию только когда ОС обращается к этим данным с целью записи.

Например, при работе UNIX-функции fork() вместо копирования выполняется отображение образа памяти материнского процесса в адресное пространство дочернего процесса, после чего ОС запрещает обоим процессам запись в эту память. Попытка записи в отображённые страницы вызывает исключение (exception), после которого часть данных будет скопирована в новую область.

Механизм получил большое распространение при создании новейших файловых систем, таких как ZFS и Btrfs. Благодаря ему создание снапшотов в данных системах происходит практически мгновенно, не занимая при этом больших ресурсов носителя информации.

Литература[править | править вики-текст]

  • D. M. Dhamdhere Operating Systems: A Concept-based Approach. — Tata McGraw-Hill Education, 2006. — ISBN 0070611947 — c.281-282