[so2] [Tema4] Nelamuriri

Alexandru Preda alexandru.preda91 at gmail.com
Fri May 2 02:33:24 EEST 2014


2014-05-02 2:04 GMT+03:00 Cernov Vladimir <gg.kaspersky at gmail.com>:
> Buna,
>     Am cateva intrebari in legatura cu tema 4.
>
> 1) De ce in pitix.h pentru dimensiunea unui inode este folosit "2 * ...":
> "sizeof(struct pitix_inode) + 2 * psb->inode_data_blocks"?

"2 * psb->inode_data_blocks" reprezinta dimensiunea in octeti
vectorului "data_blocks" al structurii "pitix_inode", acel 2 fiind
dimensiunea tipului de date "__u16" (probabil era mai sugestiv daca se
folosea operatorul sizeof).

> 2) Pentru functia get_blocks, de ce este folosit "8 * s_blocksize"? Care
> este scopul acestei functii?

"get_blocks" iti intoarce numarul de blocuri din dzone (vezi poza din enunt).

> 3) Care este rostul campurilor imap_block, dmap_block, izone_block,
> dzone_block din structura pitix_super_block? Acestea nu pot fi obtinute
> direct stiind block_size_bits si layout-ul superblockului pe disc?

Intr-adevar, si eu zic ca ar fi redundante. Mai scapam de niste mici calcule.

> 4) Care e dimensiunea maxima pentru inode_data_blocks?

De ce te intereseaza in mod special, pentru sanity check-uri? In rest
nu cred ca e ok sa recurgem la alocari statice.

--
Alex


More information about the so2 mailing list