Sponsored by AVG
CNET Top Weekly Download for Free Anti-Virus view!
free.avg.com - 2.4 million people a week get AVG Anti-Virus Free, for the best protection against web threats.
34 Comments
- K3ITHK, on 10/10/2007, -4/+19Linux, what is that? Is it like Ubuntu?
- geoken, on 10/10/2007, -0/+14I'm sure if I asked a bunch of people who've tried Linux but haven't made it their main desktop OS why they aren't using Linux, almost nobody would respond "I have issues with the kernel".
- Philluminati, on 10/10/2007, -1/+12The kernel isn't too bloated. It's the only kernel I know of, where you can select and include / exclude the features you don't want.
Developer's need more power than regular desktop users because as well as running that program they also need to run the IDE and the Debugger which can be pretty heavy applications.
You don't need to fork the kernel. Most distros from Ubuntu to Fedora, to Slackware to Debian, "tinker" with the OS and prep it for the type of use it will recieve. Most of them remove the stupid filesystems etc they don't need. - tbuitenh, on 10/10/2007, -0/+10Most distributions already forked the kernel in some sense, maintaining their own set of patches. Almost none uses the vanilla kernel.
- libervisco, on 10/10/2007, -1/+7You know, that's what I thought as well before reading CKs arguments. I thought forking a kernel couldn't possibly be good for the community because it is just more division.
But then I realized, does it really matter what kernel Ubuntu or other distributions are using? If we can get them to run faster and to better fit desktop needs hence making Ubuntu (and other distros) better, it can only help grow our community. We should not be divided by the boundaries between Free Software projects nor Free Software operating systems. It is all Free Software.
So, a fork might provide for a focus that might be lacking, focus on a Free Software desktop that's actually making a big difference compared to Windows and Mac OS X in terms of performance and making the most out of our computers in every possible way. - nanostream, on 10/10/2007, -0/+4Thanks for pointing this out tbuitenh. I believe Ubuntu is an example, including the tickless timer in the kernel of 7.10 -- which is not enabled by default as Linus believes it needs more testing before a complete overhaul of the original.
- thelastknowngod, on 10/10/2007, -0/+3slackware doesnt touch the kernel. as far as i know it is the only distro that ships a totally stock, vanilla kernel.
- nhassan, on 10/10/2007, -4/+7Fork a kernel, kill an "OS" and revolutionize the desktop
Submitted by libervisco on Wed, 2007-07-25 18:44. Desktop free software gnu linux performance
The news of Con Kolivas, a Linux kernel developer, quitting that role, along with an interview in which he explains why, could and should make loud noises around the Free Software community which is often touting GNU/Linux as the best operating system one could use, and not just because of freedom you have with it. In the interview he says certain things which should cause tectonic shifts in the mindset that we have all been having. Why didn't we realize these things before?
As you can see, the article intrigued me quite a bit, and got me thinking about a better way forward for the Free Software OS.
I'll go through some of the basic points that he makes and lay out one possible solution and its implications. However, take this article as just a discussion starter.
Linux kernel is too bloated
It was made for servers because that's where its initial success was possible and where most of the money came. Linux kernel developers are on the payroll of companies who, in the first place, care for their server related businesses. This makes it much less likely for the kernel development to focus on needs related to the desktop, a most demanding of the market segments.
Developers are also developing on machines which are too powerful compared to the machines that ordinary desktop users are using, making performance issues that desktop users may experience, practically invisible to these developers.
Lack of communication with desktop users
Linux kernel developers are normatively disconnected from the rest of the users, most of which are desktop users, the kind making up 90% of all computer users. Since they are not mostly governed by the companies whose interests are on the desktop it is logical that they will a lot of the time be oblivious to the needs of the ordinary desktop users.
This is not because a desktop user does not have the freedom to participate. In a Free Software world we have the freedom, but we also have social and cultural norms which are often enough of an obstacle to healthy communication and cooperation. Some of those norms are beneficial, and some are quite hurtful.
Can a kernel developed by people not so attuned to the needs of desktop users lead an OS to success on the desktop?
Lack of innovation
It is largely unfashionable to accuse the GNU/Linux world of not being innovative enough, but accusing it of lack of innovation is not saying that it isn't more innovative than the rest.
I believe Linus Torvalds once said that all operating systems suck, but "Linux just sucks less". I think this statement is very true, but useless if not taken as a call to improvement. Why does it have to suck at all?
The point that CK makes is related to performance issues on hardware which is so powerful that it shouldn't have performance issues at all. Why do we still need a specially optimized Linux kernel just to properly enable music production? Shouldn't real time audio processing just work absolutely flawlessly on computers containing dual core CPUs? Even Windows XP doesn't have this requirement.
The question has to be asked. Why does *anything* have to run slow on todays computers?
Free Software movement is about freedom which includes freedom to innovate, but having this freedom wont make things just happen automatically. It is merely a beginning. We have to use this freedom to really do things better, to revolutionize the world of computing. But, so far, GNU/Linux is becoming just another bloated OS which is incapable of making the most out of the most powerful hardware we have ever had (yes, that's probably your computer too).
It is leaving the revolution to the social and ideological side of the issue, while remaining stuck to the old ways that everyone else is stuck with on a technical side of things, yet it can do better.
Solutions?
One of the solutions being pondered is forking a Linux kernel into a kernel which would specifically be aimed at desktop users and their needs. It could be ran in a way which would allow for a seamless two way communication between desktop users and kernel developers, because they would share much of the same interests in this project. This means that an ordinary user would be able to leave a bug report or a suggestion without being flamed as a newbie who doesn't know anything, but rather awarded with contribution points.
Now imagine the implications of having a desktop kernel.
Popular distributions such as Ubuntu would likely switch to this new kernel, without diminishing their popularity. The new kernel would allow a lot of the lost performance to be gained, allowing us to reclaim the title of the fastest OS around. However, applications would have to follow this trend in order for performance gains to be felt more dramatically. It is possible that a project of forking a kernel for a desktop with focus on performance would also initiate a similar movement with the rest of the Free Software world. We can call it a hint that would affect the way developers think about their software, encouraging them to pay more attention to performance issues on the desktop.
This would also likely blur the lines between what is or isn't considered to be "Linux" or "GNU/Linux", especially if a new kernel doesn't carry a name involving "Linux", possibly even throwing the whole definition of an "OS" in a limbo, perhaps making it irrelevant. Above all else, it would just be a Free Software OS where distributions use whichever kernel suits their users the most. The reason why this would happen is the discussion that, for example, Ubuntu switching to a new kernel, would entice regarding what we should now call the new OS; as "Linux", by the name of the new kernel, just "Ubuntu" or perhaps "GNU". The reason I believe this would blur the lines is simply because I doubt a proper consensus on this would ever be made. It will likely just end up being called Ubuntu, which is merely a distribution, leaving the OS simply unnamed - a Free Software OS.
Therefore the benefits are twofold. There is a technical benefit of regained performance and moving away from the bloat of the rest of the computing world, truly innovating on the desktop and not just making a one-shoe-fits-all operating system. And there is a benefit of blurring the lines between operating systems based on what kernel they run, which would encourage further diversity and open mindedness towards different platforms. The only way we would most often identify an OS is by the name of the given distribution (Ubuntu, Gentoo, Nexenta, Haiku etc.)
Free Software is about restoring the freedom of computer users. But now that we have it, why not take things to the next level? Let's make a desktop operating system which will be truly irresistible, then conquer the desktop and make computers really fun again.
Thanks
Danijel Orsolic - DrDabbles, on 10/10/2007, -0/+3The problems people have with bug reports such as "This is slow" is that 99% of users do not give any data to back it up. This is a real problem, because everybody perceives things differently, and there are an almost infinite number of reasons for things slowing down on a PC. This is especially true for most users that download every CK patch, apply it to their kernel sources, run reiser45, and change every CFLAG to include "-O3".
I'm all for developing a better performing kernel, but there will be costs associated with doing so. Functionality has crept into the kernel at the cost of pluggable interfaces, frameworks, and "bloat". However, we are able to hot-plug almost any hot-pluggable device there is because of it. So, the real question becomes what are you, the desktop user, willing to do without in the name of speed? Moreover, what kind of speed will you gain? A few cycles here and there, or thousands?
Another trade-off most people don't understand, is the pre-emption and "HZ" modifications. These directly impact computational and transfer performance for the sake of interactivity. While it feels nice to the user to have their mouse respond without any hesitation at all when the system is under heavy load, the reality is that it will be under heavy load for a longer time- wasting cycles that could be better used. The exception to this, of course, is the low-latency sound issues. This has been a problem for quite a long time, and it appears that it is now leaking into the wireless drivers for a few chipsets. That needs to be fixed. Hands down, that's a problem that needs to be addressed. - ltmon, on 10/10/2007, -0/+3Who the hell supports you for free on any non open-source system? I mean, really... what are you expecting?
Open source does tend to have the best community based support that I can tell. As far as paid support goes, you still tend to get what you pay for, regardless of being open source or not. - maninalift, on 10/10/2007, -0/+2You have just posted the article in the discussion. Why?
- nkassi, on 10/10/2007, -0/+2And have you ever received free support from a app you didn't pay for? I mean, name me a free program that you can get free commercial support for? Oh, add driven eh?
Paying 39$ for support from cannonical as an example, is pretty damn cheap compared to 150$ for the cheapest Vista CD these days. - trghpy, on 10/10/2007, -1/+3Whats forking the kernal have to do with getting more resources to desktop development?
This has to be Linux's biggest downfall. Nobody at the top assigning resources to projects. On the plus side, developers get to freely choose what project they contribute to. - mlblac02, on 10/10/2007, -0/+2Anyone can use a vanilla kernel, even someone in Ubuntu. I tried it for a few weeks when switching from Gentoo to Slack while I was waiting for 12 to be released. Ubuntu had a bunch of weird extra steps, but I compiled a vanilla kernel from kernel.org the second day I used it and there was a noticeable performance increase.
Its not hard, you just need to know what hardware you're using. Download the source, compile, copy to /boot, edit lilo/grub, done. - tbuitenh, on 10/10/2007, -0/+2The 2.6 kernel is not as fast and light as the 2.4 kernel, OTOH 2.6 has some features I can't do without, otherwise I'd be using 2.4.
What is good for servers is not necessarily good for desktop users. Servers usually want high throughput, desktops want high responsiveness. Desktop users want a short boot time, for servers that doesn't matter much since they're always on anyway.
Anyway I think applications and poor hardware design are the worst offenders, the kernel isn't the worst problem. It could use some simplification though (making similar things work the same way), but I'll stop ranting about that before I say "Plan 9" again. Oops. - nanostream, on 10/10/2007, -3/+5Blasphemy!! This Desktop Linux you speak of instills fear in me.
I'm not sure we need more fragmentation in the Linux Community, besides doesn't a lot of server-side improvements travel upstream and hit the desktop users? It would be a lot of work to fork Linux as developers would have to keep track of the original kernel's improvements (security, drivers, etc.) and when implementing so called "desktop features," quality assurance and testing would be necessary.
I don't believe the kernel is getting bloated some code gets deleted, some code gets added to the kernel, the rest gets moved around. - nanostream, on 10/10/2007, -0/+2Why do you say that it is a mess?
- pplude92, on 10/10/2007, -0/+2ReactOS is in Pre-Alpa...to you retards, that means that not even us developers will touch it! On the other hand,, Linux, or might I say the kernel, (the rest is mostly GNU), is stable enough for everyday use. get your facts straight
- thcobbs, on 10/10/2007, -0/+2It only has extra steps if you want your kernel to be usable with the APT package management system. Otherwise, it's just a standard make procedure and you edit your grub/lilo config.
- DrDabbles, on 10/10/2007, -0/+1I'd be very interested in comparing the kernel configs from both machines. Does Fedora still use the hardware detection software that they used to have? Kudzu is it? It's used in knoppix as well, if my memory serves me.
- thcobbs, on 10/10/2007, -0/+1True, but in the days now of 32MB thumb drives being cheap as dirt.... you don't really need bsd/2.4 except for specific applications... such as embedded systems.
- reptiler, on 10/10/2007, -0/+1Okay, I'll try not to repeat too much of what I already mentioned in the topic on Nuxified.org, but I think it's in order to address a few points.
1. The kernel has become faster with every major release, 2.6 is more responsive than 2.4, which in turn is faster than 2.2. I work with Linux for 8 years now, and every major release made me feel better in terms of performance.
2. I think the main thing we need to work on is what distros do with the kernel. Proper pre-configuration is the key, don't load too many modules that aren't needed. Also not starting too much rubbish by default on boot would be nice. As mentioned in one of my replies, my PC is ready for login after around 30-40 seconds, running Linux from Scratch. My notebook, which is supposed to be more powerful, needs more than a minute with Fedora 7. And both systems have all I need to work with. Fedora taking twice the time cannot be related to booting from LVM or using SELinux, that's just not it. Yes, it starts some more stuff on boot-time, but not so much more.
So, maybe we should have a look on how the distros tick and not on how the kernel works. It'll also be alot easier. - kevincannon, on 10/10/2007, -0/+1geoken - just because someone doesn't know the name of the reasons why something affecting them, doesn't mean it doesn't affect them.
I know nothing about Linux kernal hacking, but it's quite clear that this disparity between what actual users want vs developers and server interests exists, and results in a less user-focused OS. That's changing slowly, but it's clear that end users still aren't the target of Linux developers. - BrainInAJar, on 10/10/2007, -0/+1"It's the only kernel I know of, where you can select and include / exclude the features you don't want. "
the BSD kernels allow you to do this through a config file at build time. Solaris tunables are done without requiring a recompile. Solaris is gigantic and powerful, but you can cram all the BSD's in a tiny space ( smaller than you can put a 2.6 Linux kernel ) - reptiler, on 10/10/2007, -0/+0The kernel-config on the Fedora-box is the default-one, since that box I "just want to work". I think it uses Kudzu, I have something in memory about reading this somewhere.
The kernel on my PC, running LFS, is completely hand-configured, so there's no unnecessary stuff, and I don't use modules, except for the KQEmu-module. - EBFoxbat, on 10/10/2007, -2/+1Go fork your own kernel!
- jbus, on 10/10/2007, -3/+2Thanks for the laugh... *****.
- DigitalDaiquiri, on 10/10/2007, -3/+2Exactly, instead of bitching he should go and work on that "fork" of his. The kernel developers do some amazing work, unlike this lazy blogger who feels the need to complain rather than contribute.
- baalzebub, on 10/10/2007, -6/+4he does make some good points, i would like to see a few distros or two keep 2.4.xx available (slackware preferably 10,2 -- 11 is ok - but i think 10.2 is better)
i do think the 2.6.xx kernels are bloated compared to 2.2.xx & 2.4.xx - tuzziel, on 10/10/2007, -5/+3Linux kernel is a mess to say it gently, it needs major redesign at least in the driver layer and 80% of the other code.
Until major cleanup happens the ReactOS.com is the answer. - mlblac02, on 10/10/2007, -8/+5Compile your own kernel. STFU. I'm tired of seeing the "Linux is bloated with enterprise/server crap" posts.
Spammed. - DigitalDaiquiri, on 10/10/2007, -5/+1Exactly, instead of bitching he should go work on that "fork" of his. The kernel developers do some amazing work, unlike this blogger who would rather complain than contribute.
- mlblac02, on 10/10/2007, -6/+1Anyone can use a vanilla kernel, even someone in Ubuntu. I tried it for a few weeks when switching from Gentoo to Slack while I was waiting for 12 to be released. Ubuntu had a bunch of weird extra steps, but I compiled a vanilla kernel from kernel.org the second day I used it and there was a noticeable performance increase.
Its not hard, you just need to know what hardware you're using. Download the source, compile, copy to /boot, edit lilo/grub, done. - seithon, on 10/10/2007, -9/+1my problem with open source is the same no matter if its Linux or anything else.
Theirs no one to provide support when you need it, unless your a paying customer and take out a contract of some sort.
And relying on the community for support is really just pot luck.


What is Digg?