Linked by Razvan T. Coloja on Mon 3rd Jan 2011 23:30 UTC
Thread beginning with comment 455739
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
1. The benefits of a database-like file system are not obvious to end users unless the operating system leverages it extensively. BeOS (and Haiku) were built to be run on such a file system, [...]
The BeFS is the biggest point I don't like on BeOS/Haiku.
In that filesystem there can be files with different sizes and every file can have unlimited numbers of attributes. And every attribute can have a unlimited size.
For example the program "peoples". It saves the addresses only as attributes of empty files. I can input in it a complete telephone-book, but when my disk-space come to an end, I search for the biggest files to delete them and not for the smallest one.
"StyledPad" mixed that: Write only text-files and the styling as attributes.
Also imagine computer-viruses and so on, which extends every file with lots of big nonsense-attributes. Or viruses, which writes itself as attribute to files, etc.
2. Object-Oriented API. On Be/Haiku, C++ is the primary low level interface with the OS. This is simply not applicable to Linux and never will be for a multitude of technical and political reasons.
And what is the advantage of it? There are not much kernel-developer on Haiku and Linux. Will an OOP-API mean, that more kernel-developer will come? Is it so more secure? Or have it advantages for the user?
3. Focus on multi-threading/responsiveness. [...] Linux concerning the balance between performance vs responsiveness makes it obvious to me that it is difficult to do both well. [...]
Linux have more driver then Haiku and exists additional in 64bit.
I think both is very important. For example graphic-card driver and so on. If Haiku don't close in. then it can not be faster then Linux. Video-playing, 3D-games and so on are driver things. There it don't help, that Haiku have a nice API.
I search for the biggest files to delete them and not for the smallest one.
That's only a minor UI issue: add a 'total file size' which would be the sum of the file size and the attributes sizes and your issues are solved.
If Haiku don't close in. then it can not be faster then Linux.
Depends a lot of what you consider 'faster'!!
BeOS was much more responsive than Linux..
Given that Linux still mostly focus on throughput and servers instead of desktop, it's quite possible that Haiku reproduce BeOS's superior responsiveness.
RE[3]: its time has gone
by Jack Burton on Wed 5th Jan 2011 10:30
in reply to "RE[2]: its time has gone"
1. The benefits of a database-like file system
Also imagine computer-viruses and so on, which extends every file with lots of big nonsense-attributes. Or viruses, which writes itself as attribute to files, etc.
Also imagine computer-viruses and so on, which extends every file with lots of big nonsense-attributes. Or viruses, which writes itself as attribute to files, etc.
This problem is not exclusive of BFS. NTFS supports attributes too (they're called 'streams') since at least 10 years, and there are already viruses that take advantages of them.
In windows, though, unlike beos, there are not many applications (besides viruses/malware) which use the stream api (I'm not even sure there is a nice api to use)




Member since:
2006-01-25
I don't see it that way. Most of the essence of Be/Haiku do not translate very well to other operating systems...
1. The benefits of a database-like file system are not obvious to end users unless the operating system leverages it extensively. BeOS (and Haiku) were built to be run on such a file system, and most applications needing database-like functionality default to using it since it is already there. As such the advantages are very pronounced. Attempts at similar file systems on Linux have been poorly received for the most part, since they tend to focus on only one aspect of it (search) and applications rarely if ever leverage it. It kind of a chicken-and-egg thing imo.
2. Object-Oriented API. On Be/Haiku, C++ is the primary low level interface with the OS. This is simply not applicable to Linux and never will be for a multitude of technical and political reasons.
3. Focus on multi-threading/responsiveness. The thing I don't think many people realize is that the focus on such pervasive deep reaching multi-threading in Be/Haiku is closely tied to the single user desktop use case. It is built to juggle a whole lot of small things at the same time in order to maximize responsiveness as much as possible. While this doesn't preclude the use of long running resource hungry processes (i.e. server processes), it certainly doesn't encourage them. It was built ideally to allow running hundreds of light-weight processes that were built to be preempted often. Linux simply has different goals, it wants to service a wider range of usage. The long running debates about kernel scheduling in Linux concerning the balance between performance vs responsiveness makes it obvious to me that it is difficult to do both well. In Be/Haiku responsiveness is paramount, no other OS takes this approach.
I could go on, but the point is most of the ideas in Be/Haiku are not all that useful when looked at in isolation - it is the whole that is unique imo.