Writing A Disk-Based File-System For The Linux Kernel V2.4 -
A Loop With 8 Iterations
[Click here to start]
This lecture is also available in
one big HTML file
.
Table of contents
Why Yet Another File-System
General Parts Of A Disk-Based File-System's code
Copy copy, luki luki...
The Disk-Layout Of STAMFS
The Inode Index
The Disk-Layout Of A STAMFS Inode
The Free Blocks List
The Directory Index
Writing STAMFS - A Loop With 8 Iterations
Registering A New File-System
Making It Mount-able
Loading An Inode From Disk
And "Cleanly" Un-mount-able
"Cleanly" Release Inodes
The Lookup Operation
Reading The Contents Of A Directory
Support Directory Creation
Creating A New Inode
Important - Writing The Super-Block
Support Directory Deletion
Support Directory Deletion - The Unlink Operation
Making Changes Persistent
Writing Inodes Back To Disk
Deleting Inodes From Disk
Truncating An Inode's Data Blocks
Creating Normal Files
The create Inode Operation
The unlink Inode Operation
Supporting Files With Data
Truncating Pages In The Page Cache
Syncing Files
Implementing A Disk-Based File-System - Summary
Anyone Wants Some Homework?
References
Originally written by
guy keren