Slashdot Mirror


Fork the Linux Kernel?

Joe Barr writes "Fork the kernel? Are you crazy? A blog entry on InfoWorld.com urged the Linux community to fork the kernel into desktop and server versions because, according to the author, all Linus Torvalds cares about is big iron. Sorry, but that's both wrong and stupid."

95 of 455 comments (clear)

  1. Well that's the beauty of Linux... by tekiegreg · · Score: 4, Insightful

    If you want to fork the Linux Kernel, there's absolutely nothing from stopping you from doing it yourself. Wanna tune a version just for Desktop or Server? By all means, just adhere to GPL. Your attempt at forking might even get some support from the community, however I'd think Linus's blessing on such a fork means something however...

    --
    ...in bed
    1. Re:Well that's the beauty of Linux... by MightyMartian · · Score: 5, Informative

      Or, alternatively, you could just custom compile the fucking thing to take out the "big iron" if that's what you want. I frequently custom compile kernels, particularly when I'm putting Linux on older hardware.

      There's nothing quite like the grand proclamations of the idiots.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    2. Re:Well that's the beauty of Linux... by leuk_he · · Score: 4, Informative

      Actually a lot of forks do exist and are supported. There are all kind of real-time and low-latency and security patches floating around that get a lot of attention. Most big vendors do not ship a exact copy of the version that linus creates, but add some patches/modules that they think their actual users need.

      One time they may be get merged into the main linux kernel, or maybe their features are obsoleed by features that are accepted by linus.

    3. Re:Well that's the beauty of Linux... by MightyMartian · · Score: 4, Insightful

      Can you, or this blogger, or anyone, site some actual evidence that shows what the fuck "optimized" even means? You know, you guys go around spouting stuff about how Linux is too serveresque, but no one so far as I've seen has even defined that. A decade ago there might have been something to the complaint, although I can tell you now that I can take a Pentium 233mhz and turn it into a router running the newer kernels, and have it run like a hot damn, so I think you, like some other folks, are just spouting ill-conceived crapola.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    4. Re:Well that's the beauty of Linux... by archen · · Score: 2, Informative

      Optimized in current terms of Linux is really all about tuning it for its intended role - which can have a significant difference in performance. The scheduler has gotten a lot of attention lately. There is also preemption which is typically opposite when considering server and desktop roles. Aside from that there is the internal kernel 'clock' (that might be the wrong term, I can't recall right now). Generally on servers you would probably want a lower 'tick' so more work is done, while desktops would want a higher tick count - which I may be wrong but I believe this reduces latency and improves perceived responsiveness.

      And as others have said you don't need different versions of Linux, just different compiled kernels you can select. Wow, that was a lot harder than forking Linux wasn't it? Slow news day?

    5. Re:Well that's the beauty of Linux... by rawler · · Score: 2, Insightful

      The comment was not about performance on low-end hardware. Linux performs great on all kinds of hardware, in terms of throughput.

      The discussion here is about responsiveness vs. throughput.

      What I find funny, though, is why people is always screaming about the Desktop, when many embedded/real-time systems are the ones that really need strict-priority-scheduling and preemption to reach their deadlines.

      (In case anyone wonders it's not ok to chop the operators arm of, since the saw were currently calibrating power-consumption when the accident happened.)

    6. Re:Well that's the beauty of Linux... by recoiledsnake · · Score: 2, Interesting

      Can you, or this blogger, or anyone, site some actual evidence that shows what the fuck "optimized" even means? You know, you guys go around spouting stuff about how Linux is too serveresque, but no one so far as I've seen has even defined that. A decade ago there might have been something to the complaint, although I can tell you now that I can take a Pentium 233mhz and turn it into a router running the newer kernels, and have it run like a hot damn, so I think you, like some other folks, are just spouting ill-conceived crapola.

      Huh? Cite what? Have you been living under a rock? Even Linus knows the issues involved and hence is moving to CFS in the latest kernel.

      The issues are complex, so no wonder your oversimplications and silly anectodes fail to make the cut. As for actual evidence, read about how Con Kolivas set about doing exactly what you asked here . Also I think you should read the CK mailing lists if you really want to get into the nitty gritty details.

      Why not try to keep yourself informed instead of accusing others of spouting crapola? Or maybe everyone should take your word and stop trying to improve Linux because you "can take a Pentium 233mhz and turn it into a router running the newer kernels, and have it run like a hot damn"

      --
      This space for rent.
    7. Re:Well that's the beauty of Linux... by MightyMartian · · Score: 2, Interesting

      He criticizes Stallman because Stallman is a fanatical maniac. Not that Linus is that much better, but at least he's still productive, as opposed to having turned into a prognosticating mushroom.

      As to forking, there's nothing Linus can do to stop you or anyone. Go ahead, fork the goddamn thing.

      --
      The world's burning. Moped Jesus spotted on I50. Details at 11.
    8. Re:Well that's the beauty of Linux... by complete+loony · · Score: 2, Insightful

      Forking the kernel is a requirement for working on it. Everyone who is maintaining the kernel is editing their own fork. That's how git works. Git is modeled on an idealized implementation of the GPL, everyone can create their own fork, but equally every change in every fork can be contributed back again. Which is why Linus thinks it's better for kernel development than CVS/SVN.

      --
      09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.
  2. Meh by paullb · · Score: 5, Funny

    I'd rather spoon it

    1. Re:Meh by Archangel+Michael · · Score: 4, Funny

      Me, I'm gonna spoon the fork. I'm gonna SPORK it. :-D

      --
      Agent K: A *person* is smart. People are dumb, stupid, panicky animals, and you know it.
    2. Re:Meh by Anonymous Coward · · Score: 4, Funny

      spooning can lead to forking, if you are lucky ;)

  3. sure by JazzyMusicMan · · Score: 2, Funny

    Why not? It made Microsoft plenty of money...err

  4. Why is it stupid? by xtracto · · Score: 3, Insightful

    I can not see why is it a stupid idea. Forking the Kernel in desktop and server forks will mean that each specific kernel is optimized for such tasks and that the distribution makers have just a subset of the huge kernel to care about when creating their distributions.

    A server is a relly different beast than a desktop and having this "all-in-one" kernel means that the operating system gets bloated with a) desktop specific features when using a server and b) Server specific features when installing a desktop.

    I think that a controlled fork in the linux version control tree might be beneficial.

    --
    Ubuntu is an African word meaning 'I can't configure Debian'
    1. Re:Why is it stupid? by Gordonjcp · · Score: 4, Informative

      A server is a relly different beast than a desktop and having this "all-in-one" kernel means that the operating system gets bloated with a) desktop specific features when using a server and b) Server specific features when installing a desktop.

      Perhaps the source code does, but there's nothing stopping you from leaving out all the server-specific stuff from your desktop kernel when you compile it. If you're producing a server-grade OS, leave off the desktoppy stuff. Simple.

    2. Re:Why is it stupid? by DaleGlass · · Score: 4, Insightful

      Because the distinction between server and desktop is rather fuzzy these days. What could you leave out of the desktop OS?

      RAID? Doubtful with it being so affordable these days.
      ECC RAM? That can be had on many boards as well.
      Support for SCSI tape drives? Does my box suddenly turn into a server if I get a cheap drive on ebay?
      Ok, how about say, optimizing the desktop version for latency and the server version for throughput? Problem with that is that there exist server tasks that want low latency.
      Years ago you'd say "remove SMP support, nobody uses that". Not so these days.

      What could you leave out of the server?
      Support for sound cards? What if it's a server that records audio?
      Support for video cards? What if the server uses it for computation (rare but possible)

    3. Re:Why is it stupid? by ForumTroll · · Score: 2, Informative

      Perhaps the source code does, but there's nothing stopping you from leaving out all the server-specific stuff from your desktop kernel when you compile it.
      This is NOT true and it keeps getting repeated here. Compiling the kernel does not allow you to change algorithms that are performance bottlenecks for desktop systems. Unless you're applying patches, merely recompiling the kernel offers very little in terms of optimizing it for the desktop.
      --
      "A Lisp programmer knows the value of everything, but the cost of nothing." - Alan Perlis
    4. Re:Why is it stupid? by walt-sjc · · Score: 2, Informative

      It's already done. ALL THE TIME. Ubuntu, Redhat, Suse/Novell all maintain their own version of the base kernel. There is NO reason why some other person (or group) can't maintain his "desktop tuned" kernel. He would be wise to re-sync with the base kernel every now and then unless he wants to start maintaining all the drivers....

      The objection is that maintaining the patch is a PITA. IMHO, it's a lot easier to just maintain a patch set than an entire kernel however, but FORK AWAY!

      All this said and done, I have been using Linux as my primary desktop for the past 10 years. I have no issues with "jittery" video on my modest 3 year old desktop (a single core P4 2.4G, with 1G ram), even playing HD content. I guess I just don't understand the problem. It is certainly better than my "occasional use" Windows XP laptop, which is a new dual core, 2G ram box that can't reliably play a DVD without jitter.

    5. Re:Why is it stupid? by diegocgteleline.es · · Score: 2, Informative

      A server is a relly different beast than a desktop

      No, it isn't IMO. It's all software that does the same things: open, read, mmap, copy, etc. Different software names, sure, and different workloads, but there's not so much difference. The kernel doesn't care if the process reading a file is apache or firefox, it just tries to read it fast. It's have been a long time since desktop was "stupid" software. Desktop software needs performance just as much as a server.

      This (stupid) idea of splitting the kernel seems to come from people who thinks that the linux kernel is missing "optimization oportunities" from having a single kernel for all. Quite the contrary, i think we benefit from having it unified. Optimizations done to improve workloads for desktops usually _also_ benefit some server workload, and the reverse. And today's server hardware is tomorrow's desktop, so supporting well the servers means you work well tomorrow in the desktop. From the puristic design POV of many kernel hackers, they would tell you that a kernel that doesn't work for servers but does for desktops is broken and must be fixed. Of course, this is not always possible and there're also lots of config options to enable/disable particular functionality, but they aren't usually developed from the marketing POV of "this is for servers of desktops", but rather from a technological POV "when you run this workload, this feature improves the performance..." (like the sysctls at /proc/sys/*) or things like that.

      Take for example, the real-time patchset. Other operative systems take real-time like something that only very few people dedicated to embedded devices use - they even don't care about it and leave that task to specialized real-time OSes. But in Linux, people developed a real-time patchset - they didn't though so much in what devices would use it, but rather in the technology. So, when the patchset was ready, Red Hat and Novell and others have launched server versions of a real-time. Now, those realtime server versions are happening to break latency records when serving transactions in Wall Street. This would have never happened if linux had different branches for embedded devices. In fact since most of the "other" operative systems are developed according to the needs of their company, and their company segments their way of working in "market segments", they've never though about trying to include realtime support in their operative systems.

      So, please, let's leave "market segmentations" to red hat and novell, who can enable/disable extra features for specific market segments. Leave the kernel outside of that discussion, the kernel should only focus in technology. Me, as a geek, I might want to have a apache server being slashdotted and/or a FTP server running at the same time I play a 3D game. Just because the marketing teams think geeks are not worth of releasing a specific product optimized for me I shouldn't have good technology in my kernel to do whatever I want.

    6. Re:Why is it stupid? by 644bd346996 · · Score: 5, Insightful

      Which algorithms are bottlenecking your desktop? Is it the I/O scheduler? You can swap between one of four choices, at runtime.
      Is it the CPU scheduler? If so, you're a liar. Nobody had produced repeatable benchmarks that show a significant shortcoming in CFS for desktop and gaming use.
      Is the memory allocator really bad for your workload? Try using the new SLUB allocator, instead of the older SLAB allocator.
      Is the system not as responsive as you want? Turn on forced preemption and set the tick speed to 1000Hz.

    7. Re:Why is it stupid? by Burz · · Score: 2, Interesting
      It is not stupid.

      1. For one, there's no attempt to provide a stable ABI for 3rd-party drivers, so users must contend with their video card not working after upgrading the kernel.
      2. Same goes for all kinds of drivers, like VMware, OMFS for my Rio Karma, and some Wifi modules. The only accommodation has been the new userspace driver interface for low-performance devices... far too little too late.
      3. The Sound architechture is a failure: Even with OSS fully deprecated there are still various sound servers the user must contend with, resulting in blocked audio output. It took ages to deprecate OSS and now ALSA is not working! This means that people cannot rely on calendar alarms, softphones and such. All audio output should be MIXED unless a special app jumps through well-defined hoops to get exclusive access, and telling people to buy the $70 multichannel sound card is not acceptable.
      4. There is no active "Linux Compatible" trademark promotion for hardware vendors to use. How are end-users and retailers supposed to clue-in and make compatible purchases otherwise? Have the kernel devs even bothered to put a friendly and concise HCL online?
      5. Like audio, Power Management is nine years behind Windows. Among other problems, where is the ability to have USB and FW drives automatically spin down when they're inactive? Oh wait, those aren't used in the server room...

      The above list is by no means exhaustive, but it indicates (no, PROVES) that the kernel development model is hackneyed, lacking the concept of defined actors and use cases, and considers common end-user scenarios only capriciously. They've talked themselves into believing that user interfaces aren't their job at that level; that anything they toss down from the on-high server market will more than suffice for desktops, when nothing could be further from the truth.
  5. Fork? by EggyToast · · Score: 4, Insightful

    It's a blog post, so it's not like it's going to happen, but I don't see how forking the kernel would do anything than just lead to distribution craziness. Arguably that's Linux's biggest hurdle for new people -- deciding which distribution to get. And if people are checking out linux for workload purposes, forcing them to decide whether to get a server distro or a home distro and making that distinction at the kernel level? Buh?

    Generally, if it's good enough for enterprise, it's good enough for home use. And things that are useful for desktop Linux are often utilized at the enterprise level anyway. So yeah, it's just a blog post; I'm not sure anyone will take it seriously.

    1. Re:Fork? by bogaboga · · Score: 2, Insightful

      so it's not like it's going to happen, but I don't see how forking the kernel would do anything than just lead to distribution craziness.


      We already have "distribution craziness", with each distro placing vital system files in different places...and sometimes applications requiring different versions of a particular file in order to function. Man, it's crazy already.

  6. It already is "forked" by trolltalk.com · · Score: 3, Interesting

    ... but only in the sense that it is customized for different purposes - mobile phones, desktops, servers, supercomputing clusters.

    Besides, most people's desktops are much more powerful than any server you'd be able to buy years ago. With the cost of cheap disks going down, there's no excuse for even home users to ignore the benfits of such "server" features as raid.

    1. Re:It already is "forked" by trolltalk.com · · Score: 2, Interesting

      Your grandmother probably doesn't have 10 year's worth of email that she doesn't want to lose. And most users don't bother backing up because its too much of a PITA.

      Your average user NEEDS a quick and simple backup procedure.

      RAID1 is simple to set up, makes the machine run faster (reads are split between the two or more mirrored drives), and backing up is a matter of a minute - you turn the machine off, pull out one drive, insert a new one, reboot and rebuild the RAID in the background).

      So, with the addition of a couple of hard drives in removable housings, you have a backup solution that works, is easy enough that even grandma can do it, and also improves your machine's performance.

      A lot cheaper than losing everything and re-installing from scratch ...

  7. Actually.... by inode_buddha · · Score: 2, Interesting

    Actually, its been done before. Remember when we had a "stable" and an "unstable" pair? IMHO the idea of forking into desktop and server versions is a technical answer to a political problem with various developer's goals.

    --
    C|N>K
  8. Why is this even controversial? by xxxJonBoyxxx · · Score: 3, Insightful

    Despite all the warm, fuzzy talk of open source and community development, the fact remains that, at the kernel level at least, Linux is still controlled by a small group of elitist "prigs." Stick too close to the "approved" Linux path and you end up with a crappy desktop experience. Stray too far, and you risk having your customizations broken if/when the kernel team decides to take things in a new direction.


    Why is this even controversial? If you don't like the way things work, the beauty of open source is that you can fork the code at any point. So...quit whining ("prings"?) and good luck with your fork.

  9. Fork for other reasons by athloi · · Score: 2, Interesting

    A different branch of distros for the desktop makes sense, but I'm not sure the kernel is what needs addressing.

    It makes sense for Linux to fork into two branches: one, a conservative one, aimed at upkeeping what already works, and the second, a wild-ass anarchist, aimed at forging new and innovative technologies.

    I think what the original author was saying was that he/she would like the Linux community to fork into two branches, one thinking like desktop software (Windows XP is the best example) and another thinking like big iron, where Linux already has a presence but could learn a thing or two from *BSD.

    1. Re:Fork for other reasons by Mr.+Underbridge · · Score: 2, Insightful

      It makes sense for Linux to fork into two branches: one, a conservative one, aimed at upkeeping what already works, and the second, a wild-ass anarchist, aimed at forging new and innovative technologies.

      That's what they used to have with odd-number versioning. Problem is that cross-merging kept happening and the whole thing turned into a mess. Seems like what they do now (I'm not a kernel developer) is to do mini-forks to work on the new technologies and merge it back in when it works well enough. Sounds like a good idea to me - I don't think it wise to have *all* the buggy stuff in one 'test' distro, because the last thing I want when trying to debug *my* buggy code is sharing a codebase with *everyone elses* buggy code. And it's not like all the 'test' stuff finishes at the same time, so either distribution gets delayed, certain features get rushed, or you just end up merging some stuff back into stable anyway.

    2. Re:Fork for other reasons by ChakatSanddancer · · Score: 2, Insightful

      It makes sense for Linux to fork into two branches: one, a conservative one, aimed at upkeeping what already works, and the second, a wild-ass anarchist, aimed at forging new and innovative technologies.
      I totally agree here. We need to bring back the odd numbered branches for doing development work. I don't want to have to track down a specific sub-sub version if I want code tweaks, etc. The current system just means that the entrenched developers get to push their projects to the detriment of everyone else. Linux needs a branch where people can work without being afraid of breaking things, because that's pretty much the only way you're going to get good ideas right. The current system is just unworkable, and is making me take a good hard look at the BSDs or Solaris.
  10. Fork? No. Seperate projects? Yes. by Vanders · · Score: 3, Interesting

    There is no need to fork Linux into a "desktop" version. Projects like Syllable already exist, and we re-use a fair amount of code from Linux, GNU and other OSS projects.

  11. So? by SatanicPuppy · · Score: 3, Insightful

    Shrug. Let 'em fork it. I doubt they'll be able to swing enough maintainers to seriously effect development on the main fork.

    One of the great strengths of open source is that it allows for competing code. If the new fork is better (I view this as unlikely) then I'll switch. I'm about what works.

    When the level of discourse falls to articles of faith and prejudice, it's not about what's best for the code anymore. It's about your personal ideology, y

    --
    ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
  12. Keep the code together; make it configurable by Kartoffel · · Score: 5, Insightful


    # Forking isn't necessary.

    options BIGIRON
    #options DESKTOP

    1. Re:Keep the code together; make it configurable by pohl · · Score: 4, Insightful

      At the moment I'm making this post, the parent post has been moderated "Interesting". I think "Insightful" or "Informative" would be more appropriate.

      What the parent poster is saying is that C pre-processor flags already allow the same kernel source code to contain features for both server and desktop without resulting in any bloat or compromise in the resulting binary.

      Only those who don't understand C would fret about a "bloated" kernel in this context.

      Now given a binary kernel that contains both feature sets you would have a legitimate concern, because then there would certainly be a bevy of both bloat and compromises. But this is linux, after all. We have the source code -- so none of that matters.

      --

      The "cue the foo posts in 3, 2, 1..." posts will commence with no subsequent foo posts in 3, 2, 1...

  13. The Kernel Isn't The Issue by craznar · · Score: 2, Insightful

    Linux has far too many varieties already, it makes mainstream hardware and software support almost impossible.

    And they want to fork the only consistent bit ?

    If they want to do a desktop version, it's time for the kernel developers to branch out into standardising Desktop libraries, desktops (KDE vs Gnome), devices, packages etc etc... so that we can have our 1000 versions of Linux and a single underlying version of Desktop Linux.

    Maybe then, Linux may make a dent in the world of Desktop Windows.

    --
    EMail: 0110001101100010010000000110001101110010 0110000101111010011011100110000101110010 0010111001100011011011110110
  14. Aside from the flamebait-ish nature of the post.. by somersault · · Score: 2, Insightful

    The less segregation in the Linux world the better, at least until desktop Linux is better at coping with new versions of the current kernel line (eg nVidia graphics drivers needing recompiling when a new version comes out and that sort of thing). Having different forks of the kernel would eventually also lead to software that can only be run on one fork without modification, and that's not much use either. The less work involved in porting to different distros/platforms, the better IMO.

    --
    which is totally what she said
  15. linux much better on low end machines by Gearoid_Murphy · · Score: 2, Insightful

    fact, the kernel is the core, everything else sits on top, no matter what, server, desktop, etc. Linux is doing well in server, desktop, mobile devices because its consistently provided a powerful and (read this, microsoft bastards) functional operating system. I have friends with reasonably powerful laptops which choke on windows bile, become soperific and lethargic, unresponsive and surly (like the dwarf). I run X windows with fluxbox on some of our old servers fine. Splitting linux is pointless and counter productive. Viva la linux!

    --
    prepare the survey weasels.
  16. One size rarely fits all by Creamsickle · · Score: 5, Interesting

    People who advocate this aren't necessarily stupid, just ignorant. The Linux kernel's flexibility is being taken to the limit, and people are forgetting the easiest way to improve performance for their particular rig: Customize your kernel! You can add all the code in the universe, and then you pick and choose the particular things you need or don't need! Say I run a 486/25 with 16 MB RAM as an IP Masq router. The hard drive is an old IDE with 600 megs of space. I have two network cards, and that's about it. Do I need SCSI support? Do I need to support joysticks, X, Pentiums, AX.25, or anything else? No! I compile a kernel specifically to run the IP Masq, and run it well. My P100 laptop, on the other hand needs a bit more. I use it for packet, so I need AX.25. It uses PCMCIA, so PCMCIA support needs to go in. I use Seamonkey and the GIMP, so I need graphics. But, my HD is not SCSI. I yank out SCSI. My CPU is subject to the 0xf00f bug, so that gets included. I brew a custom kernel, and boot time is a lot shorter. My big-rig is a AMD X2. I need just about everything, as I have a Nvidia card for Quake4; a SCSI scanner; and a connection to my Packet base station. I optimize compilation for the higher-end computers. I plan on getting a Mac Pro from Apple and putting SuSE on it. Again, by optimizing the options I optimize my system. Get the point? If you want a once-size-fits-all kernel, use Windows. If you want a kernel which can be adjusted for your particular and peculiar environment, use Linux and customize your kernel!

    --
    On the 0th day, God created C
    1. Re:One size rarely fits all by xgr3gx · · Score: 2, Informative

      Hell yeah! I couldn't agree more. Not trying to start a distro flame, but that's why I love Gentoo. It's so easy to rip out stuff you don't need. I shouldn't even say rip out, it's more like build with out.

      --
      Shameless plug alert: Game server control panel
  17. This doesn't sound like a good idea by MonGuSE · · Score: 2, Insightful

    The advantages gained in forking a kernel are minimal compared to the disadvantages. Not to mention a lot of those advantages of a fork can be obtained by simply compiling a kernel based on your server's hardware and computing needs. If someone forked it they would then have to maintain two separate code bases, two separate patch bases a new naming scheme. Not to mention the main advantage stated which is getting rid of bloat occurs because of compiled driver support which means that only a small subset of hardware would be supported in theory and most of the bloat he is speaking about comes from the GNU side of things and can easily NOT BE INSTALLED or un-installed if so necessary...

  18. Every branch of linux is a fork by asyncster · · Score: 2, Informative

    Linux has no central repository, so the concept of forking linux is meaningless. Linus' branch is considered "official" because it historical and institutional reasons, not technical ones. Anyone can create their own branch and start incorporating patches, even pulling from others' branch. I believe this is exactly the reason why Linus switched to the new SCM system (Git).

  19. I don't see the need by downix · · Score: 5, Informative

    The only difference between a "server" build and a "desktop" build, kernel-wise, is in which components/modules you compile. Functionally, there is no difference. Same goes for Windows, the "desktop" and "server" kernels are fundimentally the same, it is only what you put on top of them that differentiates the two.

    Someone here does not understand the difference between a kernel and an OS.

    --
    Karma Whoring for Fun and Profit.
  20. Why not. by LWATCDR · · Score: 2, Interesting

    I think that right now the majority of development at the kernel level is server based. It is only logical after all since the majority of paying Linux systems are servers. When I mean paying I mean paying their way. The technical question is can one scheduler work well for both server loads and desktop loads. Is there an ideal scheduler that works every where? We know that isn't true when you are dealing with real-time systems so is it true for the desktop?
    I don't think this is a dumb question I just happen to think that currently there isn't a need to fork the kernel.
    I happen to think that currently there isn't really a need to fork the Kernel into a server and desktop version. I feel that most of the performance problems with Linux on the desktop are in X and not in the kernel. I think more work needs to be done in X to solve the problem than the Kernel.

    --
    See my blog http://ilovecookes.blogspot.com/ for light hearted technical information.
  21. Re: "wrong and stupid" by psbrogna · · Score: 3, Funny

    I've generally found "Wrong and stupid" goes hand in hand with blogs. The easier it is to be heard, the lower the signal to noise ratio is going to get. It'd be nice if we could just taser them but perhaps unconstitutional. :D

    Relevant quote: "Don't taser me! Ow! Ow! Ow!" - opportunistic journalist at Democratic National Convention

  22. WTF? by hackstraw · · Score: 2, Informative


    First, Linux is Linus' hobby that is kinda also a job. I've read somewhere where he said that he is more proud of Linux being on a digital picture frame that he bought his wife than having it on the top500 list.

    Second, AFAIK, the kernel is fine for both desktop and server stuff. There are compile options to optimize for each, and patches, etc. Linux on the desktop is difficult because of a lacking standard and good software installation system and GUI environment and various other things. The kernel is fine for the desktop. There simply is not software on top of said kernel to make it desktop friendly.

  23. Re:memories... by prefect42 · · Score: 2, Funny

    In which case you're pretty dim.

    --

    jh

  24. I saw it on an Internet blog! by n6kuy · · Score: 5, Funny

    It's probably a serious concern!

    --
    If you disagree with me on social issues, then it's pretty clear that you are a narrow-minded bigot.
  25. inconsistency by nomadic · · Score: 4, Funny

    I can not see why is it a stupid idea.

    Me neither, especially considering that's all the frothy-mouthed zealots tell you to do when you criticize the kernel developers.

    Linux user: I like Linux but I think the kernel should incorporate feature X.
    Linux zealot: If you don't like it, fork the kernel!
    Linux user: I think the kernel developers aren't open enough to contributions.
    Linux zealot: If you don't like it, fork the kernel!
    Linux user: I think the kernel is too focused on big iron.
    Linux zealot: If you don't like it, fork the kernel!
    Linux user: Ok, I guess I'll fork the kernel then.
    Linux zealot: OMG YOU CAN'T FORK THE KERNEL!!!

  26. Why isn't this front page news everywhere? by Minwee · · Score: 4, Funny

    What's this? Someone with a blog pulled a half-baked idea out of his butt, and then posted it where the entire Internet could see it? And some other people don't agree with him?

    That's amazing! An event of this magnitude only happens once in a billion femtoseconds! Why aren't we all paying more attention to this incredible discovery?

  27. No you can not by iamacat · · Score: 3, Interesting

    Putting a bunch of #if 0's into complex, bloated code doesn't make it slim and efficient. Statements elsewhere still make assumptions about one of 1000 things happening rather than one in 10. Slow, scalable algorithms are used rather than lean but limited ones. make config is not going to turn your Linux into FreeDOS.

    1. Re:No you can not by Midnight+Thunder · · Score: 3, Interesting

      Putting a bunch of #if 0's into complex, bloated code doesn't make it slim and efficient. Statements elsewhere still make assumptions about one of 1000 things happening rather than one in 10. Slow, scalable algorithms are used rather than lean but limited ones. make config is not going to turn your Linux into FreeDOS.

      Another approach is to use an object-oriented model, so you just include the implementation you need for the specific interface or class. I believe Darwin (the kernel used by MacOS X) already uses such an approach for some things?

      --
      Jumpstart the tartan drive.
    2. Re:No you can not by 644bd346996 · · Score: 5, Insightful

      Have you got any examples where there is significant overhead that can't be removed with a make config but could be removed with a specific, less scalable algorithm that isn't available in the kernel source?

      I'm pretty sure your comment is mostly BS. The vanilla kernel source includes a lot of configuration options for embedded systems. Low on RAM? Turn off CONFIG_BASE_FULL to use several smaller, slower data structures. Don't have swap space? Turn off things like CONFIG_SHMEM. Using uClibc? For now, you might as well throw out CONFIG_FUTEX as well.

    3. Re:No you can not by Fizzl · · Score: 2, Insightful

      Wish I had mod points.
      People should just read this comment before saying anything.

      (No, I will not resort to changing subject to MOD PARENT UP, because that annoyes me :))

    4. Re:No you can not by 644bd346996 · · Score: 3, Insightful

      The linux kernel already does this, with modules that can be loaded and unloaded at runtime. Whole subsystems (things like SCSI and DRI) can be loaded on demand. You can also enable or disable kernel preemption at compile time, and you can swap out I/O schedulers at run-time.

      However, the modular approach can have some overhead of its own (though not as much on linux as on darwin). If you really need a small kernel, you can actually disable loadable module support at compile-time, if you know exactly which drivers you need.

    5. Re:No you can not by Lonewolf666 · · Score: 3, Insightful

      Slow, scalable algorithms are used rather than lean but limited ones.

      If this is true it is actually a good idea. Today's personal computers have a lot in common with high end machines from 10 years ago.
      Multiple processors? Check.
      Gigabytes of RAM? Check.
      Harddisks with hundreds of Gigabytes? Check.

      And I guess the trend will continue, so what belongs in the big iron of today will be fine for tomorrow's personal computers.

      --
      C - the footgun of programming languages
    6. Re:No you can not by Lumpy · · Score: 5, Funny

      Really? I better tell the guys down in R&D that the 1.2 meg linux install we use on the embedded box devices does not exist and cant work.

      Thanks for letting us know before shipping this thing it would have been embarassing that the linux would explode and become huge upon use.

      --
      Do not look at laser with remaining good eye.
    7. Re:No you can not by recoiledsnake · · Score: 5, Informative

      Your examples totally miss the point. The CPU scheduler is a *lot* more crucial to desktop performance than swap space, memory config etc. etc.

      Have you even been keeping up with the whole CPU scheduler in the kernel issue that the article mentions?

      The whole point is that the CPU scheduler is NOT modular and you cannot change its behavior by much by changing kernel options. Con(along with soemone else) made patches to make it modular, calling it plugsched, but it was nixed from getting into the kernel by Linus who said something on the lines of "The scheduler is not something you see frequent changes in."

      Con wanted it because desktop users can easily plug his desktop-centric scheduler into the kernel. For a lot more details read here .

      --
      This space for rent.
    8. Re:No you can not by 644bd346996 · · Score: 3, Insightful

      Sure, linux kernel modules don't have any significant execution speed overhead, wheras darwin does because of excess context switches. The overhead I was referring to on linux was just that a modular kernel (with all the modules loaded) can take up more memory. If you know you will always need all your drivers (usually for server and embedded workloads), compiling in everything and leaving out loadable module support can cut down on your RAM usage (though this typically only matters for embedded systems).

    9. Re:No you can not by 644bd346996 · · Score: 4, Informative

      You're missing the point. A pluggable scheduler is not necessary for desktop usage, because nobody (not even Con) has been able to come up with a scheduler that is significantly better than CFS for desktop usage, except by doing things that amount to hard-coded nice levels. All of the meaningful performance improvements have made it into the default scheduler.

    10. Re:No you can not by Bogtha · · Score: 2, Informative

      Putting a bunch of #if 0's into complex, bloated code doesn't make it slim and efficient.

      #ifs are preprocessor directives. They are evaluated at compile-time and have absolutely no effect on efficiency when the kernel is running. Sorry, but you're going to have to look elsewhere for your "bloat".

      --
      Bogtha Bogtha Bogtha
    11. Re:No you can not by Braino420 · · Score: 4, Insightful

      Yes, you are correct, but you're missing the point. The Linux kernel is made to provide maximum throughput at the expense of responsiveness. Throughput is great for a server, responsiveness is great for a desktop. There is a trade-off.

      --
      They call me the wookie man, I guess that's what I am
    12. Re:No you can not by MarcoAtWork · · Score: 5, Insightful

      except by doing things that amount to hard-coded nice levels. All of the meaningful performance


      meaningful according to whom? and desktop users couldn't care less about 'hard coded nice levels' if it means their 3d games and/or X apps work better: yes, I know this is anathema to the linux developers where only super perfect code supposedly should go in, however if this supposedly super perfect code doesn't meet desktop users' needs as well as hacks, well, I'd all be for giving desktop users as many hacks as they want/need (as long as this could be changed via either a pluggable architecture or a difference in make config).

      As much as Linus has done a great job into making linux a great server side OS, if he's not willing to make compromises to make the desktop faster (because either it's too 'hacky' or it will cause issues for big iron, which is what pays the devs' bills) maybe it IS time to fork under the stewardship of somebody with the desktop users' needs more at heart. If companies like, say, NVIDIA or Adobe paid a kernel developer to make linux better on the desktop this is what would probably happen IMHO.

      I don't think a fork would be the end of the world, fork it and let the best survive: if a year from now we have a 'server linux' and a 'desktop linux' kernels, so be it, if instead the 'desktop linux' project flounders due to minimal speed improvements and so on, well, so be it as well. The vast majority of the patches/changes would apply to both the same way, so I don't see this causing issues and slowing development, if at all maybe people could spend less time flaming on LKML and more time writing code.
      --
      -- the cake is a lie
    13. Re:No you can not by recoiledsnake · · Score: 4, Informative
      That is a gross over-simplication of what happened and almost qualifies as revisionist history and brushing things under the carpet. Let me summarize my understanding of what happened and someone please correct me if I am wrong.

      Con Kolivas had been shouting from rooftops about slow desktop performance and was submitting feedback and bug reports. One of the kernel devs apparently said "I do not notice the issue on my quadcore machine with 4GB RAM". Rightly or wrongly, this lead Con to believe that the kernel devs do not care about desktop performance and only give priority to issues that big corporates complain about.

      In the true open source style, he took upon himself to learn kernel programming and released a whole set of -CK patches and various versions of benchmarking tools and schedulers. On the other side, Ingo Molnar was the maintainer of the scheduler portion of the kernel and maintained that the O(1) scheduler(and the one before it?) is good enough and has no problems. Con conclusively started proving this wrong with his benchmarks. At this point, everyone assumed the -CK branch would be merged into the kernel at some point and Linus says he had been considering it.

      At some point, Ingo starts making his own scheduler, which later evolved into the Completely Fair Scheduler. A number of posts claim that it was kind of rip off of the ideas behind Con's scheduler with which it was in a race to get included in the kernel. Then Linus decides to include CFS into the kernel instead of Con's scheduler. The reason he gave was that Con thought SD was perfect and that he ignored and flamed the users on the CK mailing list and that he(Linus) was far more comfortable working with Ingo since he knew him well. He also admitted that he might have formed this opinion on a single incident on the mailing list and he didn't have the time to follow the CK mailing list.

      Some people on Con's side in the LKML tried to explain this by saying that the single incident was in response to a troll who submitted faulty bug reports and ignored the reasons for why they were rejected and that Linus was playing favorites. Con couldn't take the non-inclusion of -CK and plugsched(which would have given users a clean way of using a custom scheduler) and quit kernel development totally.

      The latest twist in the story was reported on Slashdot here . The gist of it was that another hacker(Roman Zippel) was trying work on CFS. He had asked questions about what some parts of the code did, and also made some patches that considerably simplified the code and mathematically proved his patches made things better. In response, Ingo came out with a big patch that ripped out the code that was questioned and included Roman's Zippel's ideas(another rip off?) with hardly any discussion and a tangential acknowledgement of including his changes. Roman complained that talking in patches without explanation is detrimental to collaborative OSS development.

      --
      This space for rent.
    14. Re:No you can not by SL+Baur · · Score: 2, Informative

      As much as Linus has done a great job into making linux a great server side OS, if he's not willing to make compromises to make the desktop faster (because either it's too 'hacky' or it will cause issues for big iron, which is what pays the devs' bills) It's just not true that Linus doesn't care about the desktop. See http://www.ussg.iu.edu/hypermail/linux/kernel/0708.2/1530.html and http://www.ussg.iu.edu/hypermail/linux/kernel/0708.2/1893.html .

      Think of the (Linus') Children!
    15. Re:No you can not by 644bd346996 · · Score: 2, Insightful

      I'm quite familiar with all the CFS vs. SD issues.

      My point was that no forking or pluggable schedulers are necessary because all the important ideas, if not the actual code, from Con's SD (and more recently, Roman's RFS) have been incorporated into the mainline scheduler.

      Forking would only be justified if the work done by the likes of Con and Roman wouldn't be accepted into the mainline kernel. Even though there code hasn't been merged, the kernel has undeniably benefitted from their design work (which is far more important than the actual implementation). Using pluggable schedulers would only be justified if the single scheduler were forced to incorporate some fundamental tradeoffs that weren't acceptable to all users. That obviously hasn't happened: CFS and SD are both better than the previous O(1) scheduler all-around. Neither scheduler sacrifices desktop performance for server performance, or vice versa.

    16. Re:No you can not by 644bd346996 · · Score: 2, Informative

      There are approximately 2 kernel configuration changes required to switch from a throughput-optimized system to a latency-optimized system. They work. Any questions?

    17. Re:No you can not by MarcoAtWork · · Score: 2, Interesting

      It's just not true that Linus doesn't care about the desktop


      I didn't say he didn't care, but if something comes up that will increase the desktop performance by x% and kill server performance by y%, it won't go in as far as I can see. Linus wants the kernel to get better as a whole, of course, but this is a lot harder than having a separate branch where the focus will be shifted from 'making things better' to 'making things better FOR THE DESKTOP even if it means a significant lowering of server/big iron performance'.
      --
      -- the cake is a lie
    18. Re:No you can not by 644bd346996 · · Score: 2, Insightful

      nice isn't all that's required for good gaming performance, but right now, it's the only way to exceed the performance from the default CFS and SD.

      As for your comments about clean code: Cleaner code will be easier to maintain and thus more secure. A unified server/desktop kernel will allow desktops to benefit from optimizations made with servers in mind. This happens all the time, as desktops are constantly catching up with the servers that went before them.

      Imagine where Linux desktop performance would be today if it weren't for the decade of SMP development that preceded the arrival of dual-core desktop processors. Now, in retrospect, would you say that it was worth it, given that none of the SMP code ever slowed down your UP kernels?

    19. Re:No you can not by 644bd346996 · · Score: 3, Informative

      CONFIG_PREEMPT and CONFIG_HZ are pretty much all you need to worry about.

    20. Re:No you can not by recoiledsnake · · Score: 2, Insightful

      Using pluggable schedulers would only be justified if the single scheduler were forced to incorporate some fundamental tradeoffs that weren't acceptable to all users. That obviously hasn't happened: CFS and SD are both better than the previous O(1) scheduler all-around. Neither scheduler sacrifices desktop performance for server performance, or vice versa.

      I think the point of a pluggable scheduler would be so that *future* enhancements can be tested, benchmarked, tried out and deployed without either blessings from kernel devs or messy patches that need to be kept current between releases of the mainline. Is there no chance of a better scheduler than CFS coming along at all? The argument makes sense only if the pluggable scheduler causes excessive compuational or administrative overhead.

      --
      This space for rent.
    21. Re:No you can not by celle · · Score: 2, Insightful

      You left out two(the last two are more specific versions of the first two) that didn't exist in high end machines 10 years ago but exist in the current ones. gigabyte sized OS? check massive applications? check bloated internet forcing bloated interface software? check bloated guis on everything? check Computers today are not much faster in many applications than computers 10 years ago just due to the waste created by bloated (easy to use/gui?) software.

    22. Re:No you can not by Wdomburg · · Score: 2, Informative

      Roman wrote a poorly documented monolithic patch. Ingo requested that he split it into more manageable pieces isolating the various changes. Roman didn't, so Ingo did, crediting him in the description and on all the segments based on Roman's ideas. How is that wrong?

      (On a side note, it was hardly a large patch. The bulk of it was removing dead code.)

    23. Re:No you can not by Wdomburg · · Score: 2, Informative
      One of the features of CFS is that the scheduler policy is pluggable. As per Ingo:

      One goal behind the CFS changes was to remove the
      need for massive scheduler rewrites and to ease prototyping. Somehow
      there are lots of people who really love to hack the scheduler,
      those weirdos ;-)
    24. Re:No you can not by MarcoAtWork · · Score: 2, Interesting

      I am not volunteering to be a mantainer: I don't have any interest in linux on the desktop nowadays since although I use it at work both as a server OS and as a development OS, at home I am running XPSP2 and have been for a couple of years after many years running linux exclusively (since the 1.1.98 days to give you an idea). I am talking from the perspective of somebody who has been semi on the sidelines of this, and hence I don't have any specific examples to contribute regarding my assertion, it was just a guess based on what LKML looks like.

      In general am just saying that if somebody comes up and says 'let's fork!' the reaction shouldn't automatically be negative, let anybody do whatever forking they want, if it has merit it will survive, if not it will die: no need to panic.

      In any case personally I think linux on the desktop as a primary OS is pointless for the general public, it's much better to just run XP/Vista (for all the win32-only apps you need, like games, cubase, photoshop, etc.) and use linux inside a VM whenever you need it (which is what I have been doing for the past couple of years, with absolutely no regrets, I so don't miss dual-booting).

      --
      -- the cake is a lie
  28. That's exactly what Ubuntu does by quanticle · · Score: 3, Interesting

    Perhaps the source code does, but there's nothing stopping you from leaving out all the server-specific stuff from your desktop kernel when you compile it.

    If I understand correctly, that's exactly what Ubuntu does with their "desktop" and "server" version. The desktop version have certain modules and patches that the server versions do not, and vice versa.

    --
    We all know what to do, but we don't know how to get re-elected once we have done it
  29. Distro should be doing the fork by WindBourne · · Score: 3, Interesting

    Really, the distro should do the fork, and they actually do. While most have general compiled kernels, others have kernels compiled based on what is desired; server or desktop. Solves the issue.

    --
    I prefer the "u" in honour as it seems to be missing these days.
  30. Re:memories... by Koiu+Lpoi · · Score: 4, Informative

    Uh, you know that it still does? You just have to pick and choose what you want. If Linux doesn't run in 16 MB of Ram, how do people get it running on things like the Nintendo DS with a whopping 4 MB?

  31. So why the attention? by Bogtha · · Score: 4, Insightful

    Okay, so somebody made a stupid blog post. Why submit it to Slashdot?

    --
    Bogtha Bogtha Bogtha
  32. Ruse... by C10H14N2 · · Score: 2, Interesting


    Con and Ingo are just continuing the bitch session about the scheduler.

  33. Not stupid, just arrogant. by Shivetya · · Score: 2, Interesting

    "They" don't agree with the new scheduler; face it this is where most of the divide is; so "they" want their own version but they know damn well that unless they have Linus's blessing its dead in the water. As such expect attempts to guilt him. As such see attempts to deflect attention from their real peeve by suggesting 'multiples' instead of just their way and his way.

    Arrogant from the standpoint that since they can't have their way and cannot get support for their own on their own they want Linus to do that for them. If 'they' are so right then 'they' will win out in the end. Regardless its their Linux and they will have to name it something people will cleary understand is not Linus

    --
    * Winners compare their achievements to their goals, losers compare theirs to that of others.
  34. What about SMP? by Bill,+Shooter+of+Bul · · Score: 4, Insightful

    You could have made the same argument against including SMP a few years ago. And look, now ~90% of PCs (thats personal computers, for you me grandma and the king of Tahiti) have multiple processors. We don't know the direction computers are going to take in the future, but a lot of previous high end server stuff has trickled down into the consumer level hardware.

    --
    Well.. maybe. Or Maybe not. But Definitely not sort of.
  35. Difference between Linux/Windows/Mac by Anonymous Coward · · Score: 3, Funny

    In Linux, if the projected is run badly, there are calls to:
    - Fork the project and do it "right"[TM]

    In Windows, if the projected is run badly, there are calls to:
    - Knife the new version and fix the dam bugs in the old version

    In MacOS, if the project is run badly, there are calls to:
    - Spoon the new version. You just don't understand the superiority of the new "Mac way"[TM] because you're stuck in the "Windows Mindset"[TM]

  36. The Linux Desktop already crawls.. by vdboor · · Score: 5, Informative

    Call me stupid, but the Linux desktop already crawls.

    There used to be a time I could download 5 shared files, burn a CD and watch a DivX movie at the same time. That was with Slackware 9.0 and Linux 2.4.20.

    Nowadays it takes my browser 2 seconds to open a *tab*, and another 2 seconds per website. This happened because there was continuous I/O activity in the background. After the I/O completed everything was back to normal. Bottom line: every serious I/O activity causes the desktop to crawl.

    It's still the same machine (AMD 1800 and DMA-enabled) but interactivity my Linux system had is unmatched by the recent kernels. The problem is too many commercial developers care about server performance alone, or test desktop performance with their quad-core raid array configuration. Patches get rejected too when they affect server performance.

    I'm honestly not surprised people want a change here, or even start suggesting a fork.

    --
    The best way to accelerate a windows server is by 9.81 m/s2 ;-)
  37. Thanks for stating the obvious. by fm6 · · Score: 3, Informative

    If you want to fork the Linux Kernel, there's absolutely nothing from stopping you from doing it yourself.
    And in further news, water flows downhill.

    The question is not whether you can fork the kernel, the question is whether you should. On one side, you have hope that this would revive progress in desktop Linux. On the other, you have fear that this would create conflict and duplication of effort.

    My answer? It just doesn't matter. Yes, desktop Linux is being neglected. But it's not because LT has developed a Big Iron fetish. It's because Open Source development, despite what people like to think, is subject to economic pressure.

    OS evolved out of "Free Software", which is based on the quaint notion that software development is totally divorced from economics. Yeah yeah, I know about the beer/freedom dichotomy. It's BS. "Free" software has never been about anything but RMS throwing a tantrum over the fact that AT&T starting making people pay for Unix licenses. So he set out to write a "free" OS. Which, 20 years later, he still hasn't finished!

    On the other hand, the anarchistic/fascist development model behind "Free" software (anybody can hack the source code, but the direction of a project is totally controlled by a small cadre not answerable to the other developers) turns out to be a pretty good way to develop non-proprietary software. Before, when a bunch of companies wanted to do this, they'd form a committee. After endless wrangling and compromise, the committee would produce a spec or standard that was usually feature-bloated, hard to implement, and basically satisfied no one. With the new model, somebody (like Linus Torvalds) with a vision for a new software product just sits down and starts coding. If the product turns out to be useful, people start contributing to it, and the product grows. Because LT chooses to listen to his contributers, but isn't compelled to accept their ideas, the product grows organically, responsive to user needs. Thus Open Source Software was invented.

    But isn't that just the same as Free Software? No it's not. Because the OSS movement acknowledges that not all programmers can get by on grant money. Most Open Source code is written by programmers who are paid to do it. Who pays them? Companies that have a use the new feature or fix being coded, and find it in their own best interest to donate the new code to the OSS community.

    That's why so much Linux kernel development is driven by the needs of Big Iron manufacturers (like the company I work for). They love Linux because it's a de-facto standard. And because it's not a real standard, it lacks the compromises and feature bloat of committee-driven software. It helps them sell hardware, and its in their interest to have their in-house programmers make improvements to it. But of course, those programmers are only going to make improvements that their employers actually need.

    TFA cites Con Kolivas's retirement from kernel work as a sign that desktop Linux isn't healthy. But in fact the bad sign was that Con Kolivas was ever the leading hacker for desktop kernel features. Because nobody ever paid him for his work on the kernel. Indeed, he's not even a working programmer! He's a medical doctor who programs as a hobby.

    That pretty much sums up the status of desktop Linux: it still belongs to hobbyists at a time when server-side Linux is an important commercial product. Unless and until you can change that, it doesn't matter who controls Linux kernel development: the needs of Big Iron will prevail.
    1. Re:Thanks for stating the obvious. by halber_mensch · · Score: 2, Informative

      TFA cites Con Kolivas's retirement from kernel work as a sign that desktop Linux isn't healthy. But in fact the bad sign was that Con Kolivas was ever the leading hacker for desktop kernel features. Because nobody ever paid him for his work on the kernel. Indeed, he's not even a working programmer! He's a medical doctor who programs as a hobby.

      That pretty much sums up the status of desktop Linux: it still belongs to hobbyists at a time when server-side Linux is an important commercial product. Unless and until you can change that, it doesn't matter who controls Linux kernel development: the needs of Big Iron will prevail.

      I think you've hit the nail right on the head, and you state an important aspect of open source software that linux fanboys don't seem to grasp. There will never be a widespread, successful "desktop linux" until it becomes an economically viable necessity for someone or some group of people with cash and investors. Right now, what impetus is there in investing all of this effort into diverting from the canonical linux kernel? Microshaft still dominates the desktop market, they've got infection deals with all the major PC vendors, and the majority of software publishers and hardware vendors still don't get this "linux" thing and resist supporting it. Apple as the only major competitor gives its customers a shrinkwrapped package that is targeted to a specific type of customer. So there's really not a lot of market to be gotten by an open source desktop oriented operating system. Not yet anyway. It might be more of a profitable market when more vendors are publishing and maintaining quality software for linux, but even then you've got to get Microsoft off the backs of the major PC vendors and convince them that linux is profitable for them and to fund development for and actively promote and support linux desktop PCs. Then you've got the resources to divert into another direction and improve the desktop experience from under the hood.

      --
      perl -e "eval pack(q{H*},join q{},qw{70 72696e74207061636b28717b482a7d2c717b343 637323635363534323533343430617d293b})"
  38. Easy by NaCh0 · · Score: 3, Insightful

    Slashdot and linux.com are owned by the same company. Joe Barr submitted the slashdot article and also wrote the rebuttal blog. He can look smart and double the ad revenue all in one story.

  39. Old troll is oooooold by MORB · · Score: 3, Informative

    See subject.
    The linux development model is built on forking anyway.
    Trying to fork linux is like trying to burn fire.

  40. How much improvement? by shmlco · · Score: 2, Insightful

    I hear what you're saying, but the real question is whether or not the gain balances out the pain. Assuming, and that's a big assumption, that there's some improvement to be had, the question is: how much?

    Let's assume that you fork the kernel, tweak it to meet "desktop users' needs", and find that your real world improvements offer no significant advantage? So what if you get an extra FPS in Quake? Would that really be worth all of that effort?

    Personally, I think all of the effort on eking out the last iota of performance is misplaced. Personally I'd rather have a system with more internal checks and layers to ensure stability and to protect the kernel from hacks and attacks.

    --
    Any sect, cult, or religion will legislate its creed into law if it acquires the political power to do so.
    1. Re:How much improvement? by MarcoAtWork · · Score: 3, Insightful

      whether or not the gain balances out the pain


      what's the pain really? business will continue as usual on LKML etc., there will just be a separate tree handled by somebody interested in this which will accept 'desktop patches' and will also integrate most, if not all, of the mainline patches.

      So what if you get an extra FPS in Quake


      and why shouldn't desktop users get that extra fps? desktop users couldn't care less that getting an extra fps in quake will lower some Oracle benchmark by 50%. Also what if, by really messing things up for databases or network loads and by hardcoding specific scheduler behaviour for the X binary, you could make xorg 50% more responsive? No way this would go in a mainstream kernel, but I bet a lot of users would run this quite happily if they could.

      Personally I'd rather have a system with more internal checks and layers to ensure stability and to protect the kernel from hacks and attacks.


      I am sure there are people that feel the same way you do, maybe you could consider a fork yourself? ;)
      --
      -- the cake is a lie
    2. Re:How much improvement? by audi100quattro · · Score: 2, Interesting

      While the technical aspects of forking, and maintaining the fork might not be very high, the fact is that a significant portion of the kernel is desktop-only related. Sure nobody is going to be using Infiniband on the desktop, but there are plenty of USB drivers in there as well. The kernel has DRM modules which give direct access to graphics hardware, making X a lot faster. I wouldn't mind seeing %'s for how much is server-only, desktop-only, embedded-only and for all three. The embedded stuff is probably small, but the rest two are probably on an equal footing. There are enough options in make menuconfig for the most choosy desktop-customizer to be happy. The server features trickle down to desktop users often enough too, I could see if this fork was done 5 or more years ago, the desktop version might not have SMP or even support anything other than x86, basically dooming itself to irrelevance. If there really is something that isn't accepted in the mainline (and there are many, reiser4, SD, kgdb, openvz,....) but should be, most decent patches are actively maintained in some other tree for you to use and abuse. New features like kprobes and new file system work might not be started by itself in one tree, but here they are. There is a bit of un-predictability in deciding which way things should go and the way they actually do. Those issues would be worse if there were a desktop-fork. I'd probably be using the server-fork if they decided to keep in the DRM and USB modules. I'm curious though, I want to know that M$ does in this case!

    3. Re:How much improvement? by maraist · · Score: 2, Informative

      and why shouldn't desktop users get that extra fps?
      Ok, lets return to reality for a second here.

      FPS games are SINGLE-THREADED! Thereby schedulers are meaningless. They do not perform disk-IO - they pre-load the entire level into memory; so tread-contention with the swapper/flusher daemons are not an issue. They use direct-to-video-frame-buffer operations, so socket calls to X are meaningless. They make very few system-calls (aside from the calls to video drivers).

      If you consider that a scheduler will give you better FPS, then I think you should first determine that shutting down evolution, firefox (with CNN on auto-refresh) and spamd are going to give you better response rates. This is the exact same thing windows people have been doing for decades. There is also the concept of single-user-mode in Linux.

      If we're talking a more responsive UI, here too we are not talking about heavy thread contention. The only real slowdown left these days are the multiple levels of file-system abstraction that you go through before hitting the disk. Or perhaps the selinux security checks.. Or things like that. X, itself is of course no performance deamon (due to it's network centric design), but you can't change X without breaking X-compatibility - basically it would be something else entirely.

      These layers of abstraction do detract from performance, but that's not really what's being discussed here.. You can run ext2 instead of ext3, or reiserfs (don't know how fast you can get it). You can run stripped RAID. Hell, you can twm instead of gnome... Or.. You can spend an extra $200 on beefier memory + CPU on a desktop (sadly not as fortune on a laptop - get jipped $500 to upgrade the CPU there).

      --
      -Michael
  41. I CAN! by z0M6 · · Score: 3, Funny

    Can you, or this blogger, or anyone, site some actual evidence that shows what the fuck "optimized" even means? CFLAGS="-09 -march=s6000 -pipe=65536 -funroll-every-loop -mrice -mabi=rice -omg-optimized --disable-all-instructions -DREENABLE_FAST_EXECUTION"

    Clearly optimized!
  42. Microsoft astroturfing alert! by Anonymous Coward · · Score: 3, Interesting

    Very interesting! This "recoiledsnake" guy (parent poster), up to this point, was a thinly masked Microsoft apologist:

    He was slamming OpenOffice

    He was posting a Microsoft explanation for the Windows stealth-update scandal

    He was flaming Apple users

    He was downplaying an article about a boot sector virus on a Windows Vista laptop

    And now, after a long history of Microsoft-centric and Microsoft-friendly comments, he is suddenly pretending to be an expert in Linux kernel matters, giving a deceptive and incorrect account of what happened. (He even got moderated to "Informative". I expect to be modded me down for this - dont spare me.)

    Read this if you are curious about the true story of why and how Con Kolivas quit kernel hacking:

    LWN.net article

    Written by long-time Linux kernel observer Jonathan Corbet.

    Could this really be Microsoft PR in action? Is Microsoft trying to plant false grass-roots "history" via such deceptive postings? Seeing that they cannot win via technology in the marketplace, is Microsoft now trying to attack the credibility and integrity of Linux kernel developers?

    1. Re:Microsoft astroturfing alert! by recoiledsnake · · Score: 2, Interesting
      Note: I am only replying to this AC post because it has been modded up and because of it, my +5 informative GP has been reduced +4 by a "- troll" moderation.

      Very interesting! This "recoiledsnake" guy (parent poster), up to this point, was a thinly masked Microsoft apologist:

      Those who don't follow the Slashdot groupthink == Microsoft apologist?

      He was slamming OpenOffice

      Pointing out OO's deficiencies is slamming it? Is it a perfect piece of software?

      He was flaming Apple users

      I was correcting a mistake in the parent's post.

      He was downplaying an article about a boot sector virus on a Windows Vista laptop

      Read again. I did nothing of that sort and was adding relevant information to the parent post.

      And now, after a long history of Microsoft-centric and Microsoft-friendly comments, he is suddenly pretending to be an expert in Linux kernel matters...

      You mean one cannot make Microsoft-centric while being an expert in Linux kernel matters? As part of a OS course I once wrote a Linux filesystem driver which ran in the kernel. I have installed and run RedHat Linux, Mandrake, Gentoo, SuSe, Ubuntu, Debian and a few more. My thesis included writing a program that ran on Windows, Linux and OS X. These days I work with C# and ASP.NET. I once toyed with writing a Linux sound driver for a Soundblaster card but someone else did it first and I lost interest. I currently dual boot Vista and Ubuntu and use a FreeBSD shell.

      So, maybe, just maybe, someone can be well versed in the Linux kernel as well as MS technologies? Or is it a black and white thing with no shades of grey and us vs. them?

      ...giving a deceptive and incorrect account of what happened. (He even got moderated to "Informative". I expect to be modded me down for this - dont spare me.)

      Note that you cannot pinpoint any misappropriations in my post. I even asked readers to correct my account if they can, because I may not know all the facts. And nice job on the "Mod me down..." line. Atleast a couple of moderators have fallen for it.

      Read this if you are curious about the true story of why and how Con Kolivas quit kernel hacking: LWN.net article Written by long-time Linux kernel observer Jonathan Corbet.

      That article does not say that the only reason for him quitting was the swap pre-fetch. It was just that Con announced his departure in a discussion related to it. I am sure swap prefetch was a small fry to him compared to the whole scheduler issue.

      Could this really be Microsoft PR in action? Is Microsoft trying to plant false grass-roots "history" via such deceptive postings? Seeing that they cannot win via technology in the marketplace, is Microsoft now trying to attack the credibility and integrity of Linux kernel developers?

      OMG IT'S A M$ SHILL.BURN HIM!!!! Needless paranoia. Where is the false grass-roots "history" that I have planted? And no, this is not Microsoft PR in action. The closest I was to Microsoft was when I was in Seattle to attend a Amazon interview for a C++/Linux position. Also, nice use of the question mark. Reminds me of Jon Stewart's take on FOX News in this very entertaining video .

      --
      This space for rent.
  43. Fork The Kernel, We dont need to Fork... by killmofasta · · Score: 2, Insightful

    The Steenkin Kernel.

    Case in point: BSD vs SYS V. What sepereated these distrubtions was a design philosophy.
    There was a call to fork the kernel, based upon the replacement of the scheduler, but that can be handled with differing defines. But until there is a compelling design philosoply, like GNU vs Linux, or even a liscencing issue such as Purity of Open Source, vs mixing some 3D binary drivers. Dont FORK WITH LINUX. Use the dessert spoon.

    This idea for server/client is a *Marketing* Idea. You can already install a subset of the full Redhat distrubtion for use as a server or a client workstation OR a developer workstation, and as I remember it, also a database server. ( MySQL et al ), but its too bad that I *hate* the RP package system so much, that I am using GenToo.

    My 3 cents