Re: Threads vs forks

От: Alexey Naidyonov <CGatePro_at_mx_ru>
Дата: Tue 06 Mar 2007 - 13:28:55 MSK

On Tue, 2007-03-06 at 13:20 +0300, Dmitry Rybin wrote:

> > Если Вы про флажок LD_ASSUME_KERNEL=2.4.1, то он просто переключает
> > между двумя версиям потоков в glibc (о чем написано в комментарии выше,
> > кстати). Если его включить, то будет использоваться старая модель, где у
> > каждого потока свой pid. Тогда в выводе ps будет столько строк с CGP,
> > сколько у него потоков. Если его не включать, то будет использоваться
> > NPTL, clone будет вызываться с CLONE_THREAD, все потоки будут жить в
> > одной группе, и в выводе ps этот процесс будет виден одной строкой,
> > если, конечно, не указать -L
> >
> > Так что "форковая" версия CGP Вам придумалась.
> Видимо /opt/CommuniGate/CGServer так и слинкован? > /opt/CommuniGate/CGServer/CGServer-dynamic работает как надо.

Если статическая версия собрана с какой-нибудь древней glibc, в которой нет NPTL, то да, там, разумеется, будут использоваться старые LinuxThreads.

Про плюсы и минусы почитайте тут:
http://www-128.ibm.com/developerworks/linux/library/l-threading.html?ca=dgr-lnxw07LinuxThreadsAndNPTL

SY,
--
 Alexey Naidyonov
 ITooLabs Получено Tue Mar 06 10:28:53 2007

Этот архив был сгенерирован hypermail 2.1.8 : Tue 06 Mar 2007 - 14:14:10 MSK