|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Andrey Sapozhnikov 2:5020/400 10 Apr 2002 20:28:27 To : Igor Gerdler Subject : Re: А теперь возражения --------------------------------------------------------------------------------
Igor Gerdler wrote:
>>Разделяемая память (shared memory) для этого не используется.
>>
> Если не используется, тогда поясните причину появления в описании mod_perl
> (http://perl.apache.org/guide) присутствия в разделе Performance Tuning
> подраздела Sharing Memory в котором написано:
> "The sharing of memory is one very important factor. If your OS supports it
> (and most sane systems do), you might save memory by sharing it between
> child processes. This is only possible when you preload code at server
> startup."
Тут имеет место быть терминологическая путаница. Речь тут идет именно о
расслоении страниц при механизме copy-on-write. Используется же этот
механизм для:
1. Экономии памяти. После fork оба процесса "видят" одну и ту же
страницу до тех пор пока один из них что-нибудь не изменит в
странице. После этого страницы расслоятся.
2. Ускорении fork. Поскольку не производится резервирования памяти,
копирования содержимого, возможно с подкачкой из свопа и выталкиванием
страниц в своп. Этот механизм просто спасение для тяжелых процессов
желающих вызвать внешнюю программу. Они вынуждены делать fork и следом
за ним в дочернем процессе exec. Hе будь этого механизма, огромная программа
сдублировалась бы в памяти (и возможно в свопе) только затем, чтоб
микросекундой позже быть замененой другим процессом.
Андрей
--- ifmail v.2.15dev5
* Origin: Demos online service (2:5020/400)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/5284853d99aa.html, оценка из 5, голосов 10
|