Hans Reiser wrote on Mon, 20 Dec 2004 09:21:35 -0800: > Ok, go talk to the befs driver guy, and you'll find out he has already > done work on it.
I just did some work in making a test file system with hard links and bidirectional references (files know which directories (plural) they are in). It uses a simple graph traversal upon delete to do garbage collection. Compared to the sophisticated garbage collection algorithms I was reading about at university a decade ago, it's nothing worth writing a paper about! But still, there was enough new stuff to make it worth writing a text file: http://web.ncf.ca/au829/BeOS/AGMSLinkExplanation.txt And if you want, you can read the excessively commented source code, including a large passage explaining the delete/rename algorithm, at: http://web.ncf.ca/au829/BeOS/AGMSRAMFileSystem20040403.zip Horst wrote: >> Everthing stuff that works on the assumption that what they are working >> on fits in RAM (or can overflow into swap space in a pinch), [...] Admittedly my experiment was for a RAM disk. It can be extended to a real disk if the number of inodes in a graph traversal can fit into memory (or otherwise can somehow be locked). If that doesn't work, then the user would have to delete individual files before removing a directory cycle. - Alex
