[pso] [tema4]buguri

Costin L lukablurr at yahoo.com
Thu Jun 4 16:08:33 EEST 2009


> Deci in unlink tu trebuie sa apelezi inode_dec_link_count. Directoarele
ar trebui sa inceapa cu nlink == 2 (pentru > directoare incrementezi
nlink-ul in iget), deci in rmdir trebuie sa apelezi unlink + inca o
data 
> inode_dec_link_count. Functia delete_inode se va apela doar cand
nlink ajunge la 0 (deci dupa doua 
> inode_dec_link_count daca nlink era
initial 2). Functia destroy_inode se va apela oricum (chiar daca
returnezi 
> eroare, ca sa elibereze struct inode *).


Politically correct e sa nu faci nici o incrementare de nlink
pentru tema pentru ca, asa cum e mentionat in labul 10, 
"pentru sistemele de fișiere fără link-uri (fie ele hard sau 
simbolice) [i_nlink] este întotdeauna setat pe 1".
In momentul in care se creeaza un inode nou, functia new_inode 
seteaza direct nlink pe 1. 
La 'minix' nlink pentru directoare incepe cu 2 pentru ca se 
considera si intrarea '.' (current dir).

Costin


      
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://cursuri.cs.pub.ro/pipermail/pso/attachments/20090604/0722fd08/attachment.htm>


More information about the pso mailing list