Tuesday, December 28, 2010

Haiku OS Development

(original post 7/29/2010)

In early May of this year, the Haiku development team announced the availability of Haiku R1/Alpha2 (Release 1, alpha 2). A typical software project will include daily builds, followed by alpha releases, followed by beta releases, followed by release candidate builds, and then the final release.

For those who are unaware, Haiku is a free and open source desktop operating system that takes over where the proprietary BeOS left off in 2003. BeOS was designed from the ground up circa early 90's to compete with Microsoft Windows and Mac OS. Although it never gained the traction it deserved, it had features that were far more advanced than it's competitors at the time.

Haiku is fast, clean, and slick. It's elegant and beautiful in design. The performance of this OS is absolutely fantastic. The overall performance is, in my opinion, better than any other OS I've ever tried. I suggest running Haiku on your computer off the hard drive to see what your computer's hardware is really capable of. Haiku is designed to take advantage of multi-core/multi-processor computers unlike anything else. Every process in the OS is a thread. This allows the CPU much more versatility in carrying out its processing requirements. It also allows for multi-threading from a single processor. This is not anything new for a modern operating system, but Haiku has been doing these things since it's inception in 1991 and it does it better and to a greater extent than anything else out there.

Earlier I wrote a blog about the advantages Linux offers over proprietary OSs. Well Haiku has, more or less, all of those same advantages. In some cases, such as speed, memory usage, and hardware requirements, it beats Linux hands down.

This system uses around 160 MB of RAM, even with several apps running. Wow. Boot time is also incredible. But with Ubuntu aiming to have a 12-15 second boot time by next year, it won't be winning that arena by the same wide margins for long. I can't say enough about the speed of this system though. It's fast. It's mind-blowingly fast. It's earth-shatteringly fast. It's ball-crushingly fast. It screams. When you launch an application it jumps out at you as fast as you can blink. It makes me smile every time I launch an app!

Haiku is perfect for hardware that is limited on resources, such as a netbook. If India's $35 tablet comes to fruition, I imagine someone could get costs even lower using Haiku due to the lower resource requirements.

Haiku is nascent in terms of open source operating systems, so naturally the selection of applications is pretty thin at the moment. There are some games available for Haiku, but it's not a big list by any standard. However, the Haiku developers successfully ported a development framework called Qt for its use. This means all applications written for Qt on other platforms will work with Haiku. Right off the bat this will vastly expand Haiku's software offerings to include an abundance of media players, IM clients, games, browsers, and a well respected office suite, KOffice.

The user interface is, quite simply, plain Jane. It's not very flashy. In today's day in age I think of this as a good thing. It's right down to business. It has yellow tabs as title bars that don't span the full length of the window as a normal title bar would. Here are some images from Google for Haiku. I have a gut feeling they will evolve the UI once they get the underlying kernel/operating system working well.

The file system was designed and implemented very well. It uses BFS, a modern, 64-bit capable, case-sensitive, highly customized journaling file system. BFS has also been successfully implemented with the Linux kernel and is an installation option on some modern distributions of Linux. The Haiku file system layout is, in my opinion, more intuitive than any other OS. Both Windows and Linux seem very cryptic from the top of the file system hierarchy. Haiku is more easily interpreted by novices. If you install Haiku, have a gander for yourself.

Speaking of which, I might mention that the Haiku installer is really easy for a novice to use. I was dumbfounded on how easy it was to install. For a project that's still in the Alpha development phase, I have nothing but praise for where they stand right now. For anyone out there who's ever installed/reinstalled Windows, you're in for a real treat with Haiku. You will feel like your cheating!

The transition from a completely proprietary OS to an open source OS has not been exactly a walk in the park. They have had an ambitious team working since 2003 to get this off the ground for you and me to enjoy free of charge. So kudos to the Haiku development team. They have been replacing lines of code bit by bit, byte by byte to make sure it doesn't infringe upon any patents and complies with the MIT license. So believe it or not, the entire codebase of BeOS has been replaced with new code. It has also made some improvements and updates along the way.

For nerds like me, there are all kinds of goodies packed into this OS. The system monitor (or task manager for windows users) is phenomenal. It has a detailed display for everything from each program's CPU/memory usage to setting individual process priorities on a per thread basis. For anyone that uses computers for critical applications this is a godsend. For instance, if you're recording a podcast, you want all the software related to recording to have full priority. If you're a DJ at a club, you want your MP3 decoder to have full priority, not your damn anti-virus software that keeps popping up annoyingly.

Speaking of anti-virus software, you wont need it. Although Haiku is not a Unix-based OS, it's security model seems to have well written code that has been written from the ground up twice now. For now it also has security through obscurity, meaning it's not a malware target due to it's niche uptake.

There is actually still a LONG way to go to get this OS as user friendly as others, such as Linux Mint. Currently WiFi is not yet supported (not widely, at least), a plethora drivers are not yet available, the app selection is anemic, and even the OSs utility apps are not all completed. Flash is not currently supported. But Haiku is, nonetheless, showing lots of promise. Bugs and show-stoppers are to be expected in an alpha release, so there's no need to criticize Haiku over its shortcomings. I'm looking forward to seeing how things develop from here. Haiku has become one of my favorite niche operating systems.

No comments:

Post a Comment