On Thu, 24 Feb 2005, Alex 'CAVE' Cernat wrote:

> On Thu, 24 Feb 2005 13:41:48 +0200 (EET)
> Mihai Rusu <[EMAIL PROTECTED]> wrote:
> 
> > Singurul lucru ramas de verificat este daca glibc-ul este recent
> > enough (2.3.x?) si daca a fost compilat cu headers de 2.6.x si cu
> > optiunea de NPTL. De exemplu daca lansezi un program care foloseste
> > threads, ca xmms, iti apare un singur proces la "ps" ? :)
> 
> afaik si in varianta noua (nptl) threadurile tot ca procese sunt vazute,
> numai ca sunt cumva 'ascunse'
> la ps trebuie sa folosesti un switch (parca m), iar in /proc apar
> directoare cu . in fata pid-ului

Nu e chiar asa. Kernelul 2.6.x nu mai cunoaste notiunea de proces cum era 
inainte. Exista structuri "task" pt fiecare fir de executie si acestea au 
pointeri catre namespace, structura cu open file descriptors, structura cu 
maparea memoriei acestui task, etc care pointeri pot sa fie mai mult de 
unul catre aceeasi structura.

Deci nu sunt de acord a spune ca tot ca procese sunt vazute. Nu mai exista 
conceptul de proces in kernel. Un proces este un fir de executie ce are 
toate resursele independente. Un thread (conform POSIX) este un fir de 
executie ce shareuieste fisierele deschise, memoria, namespace-ul etc. Pt 
kernel aceste structuri "task" pot fi si unele si altele si chiar 
combinatii intre ele.

> Alex

-- 
Mihai RUSU                                    Email: [EMAIL PROTECTED]
GPG : http://dizzy.roedu.net/dizzy-gpg.txt    WWW: http://dizzy.roedu.net
                       "Linux is obsolete" -- AST

--- 
Detalii despre listele noastre de mail: http://www.lug.ro/


Raspunde prin e-mail lui