主题:【文摘】Torvalds: A Solaris skeptic -- 无双公子
December 21, 2004, 4:00 AM PT
By Stephen Shankland
Staff Writer, CNET News.com
When Linus Torvalds successfully harnessed the talent of thousands of programmers to create Linux, the operating system that arguably suffered most was Sun Microsystems' Solaris.
Now Torvalds and his allies face a new side of that old competitor. Sun has turned Solaris into an open-source project. The company also is building its own community of programmers around Solaris, while promoting the operating system's deployment on the widely used computers with x86 processors, such as Intel's Xeon.
But the 34-year-old Finnish programmer isn't fazed by Solaris. In fact, he's downright dismissive, calling it a "joke."
Torvalds worked for years at now-struggling chip designer Transmeta, but he now plans to stay with his current employer, Open Source Development Labs in Oregon, "for the foreseeable future."
There, along with co-worker and chief deputy Andrew Morton, Torvalds is spearheading a new Linux development process: frequent small changes to the existing 2.6 kernel of Linux rather than a massive overhaul many months down the road. The result: faster improvements.
Torvalds discussed Solaris, his improvisational programming style and other issues in an interview with CNET News.com.
What do you think of what Sun is doing with Solaris 10--technology improvements, open source, and the move to x86 chips?
I'm taking a very wait-and-see attitude to Sun. They like talking too much. I'm waiting for the action.
It seems to me that they have taken some action besides just grandstanding. They have resurrected the x86 version and added several interesting features--containers, DTrace, and ZFS, for example--that are available today in beta versions of Solaris 10. They're actively rounding up support from developers and software companies. And they announced that the production version of Solaris 10 on x86 will be available for free. What do you think about the x86 move and the new Solaris features?
Solaris/x86 is a joke, last I heard. (It has) very little support for any kind of strange hardware. If you thought Linux had issues with driver availability for some things, let's see you try Solaris/x86. (Editors' note: Drivers enable an operating system to communicate with specific hardware such as a video card or network adapter.)
IBM's Steve Mills said a lot of the Linux development road map is an eight-lane highway: Seeing where Unix has gone makes it obvious where Linux needs to go. Is Linux charting its own course or just picking up Unix technology?
I'm a huge believer in proven concepts. If I have a hero, it would have to be Sir Isaac Newton, partly because he's unquestionably one of the most influential scientists who ever lived, but perhaps more importantly because of a quote he is famous for: "If I have been able to see farther, it was only because I stood on the shoulders of giants."
Solaris/x86 is a joke, last I heard. Now, Newton may not actually have been a very pleasant person in real life, but I think that quote is what personifies science. And open source. The whole point is to stand on the shoulders of giants, and make incremental improvements on concepts and ideas of others.
To invent something totally new and different just because you want to do something new and different is in my opinion, the height of stupidity and hubris. Linux is doing great things exactly because Linux isn't throwing out the baby with the bathwater, like so many projects tend to want to do. The NIH syndrome (Not Invented Here) is a disease.
What Linux myths or misconceptions do you find particularly galling?
I don't get upset that easily, so I can't say that there is any in particular that I find galling. One myth that I find interesting, but which has nothing to do with Linux or even the IT sector in particular, is the myth of how a single person or even a single company makes a huge difference in the market. It's the belief that things happen because somebody was visionary and "planned" it that way. Sometimes the people themselves seem to believe it, and then the myth becomes hubris.
I have to continually try to explain to people that no, I don't "control" what happens in Linux. It's about having an environment that is conducive to development, not so much about any particular leader. And I think that is true in most cases, be it the "great sport coach" or the "great spiritual leader."
I've always been skeptical of the great man theory of history, though it's had its moments. On the flip side, you clearly have had a pretty big influence over Linux, and Linux has a big influence over the computing industry. Has Linux made you more humble or has it boosted your ego?
Hey, it's not like my ego was that small to begin with, but Linux sure as hell hasn't made me more humble. What it has done is to make me realize just how much the movers and shakers really do depend on the environment they are in, or have been able to build up around them. And while that still doesn't make me humble, it hopefully keeps me at least a bit more grounded.
And I'm not trying to say that individuals don't matter. Individuals do matter, and I'm a huge believer in the theory that a motivated and smart person can do more than a thousand people who aren't. But what matters more than any individual is the kind of environment that brings in the people who shine. One of the things I think Linux has succeeded really well at is to let people shine.
When Sun releases Solaris as open-source software, will you take a peek?
Probably not. Not because of any animosity, but simply because I don't have the time or the interest. Linux has never been about "others," it's been about getting better than itself, so I don't really have any motivation to play around with Solaris. I'm sure that if it does something particularly well, people will be more than happy to tell me all about it.
Surely if you like the idea of standing on the shoulders of giants, there might be some handy ideas in Solaris. Why ignore it?
Because I personally don't think they have anything left worth taking after I've applied the general Unix principles. I really do think Linux is the better system by now, in all the ways that matter.
But more importantly, if I'm wrong, that's OK. People who know Solaris better than I do will tell me and other people about the great things they offer. To try to figure it out on my own would be a waste of time.
Let us suppose it's a few years down the road and Linux has crushed the versions of Unix in the marketplace. Where do you look for inspiration at that point?
I've never had a dearth of inspiration so far.
The things to do come not really from other systems, but from users. People seldom say "I need Linux to do Y, because Unix did Y," and in fact, that's an argument I fundamentally don't believe in. Rather, the problems that people have are more along the lines of "I need to do X, and I can't find a way to do it" to "I can do it this way, but it sucks because of Y." And that is where the inspiration really comes from.
How much do you spend on near-term planning and on long-term planning? I think you tend to be an improvisational, issue-of-the-moment person, not a let's-design-a-big-framework-that-will-last-five-years person.
Yes. I really can't plan my way out of a cardboard box.
Hey, it's not like my ego was that small to begin with, but Linux sure as hell hasn't made me more humble. All my long-term stuff is very fuzzy "intuitive" stuff, not something I could really put into words. I try to avoid having very specific goals in the long term, and instead have more of a general feel for what kinds of things I like and don't like. Some people may see that as undirected, and hell yes, it is. On the other hand, it's pretty flexible, and exactly because I'm not focusing on some specific goal five years from now I'm also not losing track of the problems people experience today, or ignoring somebody else's vision.
I find people with big visions interesting but often a bit scary. One of my constant arguments on the kernel mailing list (in various guises) is to not redesign the world, but try to make specific small improvements, and let the big payoffs be kind of incidental.
Do you think the Gnu's Not Unix (GNU) project to clone Unix and the GPL--foundations for Linux, obviously--could have happened without Richard Stallman's big vision?
I think it could have happened without him, but that's like saying "what would the world look like if X (some arbitrary great person) hadn't been born?" It would be different, and there's no question that the kind of drive that you get from having a vision is very powerful.
So you might as well have asked whether Linux would have happened without me. Obviously not in that sense. But maybe one of the BSD (versions of Unix) would have grown up instead. Or some other crazy undergrad would have done his own operating system.
Why did you select the GPL to govern Linux, and what kinds of changes would you like to see in the next version?
I really want a license to do just two things: make the code available to others, and make sure that improvements stay that way. That's really it. Nothing more, nothing less. Everything else is fluff.
It may sound like a very simple concept, but even most open-source licenses fail my criteria very fundamentally. They tend to fail in allowing somebody to limit the availability of improvements some way.
And the thing is, in my fuzzy "cannot plan his way out of a cardboard box" world, I don't worry too much about the next version of the GPL. I'm not a lawyer, I don't worry about the exact wording. In many ways, my only gripe with the GPL has been how many words it seems to need to say something very simple. That seems to be a common theme in any legal situation.
How is the kernel-development process changing?
The biggest change was probably that I expected to open up a 2.7 tree (Editors' note: a new experimental version that branches off the current 2.6 version) but didn't really relish the notion. Nobody argued strenuously for that, and instead there was a fairly widely held belief that the current 2.6.x development model actually works pretty well.
Which is not to say that 2.7.x won't happen--it probably will in a few months--but it does mean that the stable release branches are starting to overshadow the development ones. I think that's both a sign of maturity and of the fact that the stable releases are so important to so many people these days that you can't leave them behind as easily.
Does the new process mean improvements make it into Linux faster?
Yes. That's one of the advantages of this model--much lower latency of new things. People always hated the two-year development cycle, as you could tell from how all the threading work we did for 2.6.x ended up being back-ported into 2.4.x because vendors just couldn't wait for it.
What changes are radical enough to trigger the 2.7 tree release?
If I knew, I'd tell you. It basically boils down to: "Do we need to change something so fundamental that we can no longer assume that the things that rely on it work the same way any more?" All the previous development cycles have had core issues that we knew we needed to fix, but that would cause major havoc in the parts that used that core infrastructure.
How many developers do you estimate are working on Linux today? I'm guessing a small fraction of people contribute a large fraction of the code.
It's pretty skewed, yes. On just the kernel, there's a couple of hundred fairly active people. The change logs show about a thousand people in the last year, but many of those are people dipping their toes in the water. And that's totally ignoring a large set of developers, namely the ones that do testing and (quality assurance) and feedback.
What do you think about the increasing prominence of Red Hat and Novell in the Linux marketplace? Does it trouble you that they're increasingly the ones who define Linux for customers instead of you?
Heh. The less I have to do with customers, the better. I've always felt that the biggest contribution the commercial vendors do is exactly the fact that they end up being the interface between customers and developers, and that they also thus end up being the balance between purely technical issues and the purely marketing thing. And open source keeps them (and the developers, for that matter) honest.
Does it seem to you that the Linux sellers are driving the Linux train and you're becoming more of a passenger?
Not to me, it doesn't. I don't think the vendors think that either. But they certainly have a lot of input. That's how it needs to be: People need to feel involved...If anybody feels like somebody is just a passenger, that's bad for everybody.
Is the limiting factor for Linux on the desktop engineering or marketing?
It's a combination of things. (There's) engineering in the sense that there's a lot of details around that can be improved, there's the marketing/perception side and most importantly there's the "user inertia" side.
People tend to stay with (and like) the thing they are used to, and I think that has been the biggest limiting factor for the last year or so, and is only getting more so--i.e., the technology is there, but people aren't mentally ready to make the switch. That's why I think the commercial desktop is important: It's what made DOS (and later Windows) feel familiar to people, and I think that's where the more general desktop push ends up happening. But it's going to take years.
作者: ZDNet China
CNETNews.com.cn 2004-12-23 08:25 AM
CNET科技资讯网12月23日国际报道 莱纳斯?托瓦尔兹(Linus Torvalds)开发出Linux后,受到威胁最大的操作系统大概便是Sun 的Solaris了。
现在,托瓦尔兹及Linux 再次与老对手狭路相逢。Sun 已经将Solaris 转变为一个开放源代码项目,并正在建立以Solaris 为中心的编程人员社区,促进Solaris 在X86 架构服务器上的应用。
但现年34岁的这位芬兰籍程序设计师并没有因此而忧心忡忡,事实上,它一点都不以为意,并对Sun 的这一举动称为“儿戏”。
托瓦尔兹曾任职Transmeta芯片商多年,现在则决定继续在新雇主处Open Source Development Labs(开放源代码开发实验室)待上一段时间。
通过与长期的合作者和主要副手安德鲁?莫顿(Andrew Morton)合作,托瓦尔兹正在试验一种新的Linux 开发模式:经常性地对现有的2.6 版Linux 内核进行修改,而不是数个月进行一次“大修”,其结果是:Linux 内核的改进更迅速了。
在接受CNET News.com 采访时,托瓦尔兹讨论了Solaris 、他的即兴编程风格和其它一些问题。
问:你如何看待Sun 在发布Solaris 10时采取的一些措施━━技术改进、开放源代码、支持x86 芯片?
答:我对Sun 持一种观望的态度。它一贯是“语言的巨人,行动的矮子”,我在等着它的行动。
问:我认为Sun 已经采取了一些措施,它已经恢复了x86 版Solaris ,并增加了一些有趣的功能━━容器、DTrace、ZFS ,它还在积极寻求软件开发人员和软件厂商的支持。Sun 还宣布,正式版本的x86 版Solaris 将是免费的,你如何看待Sun 向x86 平台的靠拢和Solaris 中的新功能?
答:Solaris/x86 纯属“儿戏”,据我所知,它支持的硬件非常少。如果你抱怨Linux 在驱动程序方面还有一些问题的话,你不妨去试试Solaris/x86再来说。
问:IBM 的史蒂夫?米勒(Steve Mills)曾说过,Linux 的大部分开发路线图是“人云亦云”:Unix就是Linux 发展的榜样。那么,Linux 有自己的发展路线图呢?还是只是在利用Unix的技术?
答:我是成熟概念的信仰者。我景仰的英雄是牛顿,部分原因是他获得的巨大的科学成就,但更重要的是他有一句“千古名言”:如果说我看得更远的话,那只是因为我站在巨人的肩膀上。
牛顿实际上并不是个容易相处的人,但这句话正点出了科学的精义。开放源代码就是这样,其要旨就是站在了巨人的肩膀上,对其它技术、理念进行循序见进的改进。
在我看来,仅仅为了实现部分新功能强调自己与众不同而从零开始发明全新的技术,那真是超级愚蠢加虚荣。Linux 的伟大之处就在于,我们不会一概抹煞他人技术,没有在倒洗澡水时连同孩子一块儿扔掉。不像许多计划都以为自己多了不起,这种“我最行”心态(Not Invented Here,简称NIH)其实是一种病态。
问:你觉得外界对Linux哪些误解最让你气愤?
答:我不会那么容易生气,因此也没有什么说会特别气愤的东西,不过外界有一种说法挺有趣的,认为单靠一人或一家公司之力就可以让整个市场天翻地覆,这种误解其实非关Linux,甚至非关IT产业,有人总认为事情的成功是因为当初有人特别有远见,所以才有今天的成果。大家似乎都很相信这种说法,这其实是一种虚荣心作祟。
我总是得不断跟外人解释,我没能耐控制Linux的发展,这只是因为这种环境而助长了开发,而不是因为某某领导人多厉害。不管是什么超级伟大的教练或什么精神宗师,其实都是同样的道理。
问:这种伟人论我自己也觉得蛮假的,不过再怎么说,你对Linux还是有相当的影响力,而Linux又对运算产业有巨大影响,你会因为Linux而更谦虚?还是更觉得有使命感?
答:我并非以前就没使命感,但我不会因为Linux而更加谦虚。我反而更加认识到那些呼风唤雨人士怎么做其实跟他所处的环境变化有很大的关连,虽然这不会让我因此变得谦虚,但至少会让我更加脚踏实地些。
我并非说个人不重要,个人其实很重要,且我相信聪明人能够做的事比一般凡人更胜千百倍。但更重要的是你必须有适当的环境才能让人发光,而Linux最大的成就就是让能人得以发亮。
问:当Sun 发布开放源代码版的Solaris 时,你是否会看看其源代码呢?
答:可能不会。我不看的原因并非是因为憎恨,而只是因为我没有时间和兴趣。Linux 从来都与“其它竞争对手”无关,其目的只是希望能够超越它自己,因此我对Solaris兴趣并不大。我相信,只要Solaris 真有任何优异之处,别人会告诉我的。
问:你刚才不是说我们都站在巨人的肩膀上吗?Solaris 中可能确实会有一些不错的创意,为什么要忽视它呢?
答:因为我个人认为,该拿的我都已经从Unix通用原理上学到了,Solaris 就没有值得学习的地方了。不管从哪个方向来比较,现在Linux就是略胜一筹。
但更重要的是,即使是我错了,Solaris 的确有优于Linux 的地方,会有人给我提出来。自己试图找出这些东西无疑是在浪费时间。
问:我们假设,未来数年后,Linux 已经战胜了市场上所有版本的Unix,到时候,你还从哪里寻找灵感?
答:我从来都不缺乏灵感。
我的灵感不是来自其它系统,而是用户的需求。用户通常不会说“Unix可以这样做,Linux怎么不行”云云。一般我们常听见的是:“我希望有某某功能,但却找不到”,或者说“虽然可以这样做,但却不甚理想”等。我们的灵感都是来自于此。
问:你在近期规划和长期规划方面花了多少精力?我认为你是一个“即兴的”人,而不是一个“制订长期规划的”人。
答:对,我真的不会做出长期的规划。我的长期规划都是模糊的、“直觉的”东西,我无法用文字表达它们。我会尽量避免制定长期的目标,对自己喜欢和不喜欢的东西更多的是一种感觉。一些人可能会认为这是一种随意的方式,没错就是如此,但它非常灵活,我们不会因为专注五年后的事,反而忽略了眼前应该解决的问题。
我觉得有那种远大理想虽然有趣,但也很可怕,我最常讲的是,我们没什么宏图大志,我们只专注在小改善上,至于小改善是否会掀起大革命就顺其自然了。
问:你认为没有理查德(Richard Stallman)的远见卓识,GNU 项目和Linux所采用的GPL 能够问世吗?
答:少了他还是有可能实现,但会有些不同。这就好像说“若少了某某伟人,世界会怎样一样?”世界是会不一样,毫无疑问的是,远见卓识带来的动力是非常大的。
你也许还会问到,没有我Linux 是否会问世这一问题。我不是在自我吹捧,可能一种BSD 版本的Unix会发展起来,也可能是另外一个大学生开发出了另一套操作系统。
问:为什么会为Linux 选择GPL?你希望新版GPL 会有哪些改进?
答:我那时只希望找个能符合以下两点的许可协议:一是将代码向其他人开放,二是对代码的改进都能提供给大家。就是如此而已,其他说法都是言过其实。
这听起来非常简单,但大多数的开放源代码许可协议都不符合我的标准,它们的失败之处就在于:使某些人能够控制对代码的改进。
我对新版GPL 并不担心,我不是律师,对具体的字眼不感兴趣。我对GPL唯一的抱怨就是很多简单的事情却要罗哩八唆写了一堆,不过碰上法律似乎就是如此。
问:内核开发过程如何变化?
答:我设想的最大变化是开放2.7 版Linux 内核树(一种对2.6 版Linux 内核树“分叉”处理的试验版本),但没有人支持这一想法,其他人坚信,2.6.x 版Linux 内核的开发模式就很好。
这并不意味着2.7.x 不会问世━━它将在未来数个月后问世,而是意味着稳定版Linux 内核树将使开发版黯然失色。我认为这是一种成熟的标志,也表明稳定版本对人们非常重要,不能轻易地抛弃它。
问:新的开发过程意味着改进将会被更快地集成到Linux 中吗?
答:是的,这是这种模式的优势之一。人们已经讨厌了长达二年的开发周期。
问:哪些变化足以触发2.7 版Linux 内核树的发布?
答:如果我知道,一定会告诉你。以前的开发周期中,我们都知道需要修正的核心问题,但这会对依赖这些核心架构的部件形成很大的破坏作用。
问:目前有多少人在开发Linux ?我认为少数人贡献了大部分的代码。
答:经常性地参与Linux 内核开发的约有200 名开发人员。记录表明,去年参与Linux 内核开发的有1000人左右,但大多数都是偶尔参与开发活动。不过这还不包括其他开发人员的贡献,比如作测试,品管或给予意见者。
问:你如何看待Red Hat 、Novell在Linux 市场上越来越重要的地位?它们更多地是根据客户而不是你的要求修正Linux ,你对此感到苦恼吗?
答:我与客户打交道越少越好。我认为商业性厂商的最大贡献就是成为开发人员与客户之间的沟通桥梁,它们能够在纯技术和纯商业性问题之间取得一个平衡。开发源代码也可让技术人员比较能够忠于自己。
问:你是否感到是Linux 厂商在主导着Linux 的发展,而你只是过客而已?
答:对我而言不是这样,我认为厂商也不会这样认为。但他们的确给了许多意见,人们需要参与感,如果有人觉得自己只是过客,这对于大家都不是好事情。
问:Linux 进入台式机领域现在最大的障碍在桌面型技术还是营销方面呢?
答:这是一个综合性问题。应该是两者都有,在桌面型技术方面来说,Linux 还有许多改善空间;有些也跟营销方面有关,但更重要的是用户的“惯性”,就是使用者有没有动力的问题。
一般人总是懒得改变,过去这一年来这种情况尤为明显,技术明明已经在那边了,但用户还没有转换的心理准备,因此我才会认为商业化的桌面型很重要,这也是DOS(以及后来的Windows)让大家觉得很熟悉的主因,大众化的桌面型总要早上这条路,只是这还得花上好几年的时间。
(个人不推荐这个译稿,比原稿少了很多信息)
the guy just refuses any truth as long as the truth is not praising linux kernel.
linux kernel development is just following freebsd. that is it. freebsd kernel rocks. but it beats me why linux gets so much publicity while bsd remains a geek's backyard hobby.
but of course i donot like sun either. the sun workstation stuff they bull so much about, it is just a thin client display running x-server + smart card authentictaion. the only new things are 1. enable session cache on server side and session tagging on smart card 2. translate MS remote desktop to x protocol.
or maybe i just did not like the sun demo guy, hehe.
Can you give details on how Linus denies any truth that is not praising Linux kernel?
I have to disagree on the conclusion that "Linux kernel development is just following freebsd". Since day one, when Linus released the source code under GPL, Linux has taken a different development model from BSDs. After 12 years, Linux has outgrown BSDs in features and hardware support. More and more organizations and companies have joined the Linux camp, not only for the license, but also for the technical merits.
Should we care his sex orientation? I don't think so! Straight, gay, bisexual or whatever, that's his own business.
You may dislike him. But you may not disgrace him.
Actually, Sun's stock price dropped a lot in recent years (5 year chart).
See, quite a lot!
well, there is even a web site, obviously created by some bsd-er, called linuxisforbitches.com, hehe hope we won't go that far.
anyway, i don't want to comment on linus, you can find enough materials about him on the web. just stick with the technicals. i began as a linux user, then fall in love with bsd. today my desktop is still linux/win xp, but for most of the serious projects i do i choose bsd. i don't care much about the rest of the kernel such as memory, scheduling, file system, etc. other people have made debates on those issues. just my personal experience, the networking part of the kernel. even alan cox admitted that linux's tcpip stack followed bsd. well to be fair the whole world follows bsd on this. another example is pf socket following bpf. people are talking about following freebsd and do netgraph in linux as well. also the /proc system...
i did not compare freebsd performance with linux personally and i do not want to quote what other say about the same issue, but we indeed compared linux firewall with openbsd firewall under heavy loads. openbsd won hands down. that linux box never lasted longer than a week without reboot.
it is interesting why linux community is significantly bigger. someone says that today's *bsd started as unix people porting unix to pc; while linux started as giving pc people a unix. so linux community starts off bigger i guess. another theory of mine is that linux is only a kernel, most people are far from knowledgeble enough to get various libraries, drivers, and software to get their linux boxes up running. so packaging service is needed and there is money to be made. companies like redhat thus get in, and helped linux community grow. bsd has centralized depot for whole system, not just kernel. there is no need for packaging service.
FUDs are not only from enemy, but also friends. :) Being a fan of Linux and Linus Torvalds, I have to defend.
I have followed Linux kenerl development for quiet a few years. I visit LWN.net, kerneltraffic.org and kerneltrap.org daily. I also read messages on the Linux kernel mailing list occasionally. These places are well known as the prime Linux newsrooms. So far, I haven't heard anything terribly negative about Linus. Otherwise he couldn't successfully lead the community for so long.
Personally I think Linus Torvalds is one of the kind that knows what he needs and how to get it. Everyday, around the world, millions of people work for and with Linux. Some are for fun, some are making their livings of it. Not to mention those big names such as IBM, CA, HP, Oracle, etc. Everyone has her own goals and agenda. You can imagine how difficult to have everyone agree on where Linux is going and move the ball forward. Linus has been successful so far. He is well accepted as the leader in the community, not only spiritually, but also technically. His position is irreplacible. And he earned it.
Nobody is perfect. In some rare occasions, Linus did act like a bastard (he once said so publicly). But more often than usual, he was right. And more important, he is always willing to admit it when he was wrong. And it is well known that some *BSD developers are hard to work with.
If you have any solid evidence that shows Linus is an asshole, I'd like to see it. But if all you have are from those "BSD losers" web sites, please save us the time.
As for deciding which is better among Linux and *BSD, it really depends. Linus and his lieutenants have never claimed Linux is better than *BSD. We all know that there isn't such a thing as "the perfect OS that fits all". Linux and *BSD all have their own strengths and weaknesses. If, in YOUR case, FreeBSD works better than Linux, congratulations. You have done your homework and found the right solution to your problem. In the meantime, myself and many many others have found that Linux is more suitable than *BSD for our cases.
Linux has gained serious support and commitment from so many individuls and organizations all over the world. Nobody can afford ignoring Linux now. Not even the once invincible Microsoft. Linux must have something that makes it different from *BSD.
First, it is the license that Linux is released under. The General Public License version 2 protects contributions to the Linux kernel from being taken to benefit a third-party without returning to the community. It also makes sure that Microsoft's infamous "brace and extent" tactic won't work here. That is what *BSD lack. It is one of the reasons that IBM and SGI ported JFS and XFS to Linux but not to *BSD. More and more software are designed and developed on Linux and then ported to *BSD. It used to be the other way around.
Linux supports more architectures than FreeBSD and OpenBSD. It is only behind NetBSD. Linux has better support to hardware components such as Infiniband, Wifi, 10Gb Ethernet.
Linux has established its reputation in performance. It is the No. 1 choice in grids and clusters. As of November 2004, more than half of the top 500 supercomputers in the world run Linux. On the other end of the scalability spectrum, Linux become more and more popular in embedded devices. WindRiver which is a big BSD player and used to be hostile to Linux joined OSDL where Linus works.
One of many projects under the OSDL umbrella is called "Carrier Grade Linux". It represents the highest level of stability requirements because the operating system will be for the telecommunication carriers. Guess who are those working on the specifications? Ericsson, Nokia, Alcatel, Hitachi, etc. Had they not seen Linux as a solid platform, they wouldn't spent the time and money on it.
There are countless reports that people run Linux on all kinds of load for months and even years without a single restart. Stability has never been an issue for Linux. If well tuned, a Linux box is just as stable and secure as any well-tuned *BSD ones. And you wouldn't expect a default installation works for you out of box, would you?
After doing Linux jobs for five years, I switched my job to work on Mac OS X recently, mostly because I believe that Mac OS X will be successful on desktop. Just as Linux will be taking over the server room. By some people, Mac OS X is considered a "beautified" FreeBSD. In that sense, we will both win. :)
First of all, don't confuse FreeBSD (and other BSD derivatives) with the original Berkeley Software Distribution. FreeBSD and NetBSD were created on top of 4.4BSD and Net/2 around year 1992 and 1993. OpenBSD was a fork of NetBSD 1.1 in 1995.
Linux was first introduced by Linus in August 1991 (I was wrong when I said Linux has been around for 12 years. It's longer.) Linux was actually born early than FreeBSD. I don't know if Linus had access to BSD's source then. The well-known fact is that it was Minix that had great influence on Linux. Linux's programming interface mostly adheres to the SVR4 UNIX semantics, rather than to BSD behavior. Nevertheless, being a UNIX-like operating system, imprint of (original) BSD has found the way into the Linux as time goes by, just like how AT&T's SysV has affect in Linux. But to conclude that Linux kernel is a copycat of FreeBSD is simply absurd.
According to the change logs in Linux kernel source code, the Linux procfs was created by Linus in year 1991. FreeBSD didn't even exist by then. The Linux procfs covers much more than just process information as FreeBSD's does. FreeBSD had to introduce the linprocfs to be compatible with Linux. I don't see how Linux is following FreeBSD in this area.
FreeBSD's manual page says that the first packet filter was created in 1983 at CMU. It was then ported to BSD in 1983. The BPF was implemented in 1990. Linux had its first generation of kernel packet filtering facility, ipfwadm, in 1996. The current implementation iptables is the third generation. It is likely true that the original idea was from FreeBSD given that BSD has had it for so long. But then again, this alone cannot support your claim that Linux is just following FreeBSD. It is well-known that *BSD have borrowed much from Linux just as well Linux has learned from them.
It is said that Linux's networking-administration tools was derived from the 4.3BSD code. And more interestingly, FreeBSD is said to have borrowed those code from Linux in return.
While you had bad experience with Linux packet filtering, I know people who are using Linux for firewalls and routers. Linksys has built a whole slew of firewall and router products based on Linux. A friend of mine works for a company building hardware antivirus firewalls for ISPs. The top end model has throughput of 1 giga bit per second, with 600 thousand concurrent sessions. The operating system is Linux.
Linux might have bad implementation of some features. That does not support your conclusion that the Linux community lacks innovation.
While Linux and FreeBSD (and other BSD derivatives) have a lot of features in par, there is one that Linux has been in lead, support to multiple processors. Linux gained SMP support in June 1996, with release of kernel 2.0. It has been much improved since then. Last year, SGI successfully built a 1024-node Linux SMP system. According to its own manual pages, SMP support in FreeBSD only started appearing in year 1997.
So much being said, the point is that both Linux and FreeBSD has learned from each other. Both has its own strengths and weaknesses. You may dislike Linux. There is just no need of spreading FUD against it.