Matthew Dillon wrote:
* Implement the filesystem as one big huge circular FIFO, pretty much laid down linearly on disk, with a B-Tree to locate and access data.* Random modifications (required for manipulating the B-Tree and marking records as deleted) will append undo records to this FIFO and the only write ordering requirement will be that the buffers containing theseundo records be committed before the buffers containing the random modifications are committed.
This sounds quite like LFS now. LFS however split the volume in smaller blocks which could be "used", "empty" or "open", IIRC. Their background cleaner then could push remaining data from used blocks to a currently open one, marking the block "empty" after that, allowing the FS to write to the blocks again.
They always had problems with the cleaner, I think. cheers simon -- Serve - BSD +++ RENT this banner advert +++ ASCII Ribbon /"\ Work - Mac +++ space for low €€€ NOW!1 +++ Campaign \ / Party Enjoy Relax | http://dragonflybsd.org Against HTML \ Dude 2c 2 the max ! http://golden-apple.biz Mail + News / \
