Den 28 februari 2012 18:33 skrev Reuben Thomas <r...@sc3d.org>: > On 28 February 2012 16:41, BGB <cr88...@gmail.com> wrote: >>> >>> - 1 order of magnitude is gained by removing feature creep. I agree >>> feature creep can be important. But I also believe most feature >>> belong to a long tail, where each is needed by a minority of users. >>> It does matter, but if the rest of the system is small enough, >>> adding the few features you need isn't so difficult any more. >>> >> >> this could help some, but isn't likely to result in an order of magnitude. > > Example: in Linux 3.0.0, which has many drivers (and Linux is often > cited as being "mostly drivers"), actually counting the code reveals > about 55-60% in drivers (depending how you count). So that even with > only one hardware configuration, you'd save less than 50% of the code > size, i.e. a factor of 2 at very best. >
But Linux contains much more duplication than drivers only, it supports many filesystems, many networking protocols, and many architectures of which only a few of each are are widely used. It also contains a lot of complicated optimizations of operations that would be unwanted in a simple, transparent OS. And not much code is actually needed to make a basic Unix clone. Once upon a time Linux was a couple of thousand lines of C code big and was even then a functional OS, capable of running a Unix userland and soon gaining the ability to bootstrap itself by running the build environment for itself. Let's put a number on that: the first public release of Linux, 0.01, contains 5929 lines i C-files and 2484 in header files. I'm sure that is far closer to what a minimal viable OS is than what current Linux is. Niklas _______________________________________________ fonc mailing list fonc@vpri.org http://vpri.org/mailman/listinfo/fonc