To understand what the BeOS and Haiku operating systems are, we first must remember that BeOS was developed with the multimedia user in mind. BeOS wanted to be what OS X has become today: an easy to use, attractive operating system. However, BeOS was a niche OS, destined for the media-hungry user. The percentage of audio and video applications available for Haiku is greater than the one in Linux, OS X or Windows, and the inner workings of the operating system were created in such a way, that the same multimedia passionate would find it easy to work with the user interface and files. Each application can interfere with other applications of its kind. A WAVE file selection can be dragged from a sound editor and onto the desktop, to create an audio file. Audio applications can interfere with each other via the Haiku Media Kit — the corespondent of a Linux sound server. Applications like Cortex are a perfect example of how BeOS and Haiku deal with multimedia files: you can have more than one soundcard and use each one of those soundcards independently or separately. You can link one soundcard to the Audio Mixer, start a drum machine application and link that software to the Audio Mixer. If you want to output whatever you create with the audio application, all you have to do is drag the microphone and link it to the application’s icon in Cortex.
Everything in Haiku is about simplicity. You can drag and drop a file unto an application’s window and if the program can handle the file type, it will open it up instantly.
When BeOS failed to deliver as a commercial operating system, the Haiku team took over and created a BeOS from scratch, making the operating system open-source. Haiku is a POSIX-compliant OS that at first looks appears to be a clone between OS X and Linux. While the UI might appear not as polished as OS X’s Aqua and the application base might be much smaller than that of Windows, Haiku is nevertheless the fastest of them all.
Imagine starting up a full-featured Fedora distribution with the speed of a simple GeeXbox Linux distribution. In VirtualBox, with 512 RAM base memory and a CPU of 1,83GHz, Haiku boots in exactly ten seconds from the bootloader menu to a ready to be used desktop. Shutting down the operating system takes a full three seconds on the same virtual machine. Haiku also works on older machines and the boot time varies a couple of seconds worth with a 500MHz processor and 256 SDRAM. With just 358MB of harddrive space occupied by the default installation, Haiku does not need a SWAP partition like Linux but instead it can use a SWAP file for virtual memory.
The native filesystem that Haiku uses is called BFS (Be File System) and is a fully 64-bit capable journaling file system. Just like EXT3 or XFS, it is case sensitive and can be used on media storage devices. Most importantly, BFS has support for extended file attributes (metadata) and has indexing and querying capabilities. In many ways, BFS acts like a relational database. BFS can handle up to two exabytes when it comes to file size limit. You can find BFS support in the Linux kernel under the name BeFS (for practical reasons, not to be confused with the UnixWare Boot File System that has the same abbreviation as Haiku’s filesystem).
The operating system in itself has been developed in C++ and has an object-oriented API. The individual servers and APIs are known to BeOS users as “kitsâ€. There’s a Networking Kit that provides all the functionality needed for networking. There a MIDI Kit that deals with the MIDI protocol. The latter is also tied to the Media Kit that handles all things video and audio.
One of the differences between Haiku and other UNIX-like operating systems is the Translation Kit. This has nothing to do with language but instead is a collection of libraries that deal with specific image files. The Translation Kit is composed of modules, each designed to read, write, convert a certain graphic file format. To be able to view JPG files – for example – you need to download one of the JPEG Translator binaries and copy it in /boot/system/add-ons/Translators. Once you do that, there’s no need to restart the Translation Kit server for the new settings to take effect. You’ll be able to view JPEG files instantly, once the binary file is in it’s place. Translation Kit libraries – also called “Translators†– are preinstalled for the most common image file types that vary from GIF to SGI to RAW. Translators can be downloaded separately from BeBits, the biggest repository of BeOS and Haiku software.
Haiku keeps things simple, with simple applications and simple configuration options. With a minimum of effort you can install or apply something and that something just works as it should – be it an application, system setting or search query.
The operating system focuses less on the command line since it’s easier for the user to use the fast user interface. There is a BASH port in Haiku with a suite of common UNIX binaries like diff, tar, rm, route, grep, ssh or traceroute ready available. Like Linux distributions, BeOS also had a package system. PKG files could be installed with the help of SoftwareValet. There were no online repositories available at that time and the installer application itself could handle files only from the GUI perspective. Haiku has a project trying to bring back the days of the PKG files with a project that will be written in the Haiku API. Today, most of the software available for Haiku comes in ZIP packages, with many open-source projects being ported from Linux and BSD. Device drivers and applications alike. QEMU, ScummVM, HandBrake, the Realtek RTL8132 Family Driver are just a few of them.
Haiku’s folder structure is somewhat different from the one we’re used to see in Linux since the operating system was developed with the single user in mind.
Some may find it strange at first that a UNIX-like operating system has no multiuser access implemented. This is just another thing that separates Haiku from OS X, Solaris and Linux. Its folder structure may resemble Linux and OS X, it may have a BASH prompt, but at heart, Haiku is a single user operating system. The owner of the files will always be “baron†and the group you’ll be in will always be “usersâ€. This is because the developers wanted to use the UNIX-like structure but saw no need for multiuser access in the days of the BeOS.
Since it has no multiuser support, it has no /root folder, the current user being the one and only administrator of the system. The root of the filesystem holds the volume names. Everything is treated as a file, just like in Linux, only from a single user’s perspective, volume names appearing as a disk in the root of the filesystem. The main disk volume is also called /boot and contains the /home folder, the /preferences and /system folders, the applications folder called /apps and other three system folders. The /develop folder, for example, holds the header files and system libraries needed for compiling binaries, the compiling tools and afferent documentation. By default, the /boot/home folder has the following simple structure:
/boot/home/config /boot/home/mail /boot/home/queries .bash_history
Haiku keeps things organized in an effective manner, not piling up folders in the user’s workspace folder. System files the non-technical user doesn’t want to see are hidden away deep in other parts of the system.
/boot/home/config holds the user’s configuration files and is similar to Linux’s /usr/bin folder in many ways. This is the place where the user’s screensavers reside, the Tracker add-ons, the Translator files, everything that belongs to the user. In Haiku, many of the files are symlinked to one another and many of the folders appear even two or three times in different parts of the system, in a well-thought but chaotic technical ecosystem.
There are two components that define the Haiku desktop: the Tracker and the Deskbar. From a Linux user’s point of view, the Tracker is a crossbreed between Nautilus and GNOME itself. Nevertheless, it is more than a file manager and together with the Deskbar it forms the entire Haiku desktop component. The Tracker can manage file operations but can also decide how the volumes on the desktop are visible. It is a file manager but also an interface for some of Haiku’s most-used system settings; like SVG (Simple Vector Graphics) icon size or access to the user Add-Ons (that could be better compared to Nautilus’s script function). The Deskbar on the other hand integrates the Tracker and the Registrar, the latter handling the application processes.
Some applications also have the ability to detach themselves from their window and stick unto the desktop. They are called Replicants and you can identify them by the tiny arrow residing in the lower-right corner. You can drag this arrow and embed a copy of the application in the Desktop.
From the security point of view, being a single-user operating system built on an UNIX-like structure, Haiku does not yet pose a security risk. It’s main use is for the desktop and there are next to no servers running on a Haiku operating system. Having a small userbase and being POSIX-compatible, there are no viruses for Haiku. The only thing that comes close to malware in Haiku would be a malicious BASH script or a logic bomb. There’s no login screen to protect the user before reaching the desktop and this could be regarded as a risk. Risk that could be overcomed with the help of a library called Real Multi User or with third-party software like Lock Workstation.
The Tracker can manage extended attributes. In detailed file view mode, Tracker displays ID3 tags taken from MP3 files as editable attributes and it’s a matter of a few clicks to add custom ones to multimedia files.
Another interesting thing about Haiku and the BFS filesystem is that – like I mentioned before – it acts like a database. Whenever you search for a file, a query file is formed that holds the search results for that specific query you made. You can later re-make that particular search by simply clicking on the file that’s automatically saved in /boot/home/queries. The speed by which queries take place thanks to the BFS filesystem is simply amazing. You could compare it with how fast you get results from a pre-indexed Linux filesystem by the use of locate and updatedb. Queries can be manipulated and edited so that the entire search formula is displayed to the user in a true database manner. An old project called TrackerBase, developed by Scot Hacker, can take those query results and transpose them in HTML format by using only a native Haiku webserver called PoorMan’s Webserver. You can better regard queries as a less powerful variation of an SQL server’s results.
Generally, Haiku GUI applications have a very small memory footprint. This is a reminiscence from the BeOS R5 era (1998-2001) when most applications were simplistic and didn’t require many resources to run. Things changed now in Haiku with the appearance of resource-hungry software like Firefox – and consequently – Haiku ports of those open-source applications. Haiku comes bundled with Firefox Bon Echo (version 2.0.0.21pre). BeZilla uses 52940KB of memory when opened. This really has an impact on the overall performance of the operating system that’s used to lightweight software.
Haiku’s goal was to maintain backwards compatibility with BeOS R5 binaries so that applications developed for the last version of BeOS could run without problems in Haiku. Sadly, since the development of BeOS ended in 2000, those third party applications running now in Haiku were developed for an age that ended ten years ago.
The operating system is currently sin Alpha stage, with a WebKit port and a WiFi stack prototype in the works. Unlike in Linux, where the developer base is ever-growing, the progress of the Haiku Project took time to reach this milestone, with a release candidate rumored to appear by the end of the year.
Being an open-source BeOS alternative, Haiku follows the same footsteps as the operating system Be Inc. developed. It stands apart from other projects like AtheOS, Syllable, QNX RTOS or MenuetOS because of it’s long history. Sadly, given the lack of developers and with interest in BeOS fading over the years, the Haiku project has had a slow progress. That doesn’t mean the progress wasn’t steady.
Razvan T. Coloja is a 31 year old Romanian freelancer. He has published IT articles on Linux.com, Linuxforums.org, in Linux Magazine, Ubuntu User Magazine, MyLINUX, MyComputer and Connect Magazine. Currently he’s working as a SEO expert for a webdesign company.
I have nothing against BeOS or Haiku, but I think their time has come and gone. I wouldn’t mind seeing their ideas applied to a Linux distro. They seem too intent on bringing back Be rather than build an OS with a certain set of capabilities.
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.
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.
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?
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.
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.
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.
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)
What a waste. Yay more crappy Linux.
A bit rudely stated, but I feel the same way. The last thing I want to see is yet another Linux distro instead of something ~really~ different.
I can see why this gets downvoted, but it’s true. We have enough linux distros – Haiku aims to be something different and that’s why it’s interesting.
You know, that’s kinda the whole point behind Haiku R1 as I understand it. The first release is intended to be a recreation of BeOS with unique, more modern features as well as full backwards compatibility with BeOS, and they appear to be doing a very good job at this. The second release and beyond are going to drop BeOS compatibility and become even more modern, becoming more of its own OS with each new release.
At least, that’s my understanding. And I think it’s a very good path to take.
1 thing that bugged me was this: “It stands apart from other projects like AtheOS, Syllable, QNX RTOS or MenuetOS because of it’s long history…”
QNX pre dates BeOS, by over 9 years…
I’d agree. It’s a nice article and the writer has obviously put in a significant amount of time on it, but there are some definite technical errors.
QNX RTP was released in 2000. As I recall, the name was changed to QNX RTOS and released in 2001.
Edited 2011-01-04 01:09 UTC
The first release of QNX was in 1982. BeOS wasn’t usable until the late 90s.So technically QNX predates BeOS for over a decade.
Edited 2011-01-04 02:10 UTC
QNX isn’t “free” anymore. It is a professional real time system (think ATM machines, Robots, assembly line monitoring, etc), something BeOS never claimed to. Even Linux only supports true RTOS as a custom Kernel because it’s HARD.
Likewise AtheOS (& by extension Syllable) pre-date Haiku by several years. Haiku have certainly done more in a shorter time, though.
I’m sorry, but I don’t understand all the BeOS hype. BeOS was nice in the past, but it’s not longer attractive. The list of things that needs to implement to catch up is longer than the list of advantages over other OSs. It would be a great OS if it has been developed and maintained properly. Sadly, it wasn’t. OS/2 was also nice, but that doesn’t mean it has a future.
Take a look at the composited&accelerated&animated graphic systems that you can find in every modern OS these days (hint: Haiku isn’t included in the list), take a look at the declarative UI APIs that are emerging these days. I’ll take Wayland + QML over Haiku any day. Same for Tracker vs Dock. Touch based phones/tablets? Forget about them. Pervasive multithreading? Apple’s Grand Central Dispatch beats it. BFS? ZFS/Btrfs are much better. BFS attributes? Nepomuk can do what the BFS atrributes did and more (it may even possible to implement BFS attributes in Btrfs)
To change the world, Haiku needs to fix many shortcomings, and then create new features that leave other OSs behind. Sadly, I don’t think it’s going to happen. I’m not against Haiku, it’s fun to have an opensource BeOS clone, but it’s not going to change the world, sorry.
Edited 2011-01-04 00:24 UTC
It wasn’t ever even “nice”, it was just extremely promising, like a gorgeous tech demo. The reason is, of course, that most of the important apps sucked (and still do), or weren’t there at all, or were buggy shareware with few features distinguishing them from more mature free tools on other OSes.
And now? Well, I haven’t checked in a couple of months, but if WebPositive still isn’t on par with Firefox, the OS will still not be “nice” in general use, although possibly a great hobby OS, if you can live with its shortcomings. BeOS may have been an OS with a great future once, back in the day, but sadly that future was only imaginary.
Can you mix in all of Wayland + QML, Dock, Touch based phones/tablets, Apple’s Grand Central Dispatch, ZFS/Btrfs and Nepomuk into one OS platform? I doubt. BeOS has all those features you mentioned long before most of OSes afaik.
And I don’t really want features for eyecandy on OS interface.
Technologies that work as part of Linux operating systems:
Wayland+QML, Touch interface, Phone/Tablet, Btrfs Nepomuk
Hmm… That sounds an awful lot like Meego ( not sure about Nepomuk).
I speak as a long time BeOS lover, so it pains me to say this, but Linux does so very many things better than BeOS ever did. Its always easier to add features to a stable ( both in terms of architecture and in not crashing), secure, documented, adopted operating system that any other OS has to really find a niche that others cannot meet. Like QNX.
IMHO, adding every feature imaginable isn’t the way to succeed in today’s technological world. Computers have long been able to do much more than what 95% of people need them to do. A ridiculous number of people still use XP, which was first released back in 2001. It wouldn’t surprise me if more than half of people could suffice with nothing but a webbrowser.
I think the way to succeed is to do the vital stuff well. Eye candy might be nice, but I prefer instant actions (e.g. opening a folder on the desktop, Haiku takes under a tenth of a second while other OSes average ten times that). With Haiku you can boot, do your work, and shutdown in the least amount of time. The GUIs are multi-threaded, rarely modal, and have a speed that make using any other OS downright frustrating.
Agree totally with that. The desktop is now a mature market with relatively well-defined user expectations, what modern desktop OS developers should focus on IMO is the quality of the implementation. Making things bug-proof, responsive, reliable, lightweight, etc…
I can’t agree here. We have some mini-revolutions still in the pipeline:
– Non-crappy email (Chandler tried and failed, waiting for someone to tackle this)
– “Semantic” stuff. RDF, Nepomuk, Tracker. All the data really interconnected and discoverable intuitively.
E-mail clients are a thing of the user-space, not a core part of an operating system.
About semantic filesystems, well… I still wait for them to become actually easier and more fun to use than a good file hierarchy, but that could indeed be a small revolution in a few dozens of years, once it has matured a bit. In meantime, I think we should better be busy creating a lockup-free, rock-solid desktop to run it on, since it’s something we can make for sure with today’s technology and research ^^
Edited 2011-01-04 19:37 UTC
Everything is part of user space these days, but point taken .
I was thinking “more userspace” again, these semantic systems store their data in normal databases (sqlite, virtuoso …). Perhaps it could benefit from some fs support, but it doesn’t appear to be needed yet.
Indeed, I had more the “user-replaceable” concept in mind. You can freely switch from one e-mail client to a highly different one without losing application compatibility or hugely changing your user/developer experience (apart from the mailing part) in another way, so I don’t consider them as a core part of the operating system.
But wouldn’t that mean that applications see the hard drive in a different way than users do ?
Edited 2011-01-04 20:04 UTC
Both views of the hard drive are always available to both users and applications, as they choose to request it. You can hide a lot of the real view by using semantic browsers as your “file open” dialog (without legacy applications so much as knowing such a feature is available).
Likewise, a music player application would no longer have own library maintenance functionality. Rather, it would just request “all music” and get it, regardless of where it is.
This would only apply for files under users home directory. /usr, /var, /opt would remain as they are.
Okay. I was rather thinking of a more in-depth modification of the filesystem, where applications operating at any level can see “semantic” folders and files as if they were actual files and folders on the filesystem.
As soon as they can operate files, they see the semantic filesystem. And nothing differentiates real and virtual folders from a file manipulation point of view, unless you explicitely want to know the difference.
In an UNIX-like OS, it could be implemented as some kind of mounted filesystem… After all, if we can implement encrypted filesystems and have them work with legacy apps without modifying them the tiniest bit, we can also implement a semantic filesystem in the same way, right ?
Edited 2011-01-04 21:56 UTC
Unless I’ve missed something, Haiku isn’t aiming to run on “touch based phones/tablets”. Nor are Linux desktop projects such as Gnome, KDE and Xfce. So what?
Does it? GCD is “just” an abstraction layer to pervasive multi threading. If anything it appears it’s everyone else who is finally waking up to the idea of pervasive multi threading.
ZFS is not a lightweight desktop filesystem, and Btrfs has a long way to go before it is stable.
You’ve confused an API with an application. The equivalent of Haiku (BFS) attributes are POSIX Extended Attributed (xattrs). On Linux there are a bunch of operating systems which implement xattr support, including ext2, ext3, ext4, JFS, ReiserFS, XFS and Btrfs.
Nepomuk is an example of an application which uses xattr’s. In fact, it’s one of the few examples of an application which makes use of xattrs in any meaningful fashion. It seems that Linux developers really don’t know what to do with them, and continue to blunder on making the same old fashioned mistakes.
GCD is “just” an abstraction layer to pervasive multi threading.
Well, they both allow running code in multiple processors. Other than that, they are radically different. Programming multithreading in BeOS is hard, Apple could have done it as hard as BeOS, but instead they decided to extend the language and implement a system that hides most of the locking complexity from the programmer. And then, GCD has a thread dispatcher.
ZFS is not a lightweight desktop filesystem, and Btrfs has a long way to go before it is stable.
There goes more disinformation. BTW, Btrfs is not stable but somehow Haiku has an advantage?
You’ve confused an API with an application. The equivalent of Haiku (BFS) attributes are POSIX Extended Attributed (xattrs)
BFS attributes are completely different to UNIX xattrs.
No, they’re not. GCD still uses threads. Code written with GCD is still multi threaded. GCD just abstracts the details away. It’s nice, but it’s not like thread abstraction models haven’t ever been done before.
No, it really really isn’t. Asynchronous message passing and high level APIs make multi threading very very easy.
Do you disagree that ZFS is not a lightweight OS designed for desktop users? I’d love to see your arguments to support that particular claim. As for Btrfs, I never said Haiku had an advantage, but BFS is certainly not at a disadvantage when compared to Btrfs in terms of maturity. Not even the Btrfs developers suggest using Btrfs for anything other than testing at the moment.
No, they’re the same concept. Both allow you to store arbitary key:value pairs against an inode. Oh, wait, you’re right: POSIX xattrs have no way to stat() an attribute. You just have to try and read it and see if it’s there.
The utterly dire state of documentation for POSIX extended attributes may be one of the many reasons why they’re so poorly utilised.
Asynchronous message passing and high level APIs make multi threading very very easy.
“Asynchronous” and “very easy” in the same sentence!
Do you disagree that ZFS is not a lightweight OS designed for desktop users? I’d love to see your arguments to support that particular claim.
Of course. ZFS is a general purpose filesystem, it was designed with cheap disks in mind. It can be used in desktop and in fact many people is using it daily. It would be funny if you were trying to tell me that there is some kind of resource usage impediment to use ZFS on desktops.
No, they’re the same concept. Both allow you to store arbitary key:value pairs against an inode.
Except that BFS doesn’t store anything “against” an inode. In BFS, and unlike other Unix filesystems, every attribute “type” is stored physically in its own tree, with leaves pointing to the inodes. That is what allows BFS to do database-like search and modification operations really fast. In a tradicional unix filesystem you would need to scan the whole metadata tree, find all the inodes and then check the xattrs, which is way too expensive. And which is the reason why unix filesystems do not have a BFS-like query api.
But it is. I really can’t fathom how any developer who’s actually tried any of these Be-like APIs can find the concept difficult.
Yes, it is “general purpose” filesystem. That term has a specific meaning, and it isn’t the one you’re trying to use. Yes, it was designed for “cheap” discs: large SANs comprised of cheap discs.
Of course it “can” be used, and I don’t doubt that there are people who do. That doesn’t make it the best file system for everyone. It is a memory and CPU intensive file system. People who use ZFS on their desktops have traded speed for a bunch of features which they will very likely never use. Why bother?
Except that BFS doesn’t store anything “against” an inode…[q]
You’re worrying about implementation details. I’m talking about the APIs: both BeOS and POSIX provide a simple API to read and write extended attributes. Both APIs allow you to read and write key:value pairs for a given inode. There is nothing stopping someone from writing a BeFS-like Linux filesystem which organises it’s xattrs in the same way as BeFS.
Edited 2011-01-04 20:04 UTC
You’re worrying about implementation details. I’m talking about the APIs: both BeOS and POSIX provide a simple API to read and write extended attributes. Both APIs allow you to read and write key:value pairs for a given inode.
Sigh. Then why don’t you read the APIs before talking about what you don’t know? In BeOS there are APIs similar to xattrs and then there are more things. BeOS APIs like open_indexdir or open_query are not realistically implementable in a POSIX xattrs filesystem.
Thanks, I know what the APIs are. The Syllable APIs are very similar to the Be APIs. The index API is not the attributes API. You do not have to have an index to use attributes.
Oddly enough all you’ve managed to do is prove that the Be API has more features and is far more mature than the POSIX equivalent, which is odd when you started with:
You’ve managed to disprove your own assertion. Nice work.
*Sigh*
No, the BeOS API is not “better” than the POSIX API, it needs to be that way because it’s implemented in the wrong layer. Nepomuk is far more powerful than the Be API, and it doesn’t has any special dependence in xattras since, unlike BeOS, it doesn’t use it as a database store. Linux 1, Beos 0, I rest my case.
Oh I’m sorry, I didn’t realise that was all it took. I thought we were actually attempting to have a detailed technical discussion of the various technologies. Never mind then.
No, this is wrong. The point of using ZFS is only one: it protects your data.
Researchers have showed that XFS, JFS, ReierFS, etc do not protect your data. And researchers have showed that hardware raid does not protect your data. Researchers have showed that ZFS protects your data.
Here are research papers to all my claims:
http://en.wikipedia.org/wiki/Zfs#Data_Integrity
OK. I suggest you go try and use whatever desktop OS takes your fancy, on top of the ZFS file-system with a 1Ghz CPU and 512mb of ram. Then while your waiting for it to actually “DO” something, dig out another equivalent system, install BeOs/Haiku on it and set it to your liking. You’ll have plenty of time before the first 1 finishes, honest!
I used ZFS on a Pentium 4 with 1GB RAM for over a year, and a ZFS raid. It worked fine, but slow because P4 is a 32 bit cpu. I got like 30MB/sec.
Question: But, why do you think ZFS is resource intensive? What does it give you, that no other file systems dont?
Answer: It protects your data, whereas no other filesystem does not protect your data – according to researchers:
http://en.wikipedia.org/wiki/Zfs#Data_Integrity
Are you trying to imply that it was not a magical revolution invented by Steve?
http://download.oracle.com/javase/1.5.0/docs/api/java/util/concurre…
http://doc.qt.nokia.com/4.6/threads-qtconcurrent.html
GCD makes it easy for mortals to do mutli-threading, while simultaneously making it easier for the Operating system to provision threads more efficiently. There is no exact equivalent on any other modern desktop operating system. Although group scheduling in linux could be configured to have a similar effect, with a lot more effort.
It’s still just a thread abstraction model. There are many of them. GCD is nice, but it is not unique in that sense.
I also vehemently disagree that there is anything particularly difficult about writing threaded code. I am certainly not a superhuman and find it easy enough.
“Threading is hard” is the meme that just wont die. Developers hear that “threading is difficult” so they never try. They never learn how to do it, and when they finally must do it for something they resent it and inevitably make rookie mistakes. Because they made mistakes, “threading is hard”, obviously.
GCD makes it easier for developers to express threaded execution paths without having to muck about in POSIX APIs (which has it’s warts, as do all APIs). It doesn’t solve the problem that developers still need to think in terms of threads and learn how to split their code into something that can be effectively run in parallel.
No, its more than just a thread abstraction model. Its an improved thread provisioning model. Its like a threadpool, but Operating system wide.
Ok, I now regret using the word “mortals” in my first response. That’s being too kind to those that are not capable of doing it with OS level api’s. Its as difficult as using pointers correctly. Some devs/ cs students just cant get it.
Side note. I once replaced a dev that managed to use threads in Visual Basic ( Impressive!), but didn’t understand concurrency. It was confusing as to why he went out of his way to make it possible, but then didn’t pay attention to any of the ramifications of parallel operations accessing the same data structures.
I don’t know you, so maybe what you say is true for you… I on the other hand have been programming for over 20 years, have done quite a lot of programming for different concurrency models in different languages.
I’ve done straight win32 type threading (i.e. using raw threads and synchronizing using mutex/semephore), a bit of posix threading, using forks on Linux, Java threading, C# threading, asynchronous programming/message passing, overlapped IO, etc. etc. etc. I have not done any BeOS/Haiku development, so I wont speak to that.
Anyway, all of these approaches to concurrency were picked up with various levels of difficulty – some were easy to get my head around, some were harder – none were what I call terribly difficult. The concepts are not the problem…
The problem with pretty much all forms of multi-threading (ignoring asynchronous programming, forking, and other forms of non-threaded concurrency because they are fundamentally different) is not how hard it is to understand, or how hard it is to write code for. It is HARD to debug properly. I don’t trust a programmer who says it is easy, they just haven’t done it long enough. The language/runtime can help tremendously, some are much better than others – but even the very good ones are hard to debug.
It is very hard to do correctly in an optimal manner, and it takes years to recognize when your code is doing it wrong. It has a tendency to work perfectly fine 99% of the time – its the other 1% that gets you, and usually not until after you shipped.
So yeah, you can say it is easy for you. And it might be – for you. But I can honestly say I avoid it most of the time unless the payoff is very very big. It sometimes is worth the effort, but as my experience grew I realized better algorithms and other forms of concurrency besides threading can get you better, more predictable and maintainable results.
Well, I did some casual programming on the BeOS, I have an app listed on BeBits and Haikuware (hey, that binary compatibility thing actually works!).
If I had to choose one BeAPI concept that really stands out I would definitely choose the whole handler/looper concept. It _is_ simple. As a matter of fact my first thought was “where is stuff?”. I really feel that the whole concept is both simpler and more flexible that many other frameworks and it does its magic with very basic C++, no template voodoo or anything, so it can be easily mapped to any OOP prog. language.
You pass messages, you handle them – essential locking (handlers) is done for you. If you make another message looper (like a window), then a new thread is created for you automatically. Of course, you can still do MT the old-fashioned way, remember – this is a messaging framework it is not a solution to everything, but for what it is designed, it works well.
As long as you pass and handle messages, you are fine. On top of that there is a high level of orthogonality – drag and drop, inter-app messaging, app scripting, mode monitoring.. you name it – it is all the same concept, the learning curve is excellent! The only thing I miss is perhaps some handy hooks for app scripting. I mean they did them for everything else.
HOWEVER… BeAPI is not for a total beginner. You do need to be a reasonably proficient computer programmer. But you know what – what’s wrong with that requirement? Nothing any of us could not achieve.
Edited 2011-01-05 09:01 UTC
Hmmmm…GCD is not what you think it is.
If you try and use the same data structures from two different ObjC blocks assigned to different threads, the behavior will be undefined.
GCD does not solve the problem of data sharing between threads, which is the biggest problem with threading.
Who cares if ZFS is a lighweight desktop filesystem? That it utterly unimportant how lightweight a filesystem is — as long as it protects your data.
Research shows that ReiserFS, XFS, JFS might corrupt your data. As well as hardware raid can corrupt your data. Your data is not safe.
It requires ZFS to protect your data:
http://en.wikipedia.org/wiki/Zfs#Data_Integrity
I dont care how heavy a filesystem is, as long as it protects my data.
And HaikuOS BFS does not protect your data. Neither does BtrFS
What’s with all the negative comments? How close minded are you seriously? Everyone needs to start somewhere.
Android started somewhere when Symbian and iPhoneOS were ruling the world and look at it now. BeOS might have had their chance but Haiku hasn’t and let me remind you, BeOS is open source (an organized open source unlike the Linux desktop mess).
Everything in Haiku is about simplicity. You can drag and drop a file unto an application’s window and if the program can handle the file type, it will open it up instantly.
Hmmm I wonder if this is handled by default by the OS itself and makes it super easy for the programmer. With Windows, you are out of luck. You have to register the window as a drop target and do your stuff with DragQueryFile and handle the dropped files manually. A few steps process.
Edited 2011-01-04 00:51 UTC
It’s not enabled by default, but it is really easy to do drag and drop in Haiku. I’ve done it in less than 20 lines of code. The API, while sparse compared to all the myriad features provided by Win32, GTK+, or QT4, is really easy to code for.
Android doesn’t have as much ground to cover. People aren’t trying to stick their printers and scanners into the cell phone ports.
Haiku has some interesting features but the lack of multiuser is a major black eye.
Lack of multiuser on desktops? So you mean winxp, win7 with terminal server enabler patch is a good “multiuser desktop” environment?
Besides privilege elevation, daemons which run with other UIDs, a desktop envi does not need multiuser mode.
I noticed its possible to add other users on Haiku and su in with them then run programs or ssh in so its still there.
For first test the 2 things I didn’t like was WebPositive crashing like hell (some case have to kill the bg process otherwise it wouldn’t resolve hosts anymore) and the vmware 7 audio card is not recognized so I can’t test the sound.
The blog entry is great so as this OS. Keep up the good work and keep it simple.
Someone also wrote that its just another crappy linux distro, its not but from those I srsly had enough. I don’t even bother spending any time anymore on testing new garbage like Zenwalk because there is no reason to do so and the online package repos might just die out for good for a version after 3 months then you can go QQing to their forums with 5 active users…
Some day during the holidays I had to use a compiler environment which was installed in ubuntu interpid then noticed that the distro is obsolete and deleted out from the archives as well so the “just works tm” no longer applies for apt-get. Thats exactly what describes these small crappy linux distros.
Their only use is to build targeted stuff from it like net sharing gws, webservers what you install once then runs for 5 years.
Linux desktop setups can be very reliable but over the years I saw the exact opposite, for example old SuSe distros were crashing more than windows did (even tho the kernel was still running in the background but the deep consoles + X completely died). Not to mention the DBUS screw ups which still causing applications misbehave, crash, disappear from gnome toolbar. Throw in next to this more automated crap like avahi daemon, hald, udevd and you might just hope your ubuntu desktop won’t die at next update
At least most of these dbus “issues” are fixable with rming .gnome2 specific dirs from your home but some user reinstall the whole OS for sure.
So you are fine with desktops always booting to root?
The Linux desktop has issues that need to be resolved like updates which is why I have said that it needs to bake for 3-4 years. Haiku would take even longer and would be a major step back in security. New systems should provide greater privilege separation, not less. They should have forked FreeBSD and added a Haiku like interface on top. I understand coding for fun but….a single user, 32 bit system? Why not build upon all the work that has gone into improving *Nix security models?
There are other security models than multiple users. In my opinion, an capability-based and app-centric security model would be a better fit for desktop use.
They wanted BeOS compatibility, and it’d have been hard to provide that starting from a FreeBSD fork. Besides, current Unices are not necessarily perfect for desktop use (monolithic kernels, scheduling not targeting responsiveness, user/admin security model…), so it’s not necessarily bad to see a new breed of kernels better suited for that, even though it means that progress will be much slower.
Edited 2011-01-04 17:43 UTC
Problem is that you have environments where multiple users actually exist and are not just aspects of a security model. Even if you discount the enterprise you still have homes where people are used to being able to have separate accounts. Sure you can start pwording everything to remember settings but by the time you’re done you will have a half-assed multi-user system.
The multi-user underpinnings of Unix are solid and mature. It’s insane to ditch some of the best aspects of Unix in a POSIX compatible syste.
I’m guessing you mean BeOS internals because there isn’t some BeOS library worth accessing. I consider Haiku a project motivated by nostalgia and as such should not be a full clone but instead a layer.
It would be much easier to fork an existing kernel and tweak it for the desktop instead of cloning BeOS. I think the main problem with the Linux kernel is the lack of a binary interface, not the scheduling.
Haiku may seem very responsive but then so is Windows 98 on newer hardware. We’ll see how responsive Haiku is once they’ve added some security layers and GUI effects.
Try Haiku on slow hardware and get back to us about responsiveness. Kthxbye!
There was such an attempt to do BeOS on Linux: Blue Eyed OS. Eventually it was abandoned before completion.
http://www.blueeyedos.com/
(and the vmware 7 audio card is not recognized so I can’t test the sound. )
Install the OSS Driver package from Haikuware.com and sound works perfectly in VMWare 7. Card is detected as (ES137x).
Actualy i concider the lack of multi-user a pro.
The whole multi-user and even remote access of current operating systems is causing a lot of security and bloat problems.
So your solution to privilege escalation attacks is to give everyone root?
There are other ways to protect system files then to think in root/user.
If you have multiple users accessing the same computer then you need file separation. Do user files need to be separated and encrypted? If so then why not have a multi-user system?
And how many home computers are accessed by multiple users?
Hint: few.
I can’t find the damn link, but I believe the results from Microsoft’s Customer Experience Improvement Program showed like 90% of machines having only one user (the owner). There is no need whatsoever to DEMAND multiuser OR ELSE. There ARE other ways to make machines secure. Why focus on a fringe use case (i.e., home computers with multiple users), when you’re such a small effort?
I wouldn’t call the enterprise a fringe use case and multiuser systems don’t demand that you make multiple accounts.
A lot of XP machines shipped with auto-logon enabled so I’m sure that factors into all the account sharing in Windows. Windows 7 and Vista are more encouraging of using multiple accounts.
Since when is Haiku targeting the enterprise?
(I wouldn’t call the enterprise a fringe use case)
Haiku is hardly aimed at the enterprise market. (Yet)!
Besides, my 10 year old BeOs 5 machine which is single user, has never been hacked or caught a virus yet, even while running a ftp server!
See http://blogs.msdn.com/b/e7/archive/2008/10/08/user-account-control…. .
Wow, so more than 70% of Windows machines have just one user account, INCLUDING the enterprise world?
That’s a far larger percentage than I expected (my 90% estimate excluded the enterprise). Pretty shocking.
If multiple humans use a computer, then do some home folder redirection at boot and you’re done. Letting multiple users log in simultaneously is much harder, and it’s a mainframe carry-over that’s been rehashed into a security measure.
IMHO, it’s not even a particularly good security model as you need things like UAC and sudo, your home directory isn’t protected, and the prevalence of privilege escalation exploits suggest it’s difficult to properly implement.
lol, the rest of that blog is hilarious!
Sorry, but after the (negative) SkyOS experience (they were going to overtake Windows and conquer the World. Look where they are now) I am suspicious of hobby OSes claiming that they can change the World.
Even if they have great, innovative ideas, it takes tons (say million dollars) of money and a large team of devs in order to get anywhere.
If they tell me that they can create a nice hobby OS, I can believe it.
It is different from SkyOS. Haiku OS is not a one-man show..
Well, actually I have never seen the devs make that statement. This is the statement of some guy who is exstatic about Haiku. Haiku has an uphill battle for sure and I certainly have no expectations of world domination or some such, and I doubt the devs does either.
We *never* claimed that we wants to change the world with Haiku.
Ever.
No. Just the usual secret world domination aim is far enough for us.
🙂
The difference is, this is some article claiming Haiku will change the world. I doubt that its writer is affiliated with Haiku in any way, other than being a fan. There’s also the annual “Year of Linux on the Desktop” articles too, and they don’t mean much for the most part, but those don’t change reality; IMO, Linux is excellent on the desktop and my 4+ years with it have proven it for me. Even if “Linux on the desktop” hasn’t yet even hit the double-digits in usage share.
Also, as someone else mentioned, Haiku is developed as open source by a group of people… SkyOS was developed by one guy who just wanted to make money off his OS and gave up when “real life” got in his way. And because the source has been closed by its creator and sole developer so long ago, SkyOS can no longer go anywhere. Haiku has a future; SkyOS doesn’t. Whether that future includes Haiku getting popular or not, who knows, but I imagine it will steadily get new users and developers, and will continuously get more modern.
Even if “Linux on the desktop” hasn’t yet even hit the double-digits in usage share.
“Linux on the Desktop” seems to be struggling to hold even a single digit in user share:
http://gs.statcounter.com/#os-ww-monthly-200912-201012-bar
Doesn’t matter one bit to me. Still doesn’t change the fact that it’s excellent on my desktop, and has been my preferred OS since mid to late 2006.
I recall reading an article by Caitlyn Martin claiming that Linux’s total market share is more realistically near 10%, and depending on what your definition for “desktop” is, many Red Hat-based systems that traditionally are counted as “workstations” could possibly count as desktops.
Edited 2011-01-04 08:49 UTC
This is a third party article, you now, this is internet, anyone is free to express his opinion
That’s more or less what they tell you!
Please ignore all of the negative comments posted to sites such as this because these users are not your audience. Don’t let these comments discourage you (I know it’s hard but keep moving).
You are doing a great job developing Haiku. You started with nothing and look what you have now. I am sure you will fix everything with time.
Continue to do what you do, ignore non-optimistic comments and think positive. There is always a way! You have done a great job so far.
To the contrary I expect that technology and computer enthusiasts, like the folks who regularly read OSNews, are the primary audience of Haiku.
Wrong, so very wrong in so many ways. Users commenting on sites such as this are linux users. Linux is their target OS and it is aimed at these users too. Haiku is Haiku. There is no point comparing Haiku with Linux. It is not trying to be linux. There is no point ranting about features it doesn’t have (yet) and comparing to linux”. It is not linux! BeOS’ objective and target audience was clear “desktop and multimedia”. Although these people are reinventing the wheel, at least they are making it round unlike linux.
If I were interested in Linux, I’d be at one of the thousands of Linux websites, not at OS News.
I certainly don’t want Haiku to be Linux, or vice-versa. See my comment way above.
Edited 2011-01-05 02:59 UTC
Not everyone. I use Mac OS, MorphOS, Amiga OS, and Linux at home. Pretty much in that order. I’m more than happy to give a new OS a try if I can find a use for it.
That used to be the case here, but for too long there hasn’t been enough activity outside of Windows/Linux/OSX, and the majority of readers have moved into one of those three camps, and now reject anything that isn’t part of their OS of choice.
1. Somebody on the team gets a clue about marketing. The marketing mailing list has not seen a single post since … January 2007 (http://www.freelists.org/archive/haiku-marcom). Booths at techie shows are great for a hobby OS. They are not going to change the world.
2. A wide variety of development tools becomes available and supported. Not everybody likes C++. Yab seems stuck at v1.5. Bethon is not being updated and the documentation for it is sadly deficient. And … well, that’s it, really. There are a lot of languages that you can use to write command-line utilities for Haiku. Yawn.
3. The old BeOS productivity apps get unearthed, licensed and UPDATED. Gobe Productive could still serve well, if it got translators for .odt and .docx, for example. Right now, you can use Haiku to … play around with Haiku. Again, great for a hobby OS, but not world-changing.
4. Haiku users stop falling all over themselves every time a QT/KDE app gets ported. If I wanted to run those in a sentimental BeOS-like GUI, I would simply run ZevenOS. Native apps is where it’s at.
And all of that, I am afraid, is going to take money. Wanted: eccentric millionaire with sentimental attachment to BeOS. Spacefaring experience not required but will be a recommendation.
Marketing is just a tool that you can use to help achieve your strategic goals. For marketing to work effectively, its purpose has to be aligned with the goals of the people that make things happen, in this case the coders, and it has to work from within; marketing in a vacuum does not work.
What I mean by this is that, no matter how active a marketing mailing list could be, unless the developers themselves are willing to participate in the discussions, can agree with the conclusions reached in those discussions and (more importantly) are willing to put the effort to make them happen, it would all end up being just words in the air and no action. Being this open source where the “scratch my itch” modus operandi usually prevails, this is unfortunately the most likely outcome (good example: the R1 survey they recently did looked like a nice marketing exercise; but strangely, they ended up putting funding in a place from different from where the survey results were telling them).
The core developers at Haiku do not seem to be doing this with a business mindset nor do they seem to have “changing the world” as a goal (AFAICT). And while there may be no official statement of how Haiku is being positioned, the dynamics of the project do seem to point in the direction of a hobby OS. That being the case, Haiku can only be marketed as such; any expectation beyond that is unrealistic, with marketing or without it. Loads of money could change the dynamics; whether the eccentric millionaire of your dreams ever appear remains to be seen. One can only dream for now.
AFAIK the survey was first made amongst the devs and then extended (by something of a whim) to an open survey. Needless to say that while the overall results would have been interesting reading for the devs, their own internal voting and discussions regarding it is most likely what decides what is prioritized and what is not. Which is as it should be, if the ‘community’ wants to direct development efforts towards something in particular, bounties is always an possibility.
The main motivation of the Haiku devs have always seemed crystal clear to me, making the desktop OS they themselves want to use. Which is also why this talk of success or failure is pointless, if none other than the devs themselves end up using Haiku then it’s still a success.
Undoubtably they would welcome some kind of commercial opportunity to work full time on Haiku, but if that was a major motivator they would have given up years ago. As it stands it would be the icing on the cake.
Valhalla,
I understand what you say and even agree with most of it. The point that I was trying to make is simply that Haiku is a developer centric project, not a marketing driven one, and that this is not likely to change (see the statement that I quoted).
True, but are there any spare-time developed open source projects that are NOT developer centric (meritocracies)? Without the developers the project is dead, marketing on the other hand is not essential although it can be very beneficial.
Again, we agree. I was not claiming otherwise, but rather replying to the message stating that Haiku could change the world if they got a clue about marketing (http://www.osnews.com/thread?455803). I was not implying anything beyond that.
By the way, developer centric does not necessarily mean meritocracy, but I digress.
>> the percentage of audio and video applications available for Haiku is greater than the one in Linux, OS X or Windows <<
Given that there are much less software in Haiku that there are even in Linux, comparing the percentage of software is meaningless.
>> Queries can be manipulated and edited so that the entire search formula is displayed to the user in a true database manner. <<
I can display and edit my scripts which use ‘find’,’grep’,etc does-it make my filesystem a database??
So I didn’t find the article very good..
But for Haiku:
-I wonder if the browser which use WebKit’s port use the same design as Chrome i.e each webpage in a different process or everything in the same process (which has security and performance issues)?
-I hope that Haiku is as responsive as BeOS was, even with complex applications such as webbrowsers..
Actually yes. A filesystem is a database.
They can be simple filesystems or they can be rich metadata filesystems. ext2, ext3, ext4, HPFS, NTFS, (Open)BFS, SkyFS and several others are rich metadata filesystems. In regard to ext2, ext3, ext4 and NTFS the functionality have largely been left unused for reasons I don’t understand.
I like how OS/2 and Syllable both use extended file attributes to store the mime type of a given file. Gnome and KDE seriously lack this. OS/2 also very nicely allows for individual icons for a file. It’s simply an extended attribute. I believe the vector icons used in Haiku are extended attributes as well, but I might be wrong. Windows, Gnome+KDE and to some extent also OS X are seriously behind on this one.
I agree, that’s why I was criticising the article which didn’t explained very well what was exactly the difference in BFS and the other.
Oh, it’s easy to understand: these functionnality are really useful when they are used ‘pervasively’.
So adding the support of this feature in an existing OS is very difficult: only a few application will use it, users will complain that they work differently than the rest of the OS, etc.
It’s a sociological issue, not a technical issue..
Welcome back to 1998!
People say things like that without realizing that many of the key technologies in modern operating systems (multiprocessor support, multithreading, security bitmaps, etc.) have been around since the 1960’s.
Some OSes in 1998 had features which nothing popular today seems to possess, sometimes even with third-party add-ons.
So what? BeOS failed back then, it’s hard to see how a half-assed clone could “change the world” today, competing against much more evolved operating systems. Unless the only purpose of suggesting it is to have a good laugh of course.
Nothing wrong with it being a hobbyist OS, just don’t hype it as anything else based on wishful thinking and a delusional view of what software engineering is all about. We have the year of Linux on the desktop for that, there’s no need to bring more guests to that party.
Choice is good but only if it’s Linux?
I think you completely missed the point of my post. Let me make it more clear: unrealistic hype based on wishful thinking is bad. We’ve had enough of that with Linux.
Hope there’s no confusion now.
Yes, I did misunderstand you; my bad. I get it now and I also agree with what you said. Note, though, that in general the Haiku devs are pretty realistic, and most of the wishful thinking (including this article) comes from elsewhere.
Actually, it’s more 2001, as the last BeOS version, R5, which is the general features target of Haiku, was released in 2001.
See, 3 years less older than you think initially.
🙂
My blog crashed and burned today due to the OSNews effect. I hope I’ll get it back up soon.
I think the BeOS legacy is a bit overplayed. Haiku has its obvious roots – but it is a completely new OS. I believe this isn’t emphasized enough.
And as such it struggles to gain complete features and programs. If anything the BeOS compatibility helped Haiku get more traction and interest – and even some SW.
I personally like the “zen” philosophy behind Haiku a lot. It is a very clean, welcoming operating system – no sensory overload, manageable.
If 1/10 of the Linux developers would code for Haiku I think we would have the best desktop OS ever created.
Unfortunately the world of free software (almost) only knows Linux and ignores other very interesting new OSs free and open that would really make a difference…
There’s more than Linux out there.
Edited 2011-01-04 13:37 UTC
…but the chances of doing so are miniscule, making the article title quite laughable, really. In the desktop world, Windows dominates, Mac OS X is a slowly growing second and Linux is hovering around 1-2%, barely increasing at all. *Every* other desktop OS is below 0.1% or worse – Haiku doesn’t even register as a tiny blip in the “Others” category.
The only Open Source desktop OS with any chance at all at the moment is Linux and it is simply stifled because all the major OEMs are beholden to Microsoft volume discounts and won’t pre-install Linux. Dell have tried, but their efforts have either stalled or been “hidden” in obscure corners of dell.com.
I’m still confused why the major OEMs can’t ship a machine with no OS and clearly state that only the hardware is supported. Not only would users get a choice of OS, the prices would be lower and non-Windows OS’es would have a better chance of being installed. It’s the only route Linux or even Haiku could ever establish itself in the market, but sadly the OEMs are scared of losing their Windows licence volume discounts (Microsoft would threaten them with worse terms I bet too, even if it was illegal). I’ve been able to buy servers for work for years from various major OEMs with no OS shipped, so why not desktops (and laptops)?
I wish people would stop blaming Linux’s failure on the desktop on Microsoft and OEM deals. Fact is, nobody wants to use Linux. At best, it’s a slightly better Windows than Windows. It’s not revolutionary, it doesn’t solve day-to-day problems much better (or even better at all) than Windows and OS X. It really offers very little for folks who don’t have specific reasons to want to use a Unix-based OS. Add to that the fact that it is still finicky with hardware, especially graphics cards and things like that, and has buggy software, or just plain lacks software that is available on Windows and OS X and you have a recipe for failure. On the desktop, it’ll always be a niche, unless it can actually start offering up something truly different and valuable. Right now, we seem to be getting cheap and incomplete clones of Windows and OS X. Nobody wants that.
Junkware is the missing factor. OEMs not only get paid to install junkware but also get a cut every time subscription software like anti-virus software is renewed.
X) No multi-user
X) No real existing application base
X) The OS is barely used on the desktop, let alone the fact that there this thing is not running on any mobile platform in any capacity
X) It has no server functionality
X) Its limited to the Desktop only currently
I could keep going and going but really what is the point.
Its a neat ‘retro’ experience and another open source OS for hackers to play with but that is really it.
I’d say OS/2 has a better chance of ‘changing the world’ than Haiku at this point and I don’t see a snowballs chance in hell of that happening either!
Its time to move on, to let go and to find peace.
The horse is dead so please stop trying to ride it!
When was the last time you actually USED this on your desktop box?
At least here in The Netherlands, we stopped using multiple logins like ages ago – when people need their own account at home (where Haiku is targeted at), they generally get their own computer. I’d hazard a guess that 95% of home computers sold last year have only ONE user account – that of the owner.
Chicken/egg. Not Haiku’s failing.
Chicken/egg. Not Haiku’s failing.
Nor is Windows NT.
And?
And?
This morning actually, but I wasn’t thinking ‘home use’ when I raised this complaint, but use within a business context.
It may not be Haiku’s failing but how is this OS going to ‘change the world’ when it brings nothing ground breaking to the table vs. what is already there?
At least with a heavily used existing application base it would have some existing value and it could be argued that a foundation exists which it worth extending.
To a degree yes it is, MS is at least attempting to position Windows 7 as a tablet OS and is working to provide options for developers when it comes to moving applications to the Phone platform.
You also have Windows Embedded which may show up in various devices in the near future.
Not that I think MS is going to survive the mobile explosion or really take us anywhere in the future. They have proven that they don’t ‘get’ where computing is going quite well at this point.
The world is moving to ‘the cloud’ (*yeah I hate the buzzword too*) and mobile computing.
Haiku has no server presence, it provides no application hosting abilities on the internet.
It has almost zero vendor support for any commercial software.
It is not running on any mobile devices.
This OS is going to change the world!??!?
Beyond a few ‘cool’ design ideas under the hood it has nothing going for it as a mainstream OS let alone a game changer!
That Netherlands bud you are toking sounds like it may change the world more than Haiku ever will! Ship me some of that sh*t!!!
I use that _all_ the time. The argument “I don’t use it, so it isn’t useful to anyone.” was NEVER a valid argument!
A operating system which doesn’t support multi-user in 2010 is useless. Period.
Agreed. But when you’re talking about changing the world you should somehow also be able to attract developers.
Well, it currently lacks a lot of essential features and hardware support. So, yes, it’s Haiku’s problem!
So are Linux and MacOS!
Nothing “and”. Any modern operating system nowadays has server capabilities. Again, the argument “I don’t use it so the rest of the world won’t need it either” is not a valid argument. That’s just stupid. Don’t tell other people what they need and should do.
Which reduces the possible user base and, thus, reduces the amount of applications developed for it.
Seriously. I see that Haiku is really a nice project and I actually already knew BeOS from release 3.1 (I once ordered a LiveCD from Be back in 1998 to test it). But it lacks so many essential features and applications that it won’t be any serious competitor in near future.
All these claims that it’s so superior when it comes to multimedia over Linux, MacOS and Windows might have been true for 1998, but not for 2010. Seriously.
Adrian
Humour me. In what way?
The argument “I use it, so it is useful to everyone” was NEVER a valid argument!
Yet another person who parrots the party line without actually providing any reasoning as to WHY this is supposedly the case. I used to be in your camp, but over the years, my position has shifted. Nobody truly USES multiuser on their machines, since at least where I live, if you’re old enough to need your own computer, you just GET YOUR OWN COMPUTER. This is further validated by Microsoft’s data (still looking for that damn link).
As computers are moving towards unique devices, instead of shared ones, the additional overhead and complexity multiuser adds becomes a burden, not a necessity or even a blessing. Security can be achieved in other, less intrusive and less taxing ways.
The recent Christmas holiday when my brother was home. He didn’t have a desktop machine so he used mine. I didn’t want him to have access to all my stuff so he has his own account.
Any of my friends that visit have their own accounts.
I don’t mind letting friends and family use my computer but I don’t want them to use my SSH access, update my Facebook profile or send out email under my name.
Yes, I think some of my friends might do that as a joke. I’d think it was pretty funny to do it to them.
Therefore, I am very careful with my destop and laptop where I have email and web passwords stored and SSH agents running.
Edited 2011-01-05 16:15 UTC
X) No multi-user
X) It has no server functionality
X) Its limited to the Desktop only currently
All of that is by design. Multi-user will probably be implemented eventually, but probably not how you’re thinking. Haiku will never be a better Linux than Linux, nor a better Windows than Windows. IMHO, that’s the only way to make something truly great since it’s impossible to surpass that which you are fixated upon.
X) No real existing application base
It runs BeOS software fine. There’s also posix compatibility and QT. OTOH, if you’re an application centered user (e.g. photoshop or games), run the OS that has them.
X) The OS is barely used on the desktop, let alone the fact that there this thing is not running on any mobile platform in any capacity
It runs great on my laptop and I’ve heard netbooks as well. There’s also an ARM port in progress. But you won’t find it for every architecture in existence, like Linux, since it’s not designed to be an embedded or server platform.
It’s odd…I just had a look at the aforementioned web site and it seems all application respective web pages are discontinued: http://bebits.com/browse/128
They all return 404 pages, error messages, messages saying the project has been discontinued, default web host pages, spam domains, etc…
For all of you with strong emotional ties to Linux or other OSs saying that Haiku doesn’t have this or that or the other thing including market share…
Haiku is in ALPHA right now. ALPHA. ALPHA. Keep repeating that until you get a clue.
How in the world do you expect an Alpha version of an OS to have everything including loads of apps. I don’t care if BeOS existed 20 years ago. Haiku is now and whatever happened then, happened then. This is now. That was then.
Anything can happen but it will take time. For instance, take Linux before it got to 1.0. Take everything you think Haiku should have and compare it to Linux back then. Did Linux meet most of your criteria? No.
As for Linux getting 10% or more market share, it will have to change DRASTICALLY. For anyone other than nerds, Linux is a PITA.
It doesn’t matter what YOU think. It matters what John and Jane think. Can they go to a big name store and buy a big name computer with Linux on it? It is EXTREMELY hard to do that. All the sales people keep pushing people to Windows, Windows, Windows.
As it is, even Apple only gets a small corner of Best Buy or other stores. With that kind of presence in stores, for Linux or Apple, it would be a really hard sell to get people to buy either of those.
Where Apple is succeeding is that when they couldn’t get a bigger presence in stores they created their own. That, along with iPods and iPhones and now iPads are bringing people around to Mac laptop and desktop computers.
But back to Haiku. I LOVE that it exists. I remember having a 486 computer and running BeOS R5 on it and having SIXTEEN videos running at the same time without missing one single frame of any of the videos. As for the audio, it never missed a step there either. I could click madly between all 16 videos and the audio would switch instantly to which ever one I picked. Try that with only two videos on Windows or Linux or OS X. Sorry but it doesn’t work like that on them.
Haiku is about creating and using media. It’s about taking video or audio and doing something with them. If what you want to do in life is something else, then Haiku probably isn’t for you. That doesn’t make it ANY less relevant than what you use.
iOS IS Mac OS X with just a different graphical interface and tuning for smaller devices, BUT the OS is still OS X.
There are over 10,000 computers where I work. There is less than 5% of the computers that have multiple “workers” that use that same computer. We do also have an account with administrator rights of course that we use when we remote into the computers. So I guess you could then say that 100% of our computers have multiple users.
On the other end of the scale, there is one computer that has 24 active Windows profiles on the computer. Active meaning all of them have logged into this one computer in the last 30 days.
We have some computers with lots (over 100) users but there is only one account (other than our “admin” account) that is like a guest account. This isn’t for public use but for people that need to get onto a computer to do their time card or sign up for benefits and so forth.
We have other areas where there technically are multiple users which multiple profiles but these computers are mostly used to quickly check email and they use a web based email interface and almost never log off whoever is currently logged into the computer. These are people like vehicle maintenance people. These computers have no access to any sensitive information unless they login into a web based company page for time sheets and so forth.) The boss has his own computer.
For the vast majority though, very few computers have multiple users. We have more users with multiple computers than we do computers with multiple users with individual logins.
Haiku is not aimed at any of these people. It is aimed at graphics people, it is aimed at video people, it is aimed at people that manipulate audio, it is aimed at people that do two or all three of these things. It is also aimed at people that consume audio and video in higher degrees than “average” people.
Meanwhile the OS will also be slow gaining the ability to do more and more main stream things.
I don’t have any connection with Haiku or BeOS other than as an enthusiast. I don’t call myself a fan(atic). I just like to keep things real.
without 3d drivers, tv tuners, and without sound card support, your project is going to get nowhere. At the end of the day I don’t care what your OS does, I care if I can get it, install it, and actually use my hardware. If the answer is no then I will not use it. Linux has been successful because it has the hardware support. Any other project will take around a decade to get to the same place.
Edited 2011-01-04 23:30 UTC
Good news then, as the Haiku project started in 2001: the decade ends this year.
It is:
very quick…noticeably so
very clean…
Lacks apps…but looking those up.
I like it.
Hey, this is a great article. I knew nothing about Haiku but was interested in learning, and by reading this single article I got a good overview.
Great with the screen shots, too. Instead of loading it up and trying it out I got a good feel for what Haiku’s about right here.
The only question I would have is about the title. For an OS to become predominant, marketing is a big part of it. In the absence of marketing even a technically-excellent system may not do well. My guess is that it’s too late for Haiku to get major marketshare on technical merits alone.
Oh, for people who give credit to Linux I want to show my Linux faq. http://linux-faq.org/eng/index.html
Personally I do not see any perspective in Linux. The system is exist more than 20 years and still can’t get single percent of the market! It’s obviously talk about it’s advantages.
this isnt a linux topic , its a beos topic.
next , i think that linux has more than “a percent” of market.
third the fact that you dont see any perspective in linux, its not a linux problem, its your problem.
and finally, i read a few topics of your linux-faq.
let me just ask … are you a twelve years old idiot who has a playstation 3 and think you know all about computers ?
i hope you are … if you are older than twelve years old and still think that way … you are really dumb
>i think that linux has more than “a percent” of market.
You may think that Linux is take 90%, but in real world it less than 1%! Linux complete failed!
>third the fact that you dont see any perspective in linux, its not a linux problem, its your problem.
Really? It’s now my problem, I stayed Linux few years ago and pretty happy that I do not spend my time to it more.
>and finally, i read a few topics of your linux-faq.
It’s bad that you do not speak russian language, some sense was lost during translation.
i dont think that linux is 90%. nobody really knows its market share. should be less than 10%.
“linux complete failed” ??? you dont really understand linux or open source , do you ?
and for a person that doesnt understand a bit about a topic, you make a FAQ about that topic.
carry on … spread the miss information.
for someone that is pretty happy to not use linux to create a “linux-faq.org” … dont know what to think
really … for your own good, you should try to improve yourself, read more, open your mind. its not a point of linux is better than X or Y, but you clearly do not understand what is linux or why people use it. still, you dont even try to understand and worse, you pretend you understand everything about it.
>i dont think that linux is 90%. nobody really knows its market share. should be less than 10%.
Yes, you are right it’s less than 10%, it’s 1% or even less. You may say that all of your friends are use Linux, but I may say that “Members of these subcultures meet together, talk to each other and actually pondering the whole world should consist of people like them, while the other “stupid cattle†– are species on their way to extinction.”
>”linux complete failed” ??? you dont really understand linux or open source, do you ?
Did you read FAQ?! “Linux is, in most cases, the ideology of open source, and exactly Linux clearly enough shows us systematic problems of open source in general”
>and for a person that doesnt understand a bit about a topic, you make a FAQ about that topic.
>you clearly do not understand what is linux or why people use it.
And what is Linux?
>still, you dont even try to understand and worse, you pretend you understand everything about it.
Do you sure that you understand about it more than I or people who used Linux for a log time and than decided to stay it?
… but it’s vapo
Just a note about word choice: “interfere” is probably not the best option, as it has negative connotations (it sounds like you’re saying that applications can prevent each other from functioning properly). You probably want “interact”.
I appreciate the article and the enthusiasm of the author but any commenters here should realize that certainly didn’t come from the Haiku project.
I’m a Haiku developer (one of the less active ones) and my goal is certainly not to change the world. I just want to make an OS I’d like to use. If other people like it too, great. I think the same philosophy applies to most, if not all, of the other Haiku developers.
Also I don’t think people appreciate what the project has done with very little resources. The amount of paid developers that companies like Apple or Google have on just components like WebKit is absolutely huge compared to all the developers who work on Haiku (mostly for free and in limited free time), which is an entire OS. The Linux kernel developers alone greatly outnumber all the Haiku developers, and again, Haiku is much more than a kernel. Yet we seem to have made something which is compelling and better in quite a few ways (mainly because of Haiku’s BeOS heritage.)
Haiku won’t take over the world (Microsoft, Apple and Google just have too much money and existing mindshare and users) but I think it does have a place, otherwise I wouldn’t bother working on it.
And as others have said: Haiku is still in development and has only been released as alpha. Sure in a perfect world we would have released an amazing Haiku in 2005 and would have feature-parity with Mac OS X, Linux and Windows by now with Haiku R3 or something. But we don’t live in a perfect world and the resources the Haiku project has are limited, so here we are in 2010 still without an R1 release. But we will get there, and after R1 I think things will start to accelerate as more third party developers come on board. I think the popularity and meteoric rise of iOS as a platform is a great example that new platforms can still gain mindshare (though maybe it isn’t a good comparison given Apple’s resources, but it still shows that new platforms can succeed.)
Obviously Haiku won’t rise like iOS did, but to say it is a completely dead platform is also flawed.
Finally in regards to WebPositive, I’m working on improving it now, and fully intend to make it the best browser I can (since I also fully intend to use it as my primary browser one day, and it has been my primary browser as of late.)
Regards,
Ryan Leavengood
nicely put
How about getting at least basic modesetting down for modern GPUs? And fixing the HDA driver?
Adam