Why does the Linux kernel source code keep getting larger and larger?
• (ADB) There are four causes for this unbounded growth: • New architectures are implemented. This is usually OK, because the code that is specific to each architecture is (in theory, at least) separate from the others. Common code doesn’t grow. • New drivers are implemented. Again, this is OK, because each driver has different source files, and those are selectively compiled in the kernel executable or built as modules according to the specified kernel configuration. • Old code gets adequately documented. Adding comments and documentation increases the size of the source, but it’s still a Good Idea ™. • Creeping featurism. It’s generally considered a Bad Idea ™ to keep adding more features to an already working piece of code.