Jeremy Powers <jpowers@xxxxxxxxxx> Sun, 06 Jan 2002 14:39:01 -0800: > This is one thing that has bugged me about BeOS (I won't get > started on Windows...). How hard is it to make the reported > file size include the size of all attributes? Not too hard. The trouble is that some older software will break when the file size doesn't match the amount of data it reads. But it could be done relatively easily in OpenTracker so that the GUI display of the file size includes attributes (but it would have to scan the attribute list for each file to add up the attribute sizes, which will make it slightly slower). > How neccesary for FS implimentation is the reliance on one main > data stream? Oddly enough I was discussing this sort of thing in the ReiserFS this weekend. With objects instead of files, the attribute for the former data would only be there (perhaps given an attribute name like "default-data") for backwards compatability for software which opens the file/object using the old APIs (essentially not specifying the attribute name). For that matter, attributes are essentially files, they have a size and a name, plus they have a primitive attribute data type (int-32, double, string, etc). Objects (the new "file") would be like a mini-directory containing attributes. We also thought of having sub-objects (subdirectories), a unique ObjectID and an indexing system for finding things by ObjectID and by attribute values (same as BeOS). Plus, you can convert a file/object into an XML hunk of data and vice versa via reading or writing to a magic virtual attribute. The latest idea is to keep the objects in XML form if they aren't in use, and that would also let programs suck in a small object in XML (reading the virtual attribute) rather than doing file system traversals and so on. We also came up with a better way of doing query evaluation - make the indices appear as directories and have change notification drive the query engine, which would now be in a user level library (so that you could use different query languages if you wished, and that file system writers don't have to make their own query engine). - Alex