Confessions of a Recovering NetBSD Zealot
debilo writes, "ONLamp.com is featuring a lengthy interview with Charles M. Hannum, to Slashdotters probably best known for his wake-up call aptly titled The Future of NetBSD that generated a rather vocal discussion. In the interview, Charles speaks about his role in and the beginning of The NetBSD Project, shares his thoughts on software licenses, discusses the popularity of Linux and its development model, and further addresses the problems that NetBSD is facing. Some notable quotes include: 'If I were doing it again, I might very well switch to the LGPL. I'll just note that it didn't exist at the time.' And: 'There was a lot of FUD around this issue — some of it from Linus, actually — and it did cause us some problems.'"
In the past, when notable members of the BSD community have encountered difficulties with the status quo, they have taken the initiative to go out on their own. This has proven to be a successful path twice over: first with Theo de Raadt forking OpenBSD from NetBSD, and then Matt Dillon forking DragonFly BSD from FreeBSD.
Will we ever see Charles back up his rantings with a similar fork? The community won't take him seriously until he does at least attempt to rectify the problems he sees by creating his own fork of NetBSD.
Thank you.
.. lot's learned.
It's a new day, new things
good luck.
Hang around here long enough and you'll stsrt to think the answer is "Yes!"
No, that wasn't a serious go at you but it was an attempt at world-weary commentary. I was around when Linux was launched. I was using Minix on an Atari ST before that happened. I was using Linux as a primary desktop in 1994. And once upon a time I had code in the standard Linux driver set (a Compaq SCSI controller, I believe long since factored out. At least, I hope so).
So. The answer is....yes. Geeks eat their young. I remember at the time knowing very vaguely about BSD, but 'knowing' equally that I should steer well clear of it due to ongoing and the future potential for lawsuits. As it turned out, this was utter junk - FUD so to speak. In fact, looking back at things with the artificial benefit of perfect hindsight I would have gone the BSD route rather than the Linux one. I still read amusing little pro-Linux rants that are actually just pro-open source Unix userland, not pro-Linux as they believe themselves to be. Don't get me wrong, there are definite differentiators between BSD, Linux, running GNU tools on Solaris, OS X etc. but that's not the point I'm interested in here. For this discussion, I'm interested in seeing many of Unix per-se's benefits being described as Linux benefits when they are nothing of the sort. Personally I feel a good deal of progress could have been made just following the BSD route instead of going the Linux kernel route. LGPL does seem to encompass the majority of the BSD way, so I find I have agree with the statements made in this article.
Cheers,
Ian
A lot of people (and I don't want to be divisive, but honestly they were mostly Linux proponents, including Linus himself) spread FUD for years about BSD systems being "unsafe"--even after the UCB/USL lawsuit was settled. The fact is that there was no danger in using NetBSD in a product, and a number of companies did so.
You have to wonder if that would have been the case if there was not a much bigger boogie man for Ma Bell, M$ and other greed heads to worry about. If it were not for the success of the GPL, would BSD be left alone today? I think not.
Friends don't help friends install M$ junk.
There's FreeBSD. You can install the base system off an ~120mb install image last I checked. Granted, it's not *quite* as portable, however I would argue that this is not such a major problem these days, with x86 hardware being so cheap and giving good performance. It's "portable enough".
I'm the first to admit that I don't *like* the x86 architecture from an idealistic viewpoint, but it does the job and most of the other architectures are either becoming or actually irrelevant...
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
"We locked 10 BSD programmers in an IT room for one week with one distribution of BSD. When we came back, we found all the programmers dead with their hands around each others throats, and 12 new flavors of BSD."
So true...
Python: 'And then suddenly you have a language which says "we're all stuck with whatever the whiniest coder wants".'
Why, oh why can more people not see this...
Linux is a kernel (as opposed to the BSDs which include a set of integrated userland tools - not just package a bunch of independently developed GNU tools), that really, these days is nothing particularly special, other than being "free". I mean sure, certain aspects of it may be cutting edge, but for the most part they're not "must have" features that will make or break it's usage in a particular application.
As much as I think RMS is a idealist nutjob, I can see his point regarding the whole "GNU/Linux" thing here (even though simply tacking "GNU" on the front isn't fair to other developers, without which the system would be useless for certain purposes, such as xfree.org).
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Free, sure. But I dont know about lean and mean.
The whole point of NetBSD is portability. If it weren't for portability, NetBSD might as well not exist. But the problem is Linux has taken over as the portability leader and has a huge margin.
Every 32-bit cpu out there has a corresponding Linux BSP or distro. At least ones with enough ram or external bus interface. To compete, NetBSD will have to do without MMUs in some cases, and allow the kernel to be configured to be really small. Linux can scale and has enough configuration options to be able to produce a 200kb kernel and boot in under 1MB on an ARM7TDMI.
Given its license and code cleanliness (and maturity) I'd prefer NetBSD if it was portable enough. Its not.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
A lot of people depended on NetBSD for embeded software development. What is going to replace it? It's kind of sad to see a standard die like this.
Inventions have long since reached their limit, and I see no hope for further development.-- Frontinus, 1st cent. AD
Base install for NetBSD is about 23MB, or 47MB with development tools, 55MB with manpages, and 112MB for all the above plus X.
I can get it installed on older hardware in less than 5 minutes, including the boot time for the floppies. I can get it installed on modern Opteron-based badass hardware in about half that. That's pretty cool.
And you're being very short-sighted about other architectures.
NetBSD ran with no problems, out of the box, on my P5, even with X11. I have yet to find a Linux distro that competes. Only reason I use Fedora on my laptop is that it is a laptop.
Palm trees and 8
NetBSD does not support CPUs without a memory management unit.
uClinux and the derived DSLinux (among others) run on CPUs without a memory management unit.
Note that uClinux was long ago merged into the mainstream linux 2.6 sources (in version 2.5.46 iirc). These days, the "uClinux patch" for 2.6 kernels mainly contains a few odds and ends for specific chips that haven't been merged yet.
So for many MMU-less chips, you can just grab "linux" and it will work, though if you want a 2.4-derived kernel, I guess uClinux is still necessary (2.6 can be slower and more bloated in some cases on small CPUs -- a lot of the optimization work on 2.6 seems to have focused on high-end systems).
We live, as we dream -- alone....
"What is Internet Explorer 7? Are you saying we can't access the normal internet?" - I love tech support. Really.
I am probably going to get flamed to a crisp for this, but what the heck, I have karma to burn...
If Linus continues to dig in and refuses to accept GPLV3 with its anti-DRM provisions, what is is for the linux developers who truly want to move to a GPL V3 model to contribute the fruits of their labour to a GPLV3 fork of the kernel. (Freenix anybody?) Note that they wouldn't have to stop contributing to Linux, they can dual licence as GPL V2/V3 for as long as they wish.
Actually the linux kernel could be forked from the existing code base licenced as GPLV2 with ongoing contributions to the new kernel licenced as GPLV3. Users would be bound by the terms of both licences, which would default to the more restrictive GPLV3 unless they took the time to strip out all of the newly contributed GPLV3 code. Support for DRMed media and hardware would done through clean room design, and hosted from servers in DMCA free countries. Does DVD Jon have some friends and a bit of spare bandwidth?
I really love linux, use it in my home servers and would use it on my desktop if I wasn't doing contract windows development as well. But I disagree with Linus's stand on DRM and the proposed GPLV3. RMS is an arrogant pain in the butt, but in this he is dead right. I like where GPLV3 is going, but we need to build a full featured OS around it.
My rights don't need management.
Yeah, and pirated MacOSX is better than that, but they had to remove it beause of the license. If you don't like the license use something else.
Hmmmm, what sort of blind insults should lay way at you with???? Well, lets skip that, but really, grow up. NetBSD has a very import role in supporting non-homogenios arrays of systems. I would note that for me, that has been the central strenght amonstg many other that have kept me on the netbsd trail. Twat.
You can't convert Linux. GPLv2 and GPLv3 both prohibit extra restrictions.
You could create a GPLv3 fork of NetBSD though. That might revive NetBSD. You might just take the kernel though, letting distributions form around it. Debian already supports Hurd and FreeBSD kernels; they could do a NetBSD one as well.
Of course you'd need to find a name other than "NetBSD".
Ideas: NetOS, NotBSD, Netix, Netrix, Netux, Nettle, WebBSD...
What you pointed out is exactly why "GNU/Linux" is ridiculous. The GNU utilities are very important, but many others are equally important to desktop linux. Are we going to call it Ubuntu Debian/GNOME/xorg/Mozilla/Trolltech/OO.o/apache/.. ./GNU/Linux? PHBs would fall asleep before IT had even finished naming it. Linux is a good name and easily imparts what kind of OS a distribution is. Beyond that, the name of a distribution indicates all of the parts other than Linux. You can't really have Debian Linux without GNU, etc. You can have it on a different kernel.
Stupidity is like nuclear power, it can be used for good or evil. And you don't want to get any on you.
Unix is a trademark - you can't name things Unix (not even UNIX as it should be) willy-nilly. We just need a new term, and Linux seems to have become a blanket term for "libre Unix workalike or derivative" which is offensive to those who dislike Linux but, really, doesn't make even a tiny difference to the masses of clueless users who wouldn't even be able to tell the systems apart, as long as they're not Windows or OSX which everyone knows.
In fact, the end users wouldn't even care what base system it's on, with things like KDE and GNOME appearing and being nothing like real Unix, just happening to run on compatible systems. And a lot of the "Linux software" is being ported to even run on Windows, which is about as compatible with Linux and glibc as day and 1. Even MPlayer, originally called "The Media Player for Linux", now runs on practically everything (and crawls on everything else).
Sam ty sig.
Yes and no.
I'm aware of the embedded space, but personally I think that within a few years it will all be x86 anyway (much as it's a "crappy" architecture). Also, given that the costs of storage, RAM, etc are dropping extremely quickly, I don't think that worrying about 20mb vs 200-600mb is worth wasting the development time on any more.
But that's my personal opinion...
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
I somehow doubt you are the first... I've often wondered what the engineers at Intel were smoking back in the seventies. Low level/assembler programming on any of the 8051/8080/8086/etc (the popular "old school" Intel processors) reveals a LOT of architectural gotchas. Memory addressing on 80x86 processors is, well, "interesting".
It is also quite interesting to note that starting with the Pentium (or was it 80486?) Intel basically threw out the oddball CISC architecture and ran the whole thing as a RISC processor with the x86 arch emulated in microcode.
I really wish one of the nicer RISC processors had really taken off, but unfortunately the 8086 model achieved critical mass (thanks M$!). You're right, though... low cost, and wide availability have been a good thing overall, even if we end up stuck with a hairy architecture. Haven't looked "under the hood" at the 64-bitters yet (too busy hacking 8051 code!), but I hope the situation has improved.
Deliver yesterday, code today, think tomorrow.
perhaps it should be called the 'obnoxius' GNU advertising clause?
Problem here is, it's not really third party software if it takes part of the kernel sources and adds code with incompatible licensing into it. So let's see, take some Windows kernel source, add a third party driver to it, then release as say, BSD. You think the result would be very different?
DragonFly BSD is very well known in the BSD community. You'll probably hear far more about it soon, since it is completely clear today that we'll soon be dealing with multicore and multiprocessor systems in basically all PCs. DragonFly BSD is a redesign and reimplementation of the FreeBSD kernel and userland libraries from the bottom up, with the main goal being for it to scale very well on multicore and multiprocessor systems.
So while FreeBSD, NetBSD and OpenBSD will still be working on getting their kernel sufficiently threaded for many years to come, DragonFly BSD will have had that task completed for a while. And it will likely become apparent that it is the only one of the BSDs that will scale on the massively multicore and multiprocessor consumer-grade hardware of the near future. Reportedly, it has become better than Irix at many tasks, and is even beginning to rival Solaris. With Irix still trumping Linux in most cases, this goes to show how far ahead DragonFly BSD already is. Keep in mind that DragonFly BSD is still under very heavy development.
And no, OpenBSD is not famous because of Theo's attitude or reputation. OpenBSD is famous because it is one of the most secure operating systems out there for commodity hardware. OpenBSD is famouse because of the efforts of its developers to remove insecure and faulty code from not only the kernel and system utilities, but also from third-party software like Apache.
However, calling the operating system "Linux" is not really being truthful either.
There's a lack of a term for describing what it really is ("Linux kernel + free stuff" doesn't have much of a ring to it :D), unless you use a distribution name, i.e., Redhat or Debian, etc.
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Good lord, the meme about X-Windows needing to be replaced is really obnoxious. I honestly thought that when Compiz, XGL and AIGLX startd to appear, fools parroting this tired meme would finally be put to rest.
X-Windows is in many ways archaic, but under the lead of the X.Org project there has been an astounding increase in the rate of development. The project has finally been modularized and the groundwork is in place for direct access to acceleration features. Honestly, the biggest thing holding back X-Windows from even faster modernization right now is the manufacturers of graphics hardware (NVIDIA and ATI) that are ridiculous enough to not even release programming specifications for their chips. Their "support" of the free operating systems is limited to shitty binary drivers, and so when the X-Windows and kernel communities want to introduce new APIs, they are largely at the whims of the moron companies that haven't gotten around to pulling their heads out of their asses yet.
If you believe that UNIX with X-Windows on top of it is not suitable for the average user, you should provide some facts to back up that opinion. Because as every day passes, I've seen all the arguments get displaced by proof of concept and running code.
Finally, what Apple did with OS X indicates just what is wrong with the BSD license. The coders and users that believe in the BSD license have been shown time and time again that the so-called benefits of the license are actually damaging to their projects. Charles Hannum from NetBSD recognized this recently when he talked about NetBSD's stagnation, and aptly characterized part of the problem as the BSD license that allowed companies to fork BSD and hire away all the important developers to work on their proprietary forks. Charles now says that he would have used the LGPL license if he were to do it again, which is exactly what the Wine project did after Transgaming and others ran off with their code and developers.
So this issue of licensing that you describe as making BSD the biggest threat to the proprietary interests is wrong. The BSD license's shortcomings in this area mean that BSD will continue to go nowhere fast. The reason that the BSD lawsuits were more scary was because the free BSDs actually had lineage leading back to the old proprietary (owned) code. The reason the SCO lawsuit is not scary, and rather actually hilarious, is because Linux was (a) developed in a vacuum and (b) is defended by the GPL.
The GPL is very important here, because it creates a safe haven for companies like IBM, SGI, Oracle, Red Hat, Novell, HP, Nortel and others to all cooperate on *one* core. When all of this engineering talent and financial power gets pooled into one project, that one project goes a long ways. And tossing its technical superiority totally aside, you're left with the actual *largest* threat to the proprietary interests - an entire cultural, economic, political and technical shift in thinking from proprietary development to Copyleft.
The BSD project and license followers have been operating with their heads in the sand for a very long time now. Even when the FOUNDER of one of the most significant free BSD efforts came out and said "We fucked up, and here's why," there were still a thousand BSD fans that chose to ignore the majority of the issues he raised, instead babbling on topics like "Theo is finally vindicated!". Given history, I don't expect this to change. There will always be BSD users with their heads buried in the sand, but their numbers are shrinking as they fail to see the train tracks being built directly in their path.
THAT needs to be emailed to the FSF.
Stupidity is like nuclear power, it can be used for good or evil. And you don't want to get any on you.
...but you may not like it. The replacement is and will continue to be Linux, which is already more portable than NetBSD, has far greater mindshare, performance, scalability and functionality.
Definately disagree here.
Linux (or more specifically, "GNU" or "the gnu toolchain") is nothing like 'real' unix when you get further than a cursory observation. The GNU tools are usually different in some subtle way for no *really* good reason (it seems) other than to follow GNU's own "standards".
Examples that spring to mind for example: netstat, ifconfig, info, etc...
If you've used a few flavours of Unix (myself, Solaris, SCO (yes, it sucks), AIX, FreeBSD) the differences (even subtle ones like the display formatting of various commands) in Linux really stand out.
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
Linus' leadership had nothing to do with making the GNU tools "happen". They happened all by themselves, and had happened before Linux was developed. What Linux did is actually give them a platform to be used on; before Linux they were really just open-source versions of stuff that other OSes often already had. Without Linux, the GNU tools were superfluous. Without the GNU tools, Linux was just a barebones kernel; you need tools to actually do anything useful with it.
That said, I think the constant attempt to change an already-entrenched name is futile. I can understand why someone would get irritated when people in ignorance assign all the hardwork they did to someone else.
Just because you're paranoid doesn't mean there isn't an invisible demon about to eat your face
Recently, I have been reading a hefty amount of Unix history and the philosophy which developed once pipes were introduced. Looking at my own history of Linux usage, I have seen that I look upon my computer as an appliance when I spend too much time in a GUI with the do-it-all monolithic apps, but when I use it in the Unix way, it is less a tool than an environment in which I can do things and learn new things. Having read the quote to many times about people using Linux because they hate Microsoft, while others use BSD because they love Unix, I began to incline toward giving one of the BSDs a go. Then this whole mess came out.
I'm finding myself still interested, but more likely to give one of the newer forks a go, like Dragonfly BSD, PC-BSD or Desktop BSD. I incline toward the latter simply because they have a DVD image for download whereas the others do not. With their desktop focus though, I'm wondering if the experience will be more or less the same as I have now.
I really do like Ubuntu, both as a distro and especially as a community. But within the Linux world, it seems that it is Microsoft is the one to beat by creating ever larger Windows like apps rather than doing things in a more Unix-like way simply because of a love of the *nix environment; more into creating a non-evil and free Windows than carrying the Unix tradition forward, innovating of course, but by expanding upon the methodology rather than imitating the abandoned platform. So I am wondering if things will be any different.
As I am realizing that this has nothing to do with the interview, which I actually did read, I'll just stop typing now.
I was so hoping for the ppc/alpha to take off myself, but alas... "worse is better" strikes again...
It's getting to the point now though that for 99.99% of the coders out there, they couldn't give a crap what a cpu is like to program from an assembly point of view, as most of them wouldn't go any lower level than C these days anyway - most of them won't even go that low...
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
X-Windows needs to be replaced with something more light-weight (i.e. single-user with direct access to the multimedia hardware).
Really? Can you please point me to some numbers that demonstrate this point?
X11 was invented in the bad old days, running on UNIX systems less powerful than today's PDAs. As I understand it, it's actually quite lightweight. Certainly the network transparency features don't cost much, because when you run the X server and the X client software on the same computer, they communicate by using domain sockets (which are very lightweight). Both Microsoft Windows and Apple OS X have abstraction layers that isolate the graphics hardware; do you have some numbers showing that X11 has significantly more overhead than those abstraction layers?
The latest versions coming out of X.org now have support for features similar to what OS X does: applications are rendered into offscreen buffers, and the buffers are composited together (with transparency effects, or other special effects if you desire). So, X11 is no barrier to cool eye-candy either.
The worst thing about X11 used to be way it was managed (under Xfree86). Now that the project has moved to X.org and has been revamped, progress has sped up a lot.
steveha
lf(1): it's like ls(1) but sorts filenames by extension, tersely
Nope, the GPL wasn't telling Kororaa what to do with 3rd party software. It was telling Kororaa what they COULDN'T do with GPL'd software. One thing they couldn't do was combine it with non-GPL'd software and distribute the result. The FSF even gives an example of how to get around this -- distribute the non-free modules on a separate disc.
(The only exception to the above is aggregations of software that are independant of each other. The original Kororaa CD was clearly dependent upon the non-Free software, so that exception doesn't apply.)
-- Alastair
Linux has an huge base of open source device drivers taylored to run under it. This is what sets it aside from other kernels. No matter how spiffy the *BSD/minix/Solaris/Hurd or other open source kernels are, they will never catch up with linux as far as popularity, because of this simple issue. You can't use an OS if it doesn't support your devices.
If you ever watch the kernel compiling, most of the time is spent compiling device driver. And the legacy support is immense. Heck, you can shave a few minutes off the compile time just by disabling ISDN.
Hmm, well, both NetBSD and OpenBSD suck when compared to any current Linux distribution.
Funny, I know two of the Worlds largest banks use OpenBSD for firewalls in various places. Namely because it does not suck. The US DoD donated $2,000,000 US dollars to OpenBSD for a reason you know? I once posted an email to the sparc@ mailing list around Christmas time, when lots of people were already on holiday and I got various, "sorry I'm out of the office till..." messages. One of those messages was from some IT person working at the Pentagon. So someone in computing with the Pentagon, thinks that OpenBSD is worth watching.
You are an idiot. OpenBSD and NetBSD are great. Linux is great for many things too, but given the choice, I'll take OpenBSD firewalls over any other firewall. Especially on sparc64 hardware.
No matter how large the army of assholes is which you are a member of, nothing can tarnish OpenBSD's legendary status in security.
Yeah, these days, as long as the compiler supports the processor/architecture, it really doesn't matter. Even better, if you're using a truly high-level language, it all becomes irrelevant. Perl doesn't care about your architecture.
:-)
Right now, I'm working on a multiprocessor embedded project, with a DSP, an 8051 clone, and a PC/104 (x86) system for display/data logging. I used to think that the x86 architecture was bad, but after getting stuck with a couple of Harvard architecture systems, I'm loving the x86. I still miss the 6510/6502 processor; now there was a processor with character!
Deliver yesterday, code today, think tomorrow.
All of my hardware is supported by FreeBSD. USB support worked in the BSDs before it did in linux. The driver "problem" is largely a non-issue. FreeBSD can actually use Windows NDIS drivers for NICs as well...
I run: Windows, OS X, Linux, FreeBSD. Just because you have a hammer, doesn't mean everything is a nail.
I wish people would call it Unix. It's a better way to be inclusive of GNU,
But, but...GNU's not Unix.
-- Alastair
In the linux dev. process, Linus is at the top of the org chart. He accepts or rejects patches that come to him. He trusts other people to maintain certain subsystems and architectures, but ultimately, he decides what goes in and what doesn't (even if he hasn't really looked at it much).
Difference #2: Linux is GPL'd. You can't profit from changes without sharing them. BSD is BSD'd. You can profit from your changes and keep them hidden.
So the sturcture of the Linux license enforces sharing and the structure of the development process enforces a set of standards (each upstream guy's own standards) on the quality (or lack thereof) of the code. The BSD license and the BSD development structure both require social contracts and continuous communication and agreement among the developers to keep things together and quality consistently high.
So in the BSD world there are forks because developers encounter both technical and personal disagreements. In the Linux world, the devs don't really have to get along as much, because the structure of the project is more forceful than the BSD cooperation regime.
All of the problems that this NetBSD guy have described seem to be mitigated more-or-less automatically in the Linux structure and with the GPL. Linux development is not perfect. Nor is the GPL. However, it sure looks like they're better approaches. Linux certainly isn't less successsful than any of the BSDs.
I have an old 1.3ghz machine here I'm typing from. Since the original brouhaha I've been switching back and forth between the three BSD systems. I have invested some time in downloading gnome 2.14 over dialup and it works alright. Both FreeBSD and OpenBSD are using older versions of gnome (I think open is still on 2.10; don't quote me on that, however!).
I'm rambling because I'm tired, sorry. My point is that the software in pkgsrc seems to be recent, and fairly stable (though that port of ajunta is crap, currently), NetBSD is running great as a desktop system for me and it seems to detect my (admittedly ancient) hardware ok, so...where's the gotcha? Does fall down on server tasks (if so - how so? compared to what? according to who?) or what, exactly?
I understand that there's concern because apparently most of the developers work for Wasabi and development appears to proceed (or stagnate) dependent on Wasabi's whims; but apart from the undisputed mis-management, are there any other signs of decay I'm just simply missing?
I do get it. The kernel + module is a program, and a proprietary one. You are not allowed to distribute GPL programs that you don't own unless it's all GPL (pretty much).
If the module was a seperate executable there would be no issue. It's not however, it's a part of the kernel, and so must be GPL if you want to distribute it with the GPL kernel. You can "run" it however you like by yourself, just don't break the kernel author's copyright by distributing it outside of the terms of their chosen license.
You can distribute the module, or you can distribute the kernel, but you can't do both together in a distro because it doesn't count as "mere aggregation".
Given its license and code cleanliness (and maturity) I'd prefer NetBSD if it was portable enough.
From the interview:
Charles M. Hannum: [...] NetBSD today does a very poor job of setting and meeting standards. I created the mythos of NetBSD having "clean" code, and even I don't buy it any more.
FWIW I haven't read any NetBSD code so I don't have any personal opinion on it.
I don't really buy this, even if I hear it all the time. Linux is not developed in a vacuum, and neither is GNU userland software. For all practical purposes, Linux is the GNU kernel.
Then again, if you want to argue on the merits of integrating kernel with userspace, look how well Microsoft is doing it ;)
Escher was the first MC and Giger invented the HR department.
But I kind of like GNU getopt where you can stick command-line switches anywhere you want instead of having to put them all before the arguments. example:
.. on gnu this would be fine. on real UNIX it usually fails.
% ls *zip
(oops, I think I want to see some file sizes)
% ls *zip -l
“Common sense is not so common.” — Voltaire
The SlashEditors rejected my front-page submission for a review of my new GNU/Linux distribution -- the third new distribution I've made this week -- featuring some Linux Kernel and some GNU stuff on top. Wilberux 4.62.81.three was teh b0mb, but 4.62.81.fork had to come out because the project lead (me) was an ass and I had to wrest control back from that evil cabalist.
BTW, 2001's million Linux distributions want their flamebait back.
As for Charles Hannum, he's pretty much a troll. Talking to a few of the NetBSD core developers, he's upset that he was marginalised five or so years ago, and has been tolling the project since then. It's also worth noting that he was one of the people primarily responsible for throwing Theo De Raadt (another of the NetBSD co-founders) out, leading him to found OpenBSD (interestingly, Theo named both NetBSD and OpenBSD). Last survey I saw showed OpenBSD having about twice the market share of NetBSD. It's a shame they kicked Theo, and not Charles, out back then.
I am TheRaven on Soylent News
You're still missing the point. We know perfectly fine the restrictions the GPL imposes. We choose the GPL because we *like* those restrictions, as they impose a level playing field. IBM can't just make a closed fork of Linux, give a bunch of cash to Linus and other big developers, and leave the remains of the team wondering what the heck to do now. That's a good thing.
Yes, of course it means some opportunities will be missed that might have been available otherwise. But I think the loss of Korokaa isn't such a big price to pay. After all, look where's Linux now, and where's BSD.
Linux flavors are mostly conformant only standards specified by their own vendor. Considering that Windows XP only complies to its vendor's specification, this isn't necessarily a marketing black eye.
The biggest problem with getting certified as a "real" Unix is that every new release must be recertified. This gets expensive and time-consuming, making fast release cycles all but impossible. Red Hat could certify RHEL, which they've given a long release cycle. It might be worth it, though, if they could say "We meet the same Unix standards as IBM, HP and Sun, have over half the total Unix market, and do it at a fraction of their boutique OS prices."
This is not my sandwich.
NetBSD is one source tree that you can compile on every supported arch or even cross-compile on i386[1], e.g. if your sun2 is too slow to build its own kernel let alone a complete system in reasonable time.
I can take a PCI WLAN card and put it into a Sparc with PCI slots and it runs the same driver from the same source as on i386. That's portability and it reflects in code quality. Heck, you can even cross-compile a complete NetBSD system on almost any POSIXish system. build.sh and the whole supporting infrastructure is just ingenious and a breeze to use.
Is there one single Linux distribution supporting more than 15 or 20 archs that would give me the same look and feel everywhere? I think not. It's all just special cases and hacks.
[1] i386 is the name of the architecture including the latest Athlons and Core 2 CPUs.
Of course it runs NetBSD. BTC: 1NT7QvbetmANwaMzhpVL6
*shrug*
A lot of these commands are horrible anyway (have you read the manpage to ifconfig on Solaris, jesus)
I've sort of resigned myself to never expecting the command line to be portable among OSs (unless it's a specific application)
THIS THING CAN TURN ON A DIME, MACROSSZERO STYLE ALSO FUCK BETA, ~NYORON
I use something else (duh!), but I still have the right to know this and tell everybody about it.
The point is not the repeated to death "if you don't like the license... blah, blah", but WHY I don't like the license, and why lots of people should at least know this point of view even if they disagree.
We are Turing O-Machines. The Oracle is out there.
Freedom is about letting people do what they will
Yes, and we have laws against illegal confinement, slavery, and the like to discourage people from preventing others doing what they will. The GPL is like that.
The GPL doesn't prevent anyone from getting hold of Nvidia's drivers if they want them. It does prevent NVidia from benefitting from somebody else distributing NV's proprietary drivers with free code. In other words, the intent is to discourage NVidia, but the only legal method is to discourage NVidia's unwitting accomplices.
As for lawsuits, what do you supposed FreeBSD would do about a distribution that stripped out the BSD copyright notices and disclaimers?
-- Alastair
Of the 3 BSDs, I use OpenBSD the most. The FreeBSD market is the same as Linux and I just use Redhat due to support, commercial apps etc. OpenBSD is used mostly in firewalls and simpler servers that you'd like to install and forget for the next 5 years. 0 maintenance and damn secure. OpenBSD also is a standard with many technologies like the various VPN SSH and crypto technologies, and its openospf and openbgpd gives me a better feeling than quagga.
I suspect NetBSD is dead, and its core developers should work to port OpenBSD around. Maybe they can combine the functionality of FreeBSD and OpenBSD, port it everywhere and just call it 'BSD'.
I for one, only want a BSD that will run on an ARM7TDMI in 1MB flash and 1MB ram including a minimalist library and busybox. And I dont want to resort to porting minix.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
If your hardware is new and relatively common, linux kernel will most likely have a current working port.
Move off the path well travelled and you are in for a lot of strife.
My favorite 2 examples to bring up, mainly due to the massive number of units still in existence are
- mac-m68k - last worked kernel 2.2 series, broken 2.4 and 2.6 (ADB broken, serial console broken)
- sparc32 sun4m - currently SMP support broken in 2.6 kernels for supersparc, hypersparc just broken.
At least sun4m looks like it will get fixed, dont hold your breath for the m68k macs.Dont get me wrong, I am a linux zealot, but linux' rate of change pretty much ensures that older architectures will drop out of the tree due to lack of maintenance, be it in kernel or glibc.
NetBSD still runs, and you can be pretty assured will continue to run, on most hardware you point it at (including your old vaxen
Your post is full of 100% false FUD! Linux supports more architectures than NetBSD, and additionally, Linux drivers most certainly are *NOT* tied to one architecture. That is simply not true at all, and I say that as someone who has worked on the kernel before.
GPL based distros are going to be handicapped [...]. While BSD based distros will not.
The NVidia drivers aren't available at all for most of the BSDs. Just FreeBSD. And then only on 32-bit x86. (NVidia supports Linux on x86_32, x86_64 and IA_64.) So, who's handicapped, now?
-- Alastair
How many BSD machines are you installing per day that you can't just install GNU fileutils and move on? I'm surprised that you didn't mention that the default shell was ksh and not bash. That seems to be the biggest stumble for most Linux converts. Spend more time with your OpenBSD install. There are other (more significant, IMHO) features that make BSD worth it, like wireless drivers. Such a PITA in Linux. The ports tree is pretty nice, too.
I can't really offer any insight myself, I've never gotten involved with anything that would require me to port an OS, or even look at the kernel code. I do run NetBSD though, and used to run Linux.
NetBSD is big. Linux has more libraries at its disposal, more different set of tools (busybox being the smallest full set) and way more configurable parts of the kernel and the c libraries. You can choose the smallest scheduler or the most stable one, memory models, XIP, flash devices etc. More configurable. Thats what makes it more portable.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
But you'll have to explain exactly how "more configurable" implies "more portable", because I don't see the connection. If anything, it seems to imply that Linux-based solutions would be more fragmented (if you want to use Linux on platform X, you need to use library Y and the Z tools, etc).
That looks like less portability to me -- the kernel is portable, but the userland is not, and you have to pick the right tools for your specific platform. (OTOH, that would make it more scalable; use less memory-hungry tools or more fully featured ones, whichever is the best fit.)
Or have I misread you completely? Feel free to tell me exactly how I'm wrong.
P6, the core used in the Pentium Pro and later the Pentium II was the first to use the hybrid RISC/CISC approach. FYI.
You are not alone. This is not normal. None of this is normal.
Portability to me means you can port it. It means someone gives me a set of hardware and I tell them yes I can port this to that.
In short, give me a 32-bit cpu with gcc support and I'll port 'Linux' to it. I agree that Linux will be more different from its RS6000 versions than NetBSD would be between its smallest and largest implementations. But I happen to have more in my toolbox. Just having more in the toolbox makes it tougher yet more possible to port.
Dont get me wrong, I've used NetBSD at many places and I understand and love the 'cleanliness' of BSD, the way things work as they should and the way its more rigidly standardized while one Linux can be unfairly different from another. But maybe its that flexibility that lets Linux get ported more and used in as many places from the same core sources (at least the kernel).
To answer your question, thats what I mean by 'portability'. Give me a BSD that will utilize the multiple cores of a PS3, run on a DOS file like UMSDOS on a win95 computer and will still run in 512kb ram and 512kb flash, and I'll tell you its more portable. Since NetBSD doesnt support as many devices one would expect it would be more flexible, as in run on non-MMU systems, allow XIP, scale to more processors, take less ram, compile using various compilers directly and allow kernel core structures to be swapped easily and readily like schedulers semapore structures security mechanisms etc. Under this definition, possibly unique to me, Linux is the most portable OS.
"Give orange me give eat orange me eat orange give me eat orange give me you." -Nim Chimpsky
I agree the "Linux" misnomer is quite awful. As platforms go, its really more of a mass hallucination.
OTOH for basic functionality, the LSB seems as meaningful as "BSD". In a couple of months, we will also have the LSB Desktop spec (to include APIs like Gtk+ and Qt allowing developers to target desktop users, but without the KDE/Gnome desktop layer itself).