Results 1 to 3 of 3
I have read that there are binary blobs in at least some kernel versions. My question is, how did these become part of the kernel in the first place? Wasn't ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
- 06-29-2009 #1Just Joined!
- Join Date
- Jun 2009
- Location
- Philippines
- Posts
- 1
Kernel blobs and GPL
I have read that there are binary blobs in at least some kernel versions. My question is, how did these become part of the kernel in the first place? Wasn't the kernel GPL'd in the 1990s? I also don't understand the license fully, so perhaps that is one source of my confusion. But from what I understand, once a certain software is released under the GPL, it is supposed to remain free forever. And it is implicitly required by the four freedoms that the source code should be made available in order for a certain software to be free.
I am just asking this for curiosity's sake - no political implications or anything. Thanks.
- 06-29-2009 #2Linux Guru
- Join Date
- Nov 2004
- Posts
- 6,110
The binary blobs don't ship with the kernel, but are usually part of 3rd party proprietary drivers such as the nVidia or ATI drivers. There is usually a GPL'd "shim" module that serves to separate the blob from the kernel meaning that the kernel itself is not directly linked to any proprietary software. This is obviously questionable in itself.
Other than that you may find firmware for devices that is loaded with the drivers, the firmware itself being the original proprietary one from the manufacturer. This is not part of the kernel but is loaded to the device, e.g. wifi card.
- 06-29-2009 #3
Practicality, as far as I can tell. There are still a number of devices in the PC computing world that require specific driver code or firmware that is held in copyright by the companies that distribute those devices. A big example of this is wireless chipsets. With the exception of Intel, most wireless manufacturers do not release official Linux drivers for their products, and sometimes in lieu of this they allow developers to use binary drivers (BLOBs) that cannot be modified or redistributed outside of that agreement.
The high road, of course, is to simply not use devices that don't have open-sourced drivers, but that leaves a significant chunk of the world unable to use Linux in any practical manner. The "necessary evil" then is to include binary BLOBs and allow those people to use their devices the same way they would in another operating system.
That being said, I'm not a kernel developer, so if someone else has a divergent opinion I'm all ears.
I'm not a lawyer either, but you are absolutely correct. Software released under the GPL remains that way (even if subsequent versions are released under a different license). However the point here is that these BLOBs were not, and will likely never be, released under the GPL license. They remain proprietary code copyrighted (and in some countries patented) by their respective companies.Wasn't the kernel GPL'd in the 1990s? I also don't understand the license fully, so perhaps that is one source of my confusion. But from what I understand, once a certain software is released under the GPL, it is supposed to remain free forever. And it is implicitly required by the four freedoms that the source code should be made available in order for a certain software to be free.
GPL software can and does live side-by-side with non-GPL software all the time. The only legal requirement when distributing a product that contains both is that the source code for the GPL software be made available. It does not "infect" software released under different license terms.Registered Linux user #270181
TechieMoe's Tech Rants


Reply With Quote

