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

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

Механизм копирования при записи (англ. 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



Wikimedia Foundation. 2010.

Игры ⚽ Поможем решить контрольную работу

Полезное


Смотреть что такое "Копирование при записи" в других словарях:

  • Копирование — (от лат. copia  множество)  процесс изготовления копии, то есть воспроизведения объекта, процесса, явления, информации. Содержание 1 В технике 2 В фотографии …   Википедия

  • Незаконное копирование несвободных кинофильмов — Видеопиратство  незаконное копирование и распространение защищённой авторским правом видеопродукции, вид нарушения авторского права. Содержание 1 Способы получения пиратского видео 1.1 «Экранка» (CAM, CAMRip) 1.2 Telesync (TS) …   Википедия

  • Конструктор копирования — Конструктором копирования (в англоязычной литературе используется термин copy constructor) называется специальный конструктор в языке программирования C++, применяемый для создания нового объекта как копии уже существующего. Такой конструктор… …   Википедия

  • Mach — У этого термина существуют и другие значения, см. Мах. Необходимо проверить качество перевода и привести статью в соответствие со стилистическими правилами Википедии. Вы можете помочь улучшить эту статью …   Википедия

  • Остаточная информация — Остаточная информация  информация на запоминающем устройстве, оставшаяся от формально удалённых операционной системой данных. Информация может остаться из за формального удаления файла или из за физических свойств запоминающих устройств.… …   Википедия

  • Микроядро Mach — Mach  микроядро операционной системы, разработанное в Carnegie Mellon University в исследовательских целях для решения задач с использованием распределенных вычислений. Это одно из первых микроядер, которое до сих пор используется во множестве… …   Википедия

  • Btrfs — Информация в этой статье или некоторых её разделах устарела. Вы можете помочь проекту, обновив её и убрав после этого данный шаблон …   Википедия

  • Euphoria (язык программирования) — У этого термина существуют и другие значения, см. Euphoria. Euphoria Семантика: императивный Класс языка: процедурный Тип исполнения: интерпретация, интерп …   Википедия

  • UNIX — Генеалогическое древо UNIX систем UNIX (читается юникс) семейство переносимых, многозадачных и многопользовательских …   Википедия

  • UnionFS — вспомогательная файловая система для Linux и FreeBSD, производящая каскадно объединённое монтирование других файловых систем. Это позволяет файлам и каталогам изолированных файловых систем, известных как ветви, прозрачно перекрываться, формируя… …   Википедия


Поделиться ссылкой на выделенное

Прямая ссылка:
Нажмите правой клавишей мыши и выберите «Копировать ссылку»