ПРОЕКТЫ 


  АРХИВ 


Apache-Talk @lexa.ru 

Inet-Admins @info.east.ru 

Filmscanners @halftone.co.uk 

Security-alerts @yandex-team.ru 

nginx-ru @sysoev.ru 

  СТАТЬИ 


  ПЕРСОНАЛЬНОЕ 


  ПРОГРАММЫ 



ПИШИТЕ
ПИСЬМА














     АРХИВ :: Apache-Talk
Apache-Talk mailing list archive (apache-talk@lists.lexa.ru)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [apache-talk] php-cgi ??????????? ? ??????



Sergej Kandyla wrote:
> 
> Господа, возник теоретический вопрос.
> 
> Имем php в режиме cgi.
> При каждом запросе от клиента, апач поновой считывает с винта этот
> php-cgi бинарь в память, выполняет и закрывает.
> 
> Мне утверждают, что апач считывает бинарь пхп в память при первом
> реквесте и дальше берет уже из кеша памяти, а не считывая его с винта.
> 
> Как на самом деле происходит этот процесс? Может ли бинарь пхп
> прокешироваться в памяти и браться от туда. И завист ли это от того под
> каким пользователем идет запрос пхп(suexec).
> 
> Буду благодарен за просвещение!(или за пинок на нужные линки ;)
> Спасибо!

Может зависеть от операционной системы. Операционки семейства BSD,
к примеру, вообще не "читают" бинарники с диска, они мапят файл бинарника
непосредственно в адресное пространство и запускают его оттуда.
Необходимые страницы кода (и только они) подкачиваются в физическую память
при первом обращении к ним системным пейджером и при достаточном количестве
памяти остаются в ней. При следующем (или даже одновременном) обращении
к коду эти страницы просто используются повторно, никакого повторного чтения
с носителя не будет. Всё это происходит для апача совершенно прозрачно,
он выполняет системый вызов execve(), всё остальное оптимизирует ядро.



 




Copyright © Lexa Software, 1996-2009.