7 Oct 2007 12:34
Linux kernel, drivers, shims
Shriramana Sharma <samjnaa <at> gmail.com>
2007-10-07 10:34:02 GMT
2007-10-07 10:34:02 GMT
Dear list, Recently I have been looking through some of the Linux kernel - binary drivers - GPL issues and came across what people mention about shims -- interfaces between GPL-ed kernel and incompatible-licensed-drivers. And about the thing where totally independently developed fs-s cannot be considered derivative works (at least according to Torvalds). I am not hacking out the legal parts of GPL (that only apparently leads to endless flamewars) but I am asking about the programming part of it. 1) I don't understand how two separate programs can work in the same memory space -- if I have understood properly the part where closed-source drivers are "loaded in kernel space" -- if they do not have knowledge of how to talk to each other in the level of pushing a set of parameters to the stack and making a function call. At that low level, when the fs is talking to the kernel, how can it be developed without using the kernel's headers? 2) How is it also possible to just throw in an independently developed fs module into the kernel and make it a perfect fit so they communicate with each other? 3) How can a shim be written so as to circumvent legal issues? I mean, a(Continue reading)
RSS Feed