[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[GSoC 2012 idea] Ext3 HTree directory indexing
As I understand, implementing Ext3 is quite a complex task.
Currently I'm interested in implementing the HTree directory indexing.
In current ext2fs implementation directories are treated as simple
linked lists .
When the number of items in a directory grows
time required to manipulate this directory increases quadratically.
Ext3 introduces directory indexing where a tree-like structure called an Htree
is used to quickly access directory entries using file name hash values
(currently computed using half-md4 algorithm).
With this entry lookup transforms from linear scan to binary search
and the required time grows close to linearly instead of O(n^2) [2,
see Performance section].
This is backwards-compatible with the code not supporting dir_index feature
so if an ext3 partition with indexed directories is mounted in NetBSD
lookup is performed using linear scan.
A red-black tree in linux implementation is used to hold on-disk htree
As I understand routines in ext2fs_lookup.c are main candidates for
I wonder what do you think about this project
and whether it's worth writing a more detailed proposal.
Main Index |
Thread Index |