Sign in with
Sign up | Sign in
Your question

Increasing size of Linux kernel

Last response: in Linux/Free BSD
a b 5 Linux
November 13, 2011 4:00:03 AM
a b 5 Linux
November 13, 2011 5:47:03 AM

What's not really clear from that is the increase number of devices and architectures that were added to make it one of (if not the) most flexible OS around. And, sure that's a lot of lines of code, but how much is actually parsed and built into a normally-configured kernel?

This issue was recently brought up with the brouhaha and sharp words from Linus himself about the sad state of ARM additions (the typical "I can do better, let me reinvent the wheel for my version of the ARM" software engineering mindset of devs from TI, Marvell, etc. caused huge code bloat due to hacking together "board support" files instead of proper rearchitecting the ARM-specific bits of the kernel to share same/similar code) and has gotten better. It's nice to know that there are still people at the helm that care about that sort of thing.
a b 5 Linux
November 13, 2011 11:12:59 AM

You can clearly see what Linus was talkinag about... his fear of a massive kernel in 3.2

But everything is easier to see in graph form.
Related resources
November 13, 2011 1:57:54 PM

i am not really bothered about size of the kernel.
with linux supporting so many architectures and devices, size increase looks reasonable.

can someone plot the size of windows from the oldest(3.1?) to the latest(win764)?
i would say that windows would be much more bloated.
a b 5 Linux
November 13, 2011 8:40:09 PM

This would seem to be a good starting point:

It is larger but then includes far more running in Kernel space than user space. The comaprison is with Vista. The Windows Kernel got noticeably smaller going to Win7 and is set to shrink again with Win8 when it comes out; it's certainly smaller in the developer preview.
a b 5 Linux
November 14, 2011 5:27:57 AM

Surely this is graphing the size of the kernel sources, not the kernel itself. What does the size of the sources matter? I can easily find 100 MB of disk.

You could easily produce a smaller source tree by limiting it to one architecture with a limited set of devices supported. Also cut out all comments and obfuscate the code. Would that make a better kernel?
a b 5 Linux
November 15, 2011 3:54:48 AM

There has been success getting a stripped-down kernel and toolset onto a 3.5" floppy, so that means a kernel that is some 500-700kb, an impressive feat.

That being said, menuetOS is truly mind-melting
a b 5 Linux
November 17, 2011 9:02:12 AM

Ijack said:
Surely this is graphing the size of the kernel sources, not the kernel itself.

Well it is impossible to measure the size of the kernel itself from any definitive source anyway. Linus doesn't build the "official" bzImage.
a b 5 Linux
November 17, 2011 9:48:14 AM

One could compare the size of kernels built from the same basic configuration from different source releases. My point is that 100MB odd of source code is of little matter. The memory footprint of the kernel is the important point. I'm not sure that this has increased unduly.