Функция anon_dup(), вызываемая во время выполнения fork, производит дублирование ссылок на все анонимные страницы родительского процесса. После этого страницы могут совместно использоваться предком и потомком на основе технологии копирования при записи. Несмотря на то, что операция anon_dup() имеет дело с сегментами целиком, совместное использование является постраничным.
Также вам может показаться, что такая тема как http://www.aitek-d.ru/catalog282_1.html никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт aitek-d.ru. Тема купить интерактивную доску там представлена весьма широко. На том сайте можно узнать много интересного на тему купить интерактивную доску. Что означает вообще тема купить интерактивную доску, где найти купить интерактивную доску - про это написано на сайте aitek-d.ru. Это очень важная для многих людей тема - купить интерактивную доску. Спасибо сайту aitek-d.ru за информацию на тему купить интерактивную доску.
Ранее было показано состояние сегмента родителя и потомка, а также соответствующих структур anon после завершения выполнения anon_dup ().
Далее будет представлено состояние тех же объектов через некоторое время. За этот период процесс-предок внес изменения в страницы 0 и 1 сегмента. Страница 0 изначально не являлась анонимной. Однако при модификации ее потомком ядро произвело выделение новой структуры anon и физической страницы, а также добавило ссылку в массив ссылок на структуры anon потомка. Так как родительский процесс не производил изменения страницы, она по-прежнему остается отображенной на объект vnode в его адресном пространстве.
Страница 1 изначально же являлась анонимной и разделялась между родительским и дочерним процессом. Значение счетчика ссылок этой страницы равнялось 2. Так как отображение было закрытым, все изменения, внесенные потомком, не влияли на общую копию. Ядро системы создало новую копию страницы и разместило для нее структуру anon. Процесс-потомок сбросил ссылку на оригинальную структуру anon и получил ссылку на новую. В результате родитель и'потомок стали обладать различающимися друг от друга ссылками на структуры anon страницы. Значение счетчика каждой структуры anon стало равным 1.
Из приведенного примера видно, что совместное использование страниц имеет постраничную основу.
Ранее показано состояние, в котором оба процесса разделяют между собой анонимные страницы для страниц 2 и 4 сегмента, но не имеют копий для страниц 0, 1 и 3.
Опубликовал katy
June 20 2015 09:30:59 ·
0 Комментариев ·
3208 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.