Home
Reading
Searching
Subscribe
Sponsors
Statistics
Posting
Contact
Spam
Lists
Links
About
Hosting
Filtering
Features Download
Marketing
Archives
FAQ
Blog
 
Gmane
From: Ingo Molnar <mingo <at> elte.hu>
Subject: Re: [ANNOUNCE] Native Linux KVM tool
Newsgroups: gmane.linux.kernel
Date: Wednesday 6th April 2011 10:55:47 UTC (over 5 years ago)
* Olivier Galibert <[email protected]> wrote:

> On Wed, Apr 06, 2011 at 11:33:33AM +0200, Ingo Molnar wrote:
> > Examples: X11 and GCC - both were struggling for years to break through
magic 
> > invisible barriers of growth and IMHO a lot of it had to do with the
lack of 
> > code (and development model) cleanliness.
> 
> A large part of what's killing X11 and qemu is the decomposition in
> multiple trees and the requirement that every version must work with
> every other version.
> 
> For X11 you have:
> - the server
> - the protocol headers
> - the individual 2D drivers
> - libdrm
> - the kernel
> - mesa
> - the video decoding driver/libs
> 
> For qemu you have:
> - qemu
> - qemu-kvm
> - the kernel
> - libvirt
> - seabios
> 
> Any reaching change ends up hitting most of the trees, with all to
> coordination that means.  And in any case you're supposed to handle
> any version of the other components.

Splitting up a project into several trees, often unnecessarily, is a 
self-inflicted wound really.

Smaller projects can hurt from that as well: a well-known example is
oprofile.

Pointing to the stupidity of overmodularization is one of my pet peeves, i 
consider it a "development model cleanliness" bug that needlessly exposes
OSS 
projects to the negative effects of technical and social forks and 
complicates/shackles them. I flamed^W argued about it before, in the KVM /
Qemu 
context as well.

There are good examples of successful, highly integrated projects:

  - FreeBSD - it has achieved Linux-alike results with a fraction of the
              manpower

  - Android - on the desktop it has achieved much more than Linux, with a
              fraction of the manpower

And that concept can be brought to its logical conclusion: i think it's
only a 
matter of time until someone takes the Linux kernel, integrates klibc and a

toolchain into it with some good initial userspace and goes wild with that 
concept, as a single, sane, 100% self-hosting and self-sufficient OSS
project, 
tracking the release schedule of the Linux kernel.

It might not happen on PC hardware (which is *way* too OSS-hostile), but it

will eventually happen IMO. It's the eventual OSS killer feature and
weirdly 
enough no-one has tried it yet. (Android comes close in a sense)

Thanks,

	Ingo
 
CD: 3ms