Hi Radu!

On Mon, 17 Mar 2003, Radu Filip wrote:

> On Mon, 17 Mar 2003, Bogdan Marinca wrote:
> 
> > Se pare ca nu am de ales decat varianta asta. Se pare ca la linux(unix) 
> > mecanismul de sharing se realizeaza cu functii speciale. Eu crezusem ca
> > am un flag de open() similar cu cel din win32 referidor la sharing. 
> > Merci mult!
> 
> Nu stiu cat de eficient ar fi, dar poti investiga comanda `lsof` care 
> listeaza ce fisiere sunt deschise si de catre cine.
> 
> In locul tau as incerca in doua directii:
> 
> 1) solutia easy-and-ugly: fie faci un script wrapper care grep-uieste dupa 
> output-ul lui `lsof`.

Merci. lsof incepe si parcurge /proc. Am observat asta cu strace.
Am implementat o rutina de parcurgere a lui /proc si am rezolvat 
problema dar ... overheadul :(


> 
> 2) solutia hard'n'nice: "diseci" sursele lui lsof si vezi de unde isi ia 
> aceste informatii. banuiesc ca le citeste de pe undeva de prin /proc

da, asa e. Citeste din toate pidurile din /proc. De asemena, cele afectate
de flock se afla in /proc/locks

> 
> Si ar mai fi o directie: daca nu ma insel, in /proc fiecare proces are o 
> intrare de forma: /proc/pid_of_process. Vezi /proc/pid_of_process/fd/ care 
> am impresia ca contine referinte (sub forma unor "symlink-uri") la ce 
> fisiere sunt deschide de catre procesul respectiv.

pai asa am facut. Dar credeam ca ma poate ajuta kernelul cumva, mai direct.

Merci!

> 
> Ave,
>   Radu
> 
> -- 
> Radu Filip                    
>                            Network Administrator @ Technical University of Iasi
> [EMAIL PROTECTED]             Information Technology and Communication Center
> http://socrate.tuiasi.ro/  [EMAIL PROTECTED] | http://ccti.tuiasi.ro/
--
Pentru dezabonare, trimiteti mail la 
[EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
REGULI, arhive si alte informatii: http://www.lug.ro/mlist/


Raspunde prin e-mail lui