Your Ad Here

Operasi-operasi dalam inode

Posted by Rahadian Syarif | 1:58 AM | 0 comments »

Linux menyimpan cache dari inode aktif maupun dari inode yang
telah terakses sebelumnya. Ada 2 path dimana inode ini dapat
diakses. Yang pertama telah disebutkan sebelumnya, setiap entri
dalam cache menunjuk pada suatu inode dan menjaga inode tetap
dalam cache. Yang kedua melalui inode hash table. Setiap inode
mempunyai alamat 8 bit sesuai dengan alamat dari file sistem
superblok dan nomor inode. Inode dengan nilai hash yang sama
kemudian dirangkai di doubly linked list.

Perubahan pada cache melibatkan penambahan dan penghapusan
entri-entri dari cache itu sendiri. Entri-entri yang tidak
dibutuhkan lagi akan di unhash sehingga tidak akan tampak
dalam pencarian berikutnya.

Operasi diperkirakan akan mengubah struktur cache harus
dikunci selama melakukan perubahan. Unhash tidak memerlukan
semaphore karena ini bisa dilakukan secara atomik dalam kernel lock.
Banyak operasi file memerlukan 2 langkah proses. Yang pertama adalah
melakukan pencarian nama di dalam direktori. Langkah kedua adalah
melakukan operasi pada file yang telah ditemukan. Untuk menjamin
tidak terdapatnya proses yang tidak kompatibel diantara kedua
proses itu, setelah proses kedua, virtual file sistem protokol
harus memeriksa bahwa parent entry tetap menjadi parent dari entri
childnya. Yang menarik dari cache locking adalah proses rename,
karena mengubah 2 entri dalam sekali operasi.

0 comments

Your Ad Here