Algorytmy metod iget i iput

Wstep

Aby dowiedzieć się co to jest VFS, inode, czy superblock przeczytaj prezentacje pod tytułem "VFS".

VFS trzyma własne odwołania do używanych inode-ów w różnych systemach plików. (Dla zagatwania sytuacji nazywają się one również inode-ami. W tej prezetacji przez inode rozumiem VFS-ową reprezentację konkretnych struktur z wszystkich istniejących systemów plików nazywanych w tych systemach plików inode-ami). Aby zwiększyć efektywność VFS posiada system cache'ujący tworzone inode-y tak, aby można je było szybko znajdować i nie trzeba było zbyt często tworzyć. Cały ten system zaimplementowany jest w pliku fs/inode.c.

Wszystkie tworzone inode-y skojarzone z jakimś superblokiem (czyli z jakimś systmem plików) przechowywane sa w kolejce inode_hashtable (haszowanej po wartości wskaźnika do superbloku, i 32-bitowym numerze inode-a). Inode-y nie posiadające superbloku (na przykład sockety) wstawiane są do kolejki anon_hash_chain.

Dodatkowo inode może też być wstawiony - zależnie od typu - do jednej z poniższych: