[pso] [tema3] citire inode de pe disc - SOLUTIE

omar Chouydary chouydary at yahoo.com
Thu May 3 00:27:03 EEST 2007


Hello,
     
     Am aflat solutia pentru citirea inode-ului de pe disc, este oarecum banala, dar diferita de cea de la MINIX, unde inca tind sa cred ca se pierd multi bytes degeaba ( m-a ajutat Razvan Deaconescu  sa ma dumiresc).
  Atunci cand avem ino = numarul inode-ului de citit,  in loc sa facem 
   bloc = ino / nr_inodes_per_bloc 
  si offset = ino % nr_inodes_per_bloc
  folosim ceva de genul urmator:
        offset = ino * pitix_inode_size  -> offset fiind pozitia de la care incepe inode-ul pe disc 
                                                         in cadrul zonei IZONE (ino incepe de la 0 NU de la 1)
        bloc = offset / sb_blocksize -> nr. blocului
        off_bloc = offset % sb_blocksize -> offset-ul in cadrul blocului de unde trebuie citit
                                                            inode-ul
   
      Evident, daca inode-ul se continua pe 2 blocuri nu trebuie decat sa se continue de la offset 0, cu bloc = bloc + 1
   
  Sper sa ajute, 
     Omar

       
---------------------------------
Ahhh...imagining that irresistible "new car" smell?
 Check outnew cars at Yahoo! Autos.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://cursuri.cs.pub.ro/pipermail/pso/attachments/20070502/cbb15e80/attachment.htm


More information about the pso mailing list