Мы подошли к той стадии выполнения, когда страница уже находится в памяти, а процедура segvn_fault() располагает указателем на нее. Рассмотрим случай применения копирования при записи. Здесь имеются несколько вариантов.
1. Предпринимается попытка записи по отношению к закрытому отображению.
2. Атрибуты защиты сегмента (или страницы, что в данном случае не важно) разрешают запись, но дальнейшее поведение зависит от следующего:
1) страница не имеет структуры anon;
2) структура anon страницы содержит более чем одну ссылку.
Также вам может показаться, что такая тема как http://obzorkazino.ru/igrosoft никак не связана и даже не тематична. Хотя, может быть и связана. В любом случае все-таки зайдите на сайт obzorkazino.ru. Тема играть онлайн бесплатно в автоматы игрософт там представлена весьма широко. На том сайте можно узнать много интересного на тему играть онлайн бесплатно в автоматы игрософт. Что означает вообще тема играть онлайн бесплатно в автоматы игрософт, где найти играть онлайн бесплатно в автоматы игрософт - про это написано на сайте obzorkazino.ru. Это очень важная для многих людей тема - играть онлайн бесплатно в автоматы игрософт. Спасибо сайту obzorkazino.ru за информацию на тему играть онлайн бесплатно в автоматы игрософт.
Случай 2.1 приводит к созданию анонимного отображения файла, все изменения должны быть ограничены закрытой копией страницы. В ситуации 2.2 имеет место размножение анонимной страницы (на условиях копирования при записи), что может происходить после завершения выполнения fork. В обоих вариантах обработчик исключения производит вызов anon_private() для создания закрытой копии страницы.
Последним этапом работы обработчика исключений является вызов hat_ memload() для загрузки нового преобразования страницы в структуры аппаратного преобразования адресов (в таблицы страниц и элементы TLB).
Разделяемая память
В ОС System V механизм разделяемой памяти является частью средства взаимодействия процессов (IPC, см. раздел 6.3.4). После создания процессом разделяемой области памяти этот процесс совместно с другими взаимодействующими процессами может произвести присоединение этого участка в свое адресное пространство. Каждый процесс имеет право расположить такие области по различным адресам, а также присоединять один и тот же участок сразу на несколько адресов в своем пространстве. После этого процесс может выполнять чтение или запись в область, используя обычные инструкции доступа к памяти. Все изменения, внесенные в разделяемую область памяти одним процессом, сразу же становятся видны остальным взаимодействующим процессам. Область памяти продолжает существовать до тех пор, пока не будет удалена принудительно (даже в том случае, если к ней не подключено ни одного процесса). Это позволяет процессу создать область разделяемой памяти, записать в нее данные и завершить работу. Через некоторое время другой процесс может подключиться к области в той же точке и запросить оставленные в памяти данные.
Опубликовал katy
June 20 2015 09:45:09 ·
0 Комментариев ·
2704 Прочтений ·
• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •
Комментарии
Нет комментариев.
Добавить комментарий
Рейтинги
Рейтинг доступен только для пользователей.
Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.
Нет данных для оценки.
Гость
Вы не зарегистрированны? Нажмите здесь для регистрации.