OpenSolaris Or FreeBSD?
Norsefire writes "I am in quite a predicament. I decided a while back to branch out and use a new operating system (currently running Debian). After a bit of searching (trying Gentoo, Gobo and Arch along the way), I decided to use something that isn't Linux. Long story short: I narrowed the choices down to OpenSolaris and FreeBSD, but now I'm stuck. OpenSolaris is commercially backed by Sun, has nice enterprise-y tools in the default install, and best of all, a mature implementation of ZFS. FreeBSD is backed by a foundation, has a minimal default install and a rather new (but recently improved in the 8.0 release) implementation of ZFS, however it offers the Ports Collection (I quite like the performance boost due to compiling from source, no matter how small it might be) and a bigger community than OpenSolaris. That is just a minimal mention of the differences. I would be interested to see what the Slashdot community thinks of these two operating systems."
Those are commie Operating Systems you have there. Get some Windows 7 and be a good patriot.
Just think about what you're saying in the future.
Dual boot and use them both. Any other world endingly difficult questions you need answered for?
Rather than playing with just another un*x clone, try something like Haiku or FreeVMS or my personal favourite Plan 9
Andy Warhol got it right / Everybody gets the limelight
Andy Warhol got it wrong / Fifteen minutes is too long.
If you're looking to learn something new, OpenSolaris is the way I'd go. Lots of commercial enterprises use Solaris, so you're learning a skill that is of direct to a great many businesses.
Of course, that's not to say that Solaris is the only Unix out there - I'm certain that FreeBSD is used in commercial enterprises as well, just not at as high a level as Solaris is. And, ultimately, learning the idiosyncrasies of more than one Unix environment means that you're well placed to adapt if (for example) you find yourself maintaining an AIX or HP-UX host - you've already had the pain of dealing with the differences between FreeBSD/Solaris and Linux, so the next step won't be quite so difficult.
I am always surprised when people make this claim about compiling from source giving a performance boost. Why would code compiled on your system run any faster than the same code on someone else's system?
Unless you know how to tweak the compiler flags for this particular app (and know them better than the developer who distributes the binaries), the binary delivered with the distribution will be just as quick as the one you compile yourself.
To Terminate, or not to Terminate, that's the question - SCSIROB
When it comes to things like flash, acroread, nvidia drivers, fluendo (multimedia plugins, DVD Player), skype etc being supported, having the commercial entity behind OpenSolaris does seem to help...I think behind the scenes Sun offer some sort of incentive to these companies to support OpenSolaris. I do like that FreeBSD is backed by a foundation though, it is much more reassuring to an open source project to know that its backing entity wont dump them the next day.
because you forgot to write down the most important part of your question: for which purpose is this server intended.
I assume you are looking for a server. If it's for a desktop, more users and software help a lot. Although BSD and Solaris are more reliable indeed, the intricately, meticulously designed user-oriented design interface of Linux provides details and config files enough to entertain for generations. I have never tried out GnuStep, however an open source nextstep-like interface seems promising.
Build your own energy sources from scratch. http://otherpower.com/
I've used both as my primary desktop (each for a few months) and if you want to try something new, go with FreeBSD. OpenSolaris felt like GNU/Solaris, which it mostly is, with a few Sun coded things (I think it was libc and a few more of the libraries). FreeBSD was all about fine control: I found myself wanting to recompile the kernel and playing with rc scripts and asking my OpenBSD-using friend so many questions he demanded I switch to Linux:-D
Plus, when you've spent a whole night figuring out why KDE won't compile correctly on FreeBSD....it feels good, like you've accomplished something.
I'd have to agree here. Although FreeBSD's ZFS support is getting quite good now. I'm using it on a production system and it hasn't let me down. It even saved my bacon a couple of times (yay, ZFS snapshots). I guess it depends on what you want to do. Both have strong features. OpenSolaris has Crossbow, but FreeBSD will have vimage soon. Both have Dtrace and ZFS. Solaris has zones, FreeBSD has jails. But I think FreeBSD is easier to tinker around with (personal opinion).
Does ZFS on FreeBSD still suffer from random kernel panics when it gets low on memory?
I'm particularly referring to this bit of documentation:
To use ZFS, at least 1GB of memory is recommended (for all architectures) but more is helpful as ZFS needs *lots* of memory. Depending on your workload, it may be possible to use ZFS on systems with less memory, but it requires careful tuning to avoid panics from memory exhaustion in the kernel.
Yeah, kernel infrastructure that can't cope with running out of memory. That fills me with confidence. Particularly I've run ZFS on OpenSolaris on a 48MB Pentium laptop and it coped fine.
Unfortunately the FreeBSD ZFS pages are a wiki, which means they're badly organised and out of date. I have no idea when the above was written or whether it's still valid. Does anyone know?
http://en.wikipedia.org/wiki/XOR_swap_algorithm
This maybe wasn't the best example since XOR swaps are rarely useful anyway. I suspect that other things like word (mis)alignment and varying cache miss costs may be a factor for different processors.
Gentoo claims that picking e.g. core2 over nocona can boost performance by 15% (which seems a bit much to me), so picking the right x86_64 variant is still something that is considered. Not something I worry about though, unless I am compiling from source anyway.
You are used to Debian ? Then try Debian GNU/kFreeBSD.
The Debian distro on top of a FreeBSD kernel.
Surely it depends upon what you mean by "support?"
OpenSolaris is backed by one of the big UNIX developers and is a true, direct lineage UNIX. You can also pay Sun for full enterprise OS support, which could include getting their programmers to fix a particular kernel or core OS bug for you within days.. if you're rich enough to afford the Platinum Support.
And you've bought hardware on their "supported hardware" list.
I am in quite a predicament. My boss hired me because I bullshitted my way through an interview, but really I don't know shit from shinola when it comes to servers and operating systems and such. I can play WoW... HELP ME PLEASE.
Although I always enjoy the opportunity to recommend FreeBSD to somebody, I didn't really get an explanation of your needs. Are you going to be running servers? Desktop? Or just having fun? I imagine that you're just going to have some fun since you just want to learn something new. In that case I'd definitely go with FreeBSD. It is a great "learning" OS and is well documented thanks to the Handbook. The /usr/ports collection has the source code for just about any piece of software you'd ever need, and the dependencies are all taken care of for you. You get some pretty awesome hardware support, server daemons are incredibly easy to configure, it is robust as all hell, doesn't use a lot of resources, can also make a great desktop OS, lots of smart people on IRC you can get help from, and countless amounts of other things. Additionally I'd go with FreeBSD because there are a large percentage of servers on the internet use this OS. If IT is your profession, it definitely won't hurt to learn FreeBSD. All you need to know is, /etc/rc.conf and /usr/ports. Then you just move on from there :-) Good luck!
*plays the Apogee theme song music*
Instead of FreeVMS which isn't ready for prime time... Get the OpenVMS hobbiest edition, load up SimH and run OpenVMS on a real emulated Vax. For fun you could boot OpenBSD, NetBSD or BSD4.x on the emulated Vax.
As far as Solaris vs. BSD -- I run 'em both here. Solaris mostly on Sparc and BSD on x86. I've done Solaris x86
and it's ok, but it's really fun to set up a jumpstart server and load up some old Sparcs.
I've even got SunOS 4.1.4 up...
Take a look at the software available on the http://www.openvmshobbyist.com/ site. A ton of VMS languages including C, ADA, Pascal, Macro32... TCP/IP and Clustering.
http://simh.trailing-edge.com/
I'm quite happy with both OpenSolaris and FreeBSD as desktops, as well as servers.
You didn't specify what your primary goals are for the system in question-- if you're looking for a general purpose web surfing/light development machine, OpenSolaris should be fine for you-- as long as you have at least a gigabyte of memory and a moderately fast processor.
FreeBSD's a lot less resource intensive in my experience-- I'm currently supporting two sites that still have Pentium III/600-based servers with uptimes approaching a year each. (Last reboot for each was due to a multi-day power outage.)
If you have VirtualBox installed, give both FreeBSD and OpenSolaris a whirl, see what you think.
Since you're not telling us what you're actually planning to do with the OS, might as well advice some random OS based on no reason whatsoever.
Slashdot social media options: AIM, ICQ, Yahoo, Jabber and Mobile Text. Why no MySpace?
Therefore if we are to restrict our options to OpenBSD and FreeBSD i would lean towards FreeBSD simply due to the large no. of apps available through ports.Also i believe driver compatibility is a little better in FreeBSD, especially recently with nvidia cards.
FreeBSD only had NVidia on i386 kernels at least when I tried it on the desktop and quit about 2 months ago. You have the open source driver with works, but for decent multi head on a new model card you still need the closed source driver. OpenBSD has similar and (in my case) sometimes better hardware support. The Intel wireless card in my Dull laptop is supported on OpenBSD out of the box but FreeBSD still required me (at 8.0-RC1) to download a driver and munge with boot options to make it happen. Doable, but mildly annoying since it is the essentially the same driver with an extra PCI ID added to it to let it use the card.
If you're building a kick-ass server then the choice is up to you. You can't go wrong with Slowlaris or *BSD. I like FreeBSD because it has jails. They take a little getting used to but they are great. It's particularly useful to be able to give people root in a jail to admin something and know they can't actually root any of the other jails or the host. Solaris has Zones. Linux has a suite of patches that can do jails but it's not mainstream yet, and I wouldn't trust it as far as I could throw it if I were trying to attach a patched kernel to a current distro.
Solaris and FreeBSD have ZFS. Both are stable. Solaris has the slightly more mature support, but I've never seen FreeBSD lose data or kernel panic on me because of ZFS. There's a LOT of advantages to using ZFS. Quite a few are met with LVM on Linux or dynamic disks on Windows, but not all.
OpenBSD is going to be more secure out of the box, until you start installing from ports or packages.
Solaris is heavy. The default install was massive last time I tried it and it took forever to boot. Linux is even worse on size but fast to boot now (Ubuntu and Fedora at least have made huge advances in their latest releases). FreeBSD and OpenBSD can be shoehorned into very little space if needed without resorting to rolling your own distro, which can be advantageous.
For hardware support, Linux is generally better than the alternatives. If you only have very new hardware then Windows 7 is going to have better support.
Right; it should be clear as mud now that every system has its own advantages and disadvantages. It's like asking "should I choose a Porsche or a VW" (Ok since VW owns half of Porsche now...) Horses for courses as they say. You'd test drive the cars if you were looking to make sure they met your needs. Try the different operating systems on a sacrificial machine or VM. Stick with the choice that you feel comfortable with.
I drink to make other people interesting!
Sun.... didnt they get bought by a horrible DB company that may or may not ditch the OS? Sweet...
Restrictive (copyleft) licensed software like the Linux kernel and the GNU toolchain indeed follows a communist philosophy that fails to see the value of free market competition, and instead relies on government force (see gpl-violations.org).
No it doesn't.
It raises the bar for competition. It allows everyone to start from a more advanced position, the whole "Shoulders of Giants" thing.
We are very lucky to live in a world with GPL software. The GPL has succeeded in allowing real progress to flourish where monopolies have stifled progress in an unregulated "free" market.
The Windows Interix subsystem could have evolved into a great UNIX server platform, but socialist governments (especially in Europe) place severe restrictions on what Microsoft can include in their products, which is the only thing holding them back.
The double-speak of a Microsoft apologist.
Stick Men
If this weren't moderated as interesting, I'd be afraid to answer for fear of feeding stupid trols, but since it is, lets go ahead.
There's a certain stupidity in modern "soundbite" thinking that seems to think that by labelling something you thereby make it bad. This leads people to stuipdly stretch those labels as far as they think they can make them stick. Here is a perfect example. The GPL requires certain actions to avoid restrictions in copying. Microsoft's licenses restrict all copying with small exceptions. The FSF occasionally goes to court to try to get organisations to follow their license. The BSA, Microsoft's enforcers, regularly carry out military style raids on their customers searching for violations, let alone what they do to actual pirates. If you believe that this makes the FSF, the free software movement or whatever communist then you must believe that commercial software producers are all ultra communists and Microsoft is Comintern its self. If you really did believe that and weren't just making a debating point, you could easily find yourself being declared clinically insane.
Interix was created solely for the reason of destroying UNIX; I think you will find that the "open source community" is completely rational for not working on it. Your complaint is like a person wanting to know why turkeys don't do volunteer work to spread the thanksgiving message. However, there is nothing they could do to stop the Windows community from doing the port. The reason it's not happening is because Microsoft and Microsoft collaborators aren't interested in becoming helpful collaborating members of the community.
Which leads to the question why didn't Microsoft just go ahead and fix it. Answer; because then it would be difficult to kill it later. Interix might be a sane choice for an organisation which was trying to eliminate old UNIX installs and just had a few applications which were difficult to rewrite at the current time. It's not something anyone sane would base their future on.
This is the funniest and most ironic statement of your entire post. Stallman never claimed to be an economist and from the beginning said "do this because it's the moral thing even though it will lose you money". The irony comes from the fact that he was wrong. In fact the GPL is an excellent choice as part of a commercial strategy. Either dual license model for sofware with narrow developer interest or through the free (as in beer) software + expensive support model.
Some of the other systems you mentioned should be, logically, looking at their design and historical position before Linux really took off and the number of products developed from them which could have contributed to their develomement dominating the market. However they have failed. The reason is simple. Every time someone comes up with a product based on a non copyleft system (OS-X; JunOS, Microsoft's TCP/IP stack, IPSO etc. etc.) the community divides between those working on the product and those working on the OS. This leads to continual weakening of the community. Compare with
=~ s,(.*),<sarcasm>$1</sarcasm>,g if any_point_you_wish();
Many small-time programmers do pick GPL for irrational ideological reasons - "don't let evil corporations steal our code". That was the prevailing culture from the early days of open source software, back when everyone lived in mom's basement and thought money grew on trees. As FLOSS got bigger, a lot of software authors simply didn't give much thought to the GPL-vs-BSD debate, and went with the herd mentality (pun intended). Some bigger players like Qt (now Nokia) also used GPL's restrictiveness to make money, which is perfectly fine as long as you don't claim that restrictively licensed software is somehow more "free" than the permissively licensed / public domain kind. A lot of people also thought GPL would be more effective at "hurting Microsoft" than BSD, which has proven to be completely the opposite - as I predicted. (Google - smart, IBM - dumb.)
I'm not "trying to pin the non-success of SFU" on anyone but the regulators. The FLOSS community doesn't have any obligation to support a particular platform, but it's very telling that they snubbed Interix as much as they did...
So, anyway, I'm just making a long-term prediction of a libertarian-minded counter-movement in open-source software - people like me picking *BSD over Linux / Solaris for ideological reasons. We'll see how that prediction holds out.
This is exactly what I evaluate when choosing OS. One this is corporate class support, the other is what the OS itself supports.
I don't know if it has been fixed today, but when I last tried and tested OpenSolaris as a replacement for my Linux, I ended up ditching it because of lacking support for Bluetooth.
While this particular feature isn't vital to a server, other features may be. So my general advice to OP would be first to make clear what the requirements are, and put priority to the corporate support vs. license question. Since OpenSolaris and BSD are what's left to decide between, I would guess the license isn't that important.
So if OpenSolaris supports all the hardware and features needed for the task, I would go for that in a corporate environment, because of the posibility of corporate class support. If the company already have plenty of experienced un*x admins to provide a 24/7 3hr support on its own, I'd say go for FreeBSD, because development is more agile than OpenSolaris, new features and hardware are supported quicker on this platform, and given you have these skillfull admins already, the new stuff could be made to work easily.
If I was as pragmatic and objective as I claim to be, would I be commenting?
> Switch to OpenSolaris
No, just no, not unless you have a specific reason to. As a desktop? They don't call it Slowaris for nothing, y'know.
Way to keep the troll alive. I know you are just trying to get a rise out of people, but come on, digging up a term from like 1995 isn't very convincing. I personally run Solaris (and production systems at work) because there is nothing in the space that scales like it. Even for single thread applications (and only one of them) with no memory requirements it is just as fast (now at least, early x86 versions of Solaris didn't perform as well as their SPARC counterparts) as FreeBSD, Linux, Windows, etc.
I could go on to bash Linux et al but, but what would be the point? What ever suits your needs the best is the best OS. Oh, I remember, this is slashdot, we make uninformed, brash comments here now. In 2000, this was a forum for killing FUD, now it is hear to spread FUD.
To the original poster, I think, if you want a better debate, you should take it to serverfault.com
I'm completely with you. And I think there's some truth to the theory that corporations shunning GPL is going to hurt it. Sure, if your goal is to forever be a countercultural niche player, you can always thrive in that narrow space without corporate backing, but the GPL projects that have succeeded in a broader sense have almost invariably done so with *massive* corporate backing.
Take GCC, for example. If you've ever tried to fix bugs in GCC, it's a dauntingly large piece of code, and unless you work for a company that needs a fix, chances are you won't have the time or the inclination to delve into something that large, much less sufficient understanding of compiler concepts. As a result, I suspect if you took the statistics, you'd find that nearly every contribution to GCC in the past year came from someone fixing it as part of his/her job.
Without those contributions, the code would almost certainly stagnate; the "us versus the corporations" mentality is childish and self-destructive.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Surely the BSD lawsuit had something to do with Linux taking off instead of BSD?
I rather doubt it, the timelines don't fit. "USL v. BSDi was a lawsuit brought in the United States in 1992 [...]. The case was settled out of court in 1993 [...]."
Meanwhile, Linux didn't hit version 1.0 until March, 1994. Yggdrasil, the first distro, was released in November, 1992, and Slackware in June, 1993, but they were strictly for hobbyists. Anyone looking to do something commercial would have wanted to use a more mature OS, and as I recall there were lots of commercial solutions during that time frame that were based off of BSD derivatives.
IMHO, Linux beat the BSDs for the same reason it beat Minux. It provided meaningful work for outside contributors. To be meaningful, work has to provide autonomy, complexity and a connection between effort and reward. The first two are easy, they are practically inherent to the software development process. The last one is the winner. Wikipedia had the same property, and look at how it grew. Now it seems to be getting harder to make meaningful contributions, and participation seems to be falling. It took a while for people to discover that the iPhone App Store never had this property, but now even the commercial developers are leaving. Especially in the early days, Linus accepted other people's contributions with very few strings, so people got rapid positive feedback. As Linux has grown, it has gotten harder to keep doing this, but Linus seems to try harder than his "competitors". This is the core of the success of Linux.
Nothing for 6-digit uids?
While I agree with much of what you say, it doesn't exactly help your case when you layer your own post with fairly fanciful and stupid assertions, while rebutting the exact same in the GPs post. For one, the BSA aren't Microsoft's enforcers anymore than the RIAA are the Bee Gees' enforcers. They are a group that exists to enforce copyright and software licences, and while I don't agree with much of their policy or their actions in enforcing it, suggesting they are some puppet of Microsoft's is just absurd. Check the BSA membership, it's full of huge industry giants many of them direct competitors of Microsoft's; IBM, Apple, Dell, Adobe, Symantec, RSA, to name just a few. Further, military style raids might be a slight exaggeration, like calling the GPL communist or anti-capitalist for example.
But one point in particular I'd like to address is your assertions on the Interix system. Firstly, I think it's absurd to suggest that Interix was "created solely for the reason of destroying UNIX". Where's your proof? What leads you to this conclusion? Or does providing compatibility now (much like a huge number of other projects, like Wine) automatically entail an objective of destroying the target platform? Unix (and Unix-like) systems have always played and continue to play a major role in computing, and this is a good thing, surely some degree of compatibility with these systems at the API level is a good thing? This is a large part of what Interix does, it provides a POSIX implementation on Windows as well as a Unix-like environment for development and productivity. So you have the POSIX API, Csh/Korn shells, a large set of Unix utilities, compiler, libraries and headers, and a lot more. The idea is to provide a Unix environment on Windows for migration, compatibility and development.
Cygwin I suspect wasn't "fixed" by Microsoft for several reasons. One would be that Interix/Cygwin began development around the same time, another would be whether the developers would be receptive to development efforts by Microsoft, another might be legal concerns and all the usual licensing crap, but perhaps most of all, the way they accomplish their functionality is very different. Cygwin provides a POSIX implementation and Unix-like environment _ON TOP_ of the Win32 API. This is done through a DLL (cygwin1.dll) which translates POSIX calls into Win32 calls which in turn call into the NT Native API. Interix by contrast does not use Win32 at all, but runs directly on top of the POSIX subsystem, thus, Interix apps go POSIX Subsystem -> NT Native API. Of course, you still have to use the Win32 API as that's what the Windows OS is primarily built on, but the POSIX subsystem runs alongside it and Interix on top of it. This is indeed the point of the NT Native API and much of the NT design; the Native API is (as the name implies) the base API for the NT OS and environment subsystems run on top of it providing an API for client applications. The Windows API is one such subsystem and the one that 99% of people use, POSIX is another, Win16 is another (I think?), and in the past there has been a (fairly crippled) OS/2 subsystem, and possibly others.
This affords some unique functionality for Interix in that it can do things at the API level that the Win32 API doesn't really support, simple example: fork(). The Win32 API to my knowledge has no real fork() equivalent, however, this is supported by the POSIX subsystem. The reason is that the Native API does support fork() but does not expose it through Win32 (but does through POSIX). Clearly, the Cygwin developers have worked around this, although how they've done it I'm not sure. Perhaps they translate fork() calls to loose Win32 equivalents? Or they call directly into the Native API (possible, but strongly discouraged)? Whatever, my point is the implementations of these two environments are very different, and I suspect they offer varying functionality as well as differing in actual POSIX implementation. I gather there's quite a nice Interix community, and Microsoft has put a
You ask as if I was accusing Microsoft of being especially evil. This isn't another big secret like the the way they carefully arrange APIs to disadvantage other companies that develop for Windows. In fact let's just ask them.
from an MS press release>:
It allows users with UNIX environments to take advantage of the benefits of the Windows environment without having to rewrite critical applications. In addition, users can immediately use the full Windows-based application development environment to develop native Win32® API-based applications.
In other words we'd like UNIX customers to move to Windows and abandon UNIX.
from the same MS press release:
Interix 2.2 brings Microsoft customers one step closer to its vision of a single desktop computer for all uses by providing a complete enterprise platform to run all Windows-based, UNIX and Internet applications.
In other words, we'd like you to only use Windows.
In fact there is nothing wrong with this as such. The normal way the free market works is by competition in which one company tries to destroy another companies products by getting people to use their own. What could easily be wrong is if they were, for example, ensuring some of their own software in a market where they had used illegal tactics to become a dominant player were only available on their own platform so that their competitors could not try to do the same to them.
It interests me why the MS astroturfers are so touchy about this topic? Could it be that MS has something to hide on this topic?
People who are neither working for the good of the "Open Source Community" nor Microsoft? Possibly, in part, Useful idiots? People who would be better to spend their time improving Debian or CentOS? Is Microsoft contributing or not? I know little of this and would be honestly interested to analyse it.
Agreed.
That is what many people say. However the SCO probably lawsuit hasn't really had that much influence on Linux. I'm not convinced that it's true. Certainly this doesn't apply to Minix or many of the other BSD situations. It certainly doesn't explain the success of Mozilla (copyleft) over Mosaic (not).
The source they do provide means that any major feature they implement in Linux its self is available to others. That's key. That means that competitors who release features into Linux can do so with the knowledge that major improvements to their features will be available to copy back.
As far as the binary module thing goes; this is an exce
=~ s,(.*),<sarcasm>$1</sarcasm>,g if any_point_you_wish();
I'd say that statistically, ZFS is now safe to use from the point of memory allocation failures simply because the number of user reports to it has fallen off dramatically after the new version and resource limit patches got in (which was significantly before 8.0-release so there was plenty of time to observe the effects).
-- Sig down