Skip to main content
11 events
when toggle format what by license comment
Jul 10, 2017 at 18:09 comment added gornvix What is "arch/" ?
Aug 18, 2015 at 20:08 comment added Tim Post A non-modular kernel makes quite a bit of sense when deploying to servers, especially many identical ones .. unless you really do have a printer, sound system and CueCat hooked up to each one. The total LOC in the kernel is just the ceiling on the insanity you can reach building it. Most systems using the Linux kernel will only load what a hardware probe reveals, which is far less than 'all of it'.
Aug 18, 2015 at 14:32 comment added goldilocks @JonathanLeaders As I think you've realized, the LOC in the source is more or less irrelevant. If you want to know how much memory the kernel uses there are much more direct ways.
Aug 18, 2015 at 7:25 comment added Luaan @JonathanLeader I remember when Linux was starting - even getting the installer to work (if it even had an installer!) was a massive pain - there's still some distros where you have to pick your mouse driver manually. Making things like networking or, god forbid, X-window, work, was a rite of passage. On my first Red Hat installation, I had to write my own graphics driver, because there were only three (!) drivers available. Having basics work by default is a sign of maturity - and obviously, you can afford a lot more tweaking on an embedded system, where there's only a few HW combinations.
Aug 17, 2015 at 20:34 comment added psmears @JonathanLeaders: Yes - and as well as modules for strange devices, there are modules for obscure filesystems, networking protocols, etc...
Aug 17, 2015 at 18:22 comment added Jonathan I think from this we can conclude Linux kernel is massive because it supports all sorts of device configurations, not because it's outrageously complex. We see here that very little of the 15m lines are actually in use. Although, as nearly all things are, it may be overly complex, at least we can sleep at night knowing it's within reason
Aug 17, 2015 at 18:14 comment added Alex counting modules isn't enough, a lot maybe builtin by config
Aug 17, 2015 at 18:06 comment added jimmij My gentoo-4.0.5: lsmod | wc -l: 12 (one line is header), find /lib/modules/$(uname -r)/ -name '*.ko' | wc -l: 48.
Aug 17, 2015 at 17:58 comment added Jonathan Okay, so that's just over 5% of the driver modules actually in use. Now we're making more sense. So perhaps the rest of the code also may have similarly small percentages of 'in use' on a device.
Aug 17, 2015 at 17:45 comment added Jonathan I see, so there is a lot of 'culling' or dynamic loading taking place. That makes me feel a lot better. So in reality, maybe a very small portion of the driver code base would actually be in use on one single device at a time. To verify that, do you know a way to tell how many modules possibly exist? You said 158 are running, but out of how many?
Aug 17, 2015 at 17:42 history answered user4443 CC BY-SA 3.0