|
发表于 2005-12-6 20:11:31
|
显示全部楼层
[color="Red"] 5. What is the fragmentation policy of JFS and how is it dealing with it?
Steve Best: JFS uses extents, so that reduces the fragmentation of the file system. We do have defragmentation utility that will do defragmentation on the file system.
[color="Red"]3. What is the fragmentation policy of ReiserFS and how is it dealing with it?
Hans Reiser: This is an area we are still experimenting with. We currently do what ext2 does, and preallocate blocks. What XFS does is much better, they allocate blocknrs to blocks at the time they are flushed to disk, and this allows a much more efficient and optimal allocation to occur. We knew we couldn't do it the XFS way and make code freeze for 2.4, but reiser4 is being built around delayed allocation, and I'd like to thank the XFS developers for taking the time to personally explain to me why delayed allocation is the way to go.
[color="Red"]
5. What is the fragmentation policy of XFS and how is it dealing with it?
Nathan Scott: XFS was designed to allocate space as contiguously as possible. It's an extent-based filesystem, has features like delayed allocation, space preallocation and space coallescing on deletion, and goes to great lengths in attempting to layout files using the largest extents possible (an "extent" being an offset and a length within a file).
The ability for XFS to _not_ fragment the filesystem is such that XFS on IRIX survived for many years without any filesystem reorganisation tool, but eventually the need surfaced in a specific application environment, and a defragmenter was developed. This tool attempts to redo the allocation for a file and if a more optimal block map can be created, switches the file over to using that block map instead. |
|