Linux – Proprietary or Closed Parts of the Kernel

free softwarekernellicenseslinux

I've heard of lines of code that are distributed with the Linux Kernel that aren't open. Maybe some drivers or something like that.

I'd like to know how much of that is true? Are there lines of code that are distributed with the Kernel (as when you download it from kernel.org) that aren't open at all? And how much that is of the total (if there's a way to know it, number of lines or percentage)?

And where can I find more information about this? Maybe some articles to read…

Thank you very much!

Best Answer

The Linux kernel itself is all free software, distributed under the GNU General Public License.

Third parties may distribute closed-source drivers in the form of loadable kernel modules. There's some debate as to whether the GPL allows them; Linus Torvalds has decreed that proprietary modules are allowed.

Many device in today's computer contain a processor and a small amount of volatile memory, and need some code to be loaded into that volatile memory in order to be fully operational. This code is called firmware. Note that the difference between a driver and a firmware is that the firmware is running on a different processor. Firmware makers often only release a binary blob with no code source. Many Linux distributions package non-free firmware separately (or in extreme cases not at all), e.g. Debian.

Related Question