Post by unknownIk dacht dat het verschil kernelspace <-> userspace voor de FSF een
voldoende grote barriere was, maar dat is dus ook al niet zo? Tsk.
Tsja, ik ook, maar waar staat dat? De FSF laat in het midden wat ze onder
een derived work verstaan, en het enige wat in de FAQ staat en in de buurt
komt is een plug-in. Welbeschouwd is dat ook eigenlijk het geval - en al
helemaal aangezien het eerder in de thread over het verschil tussen een
module en een userland programma ging:
" If a program released under the GPL uses plug-ins, what are the requirements
for the licenses of a plug-in?
It depends on how the program invokes its plug-ins. If the program uses fork
and exec to invoke plug-ins, then the plug-ins are separate programs, so the
license for the main program makes no requirements for them. "
Maar hier gaat het al mis. Een kernel gebruikt *nooit* fork en exec om een
proces te starten, dus deze conditie is niet van toepassing.
Wat *WEL* van toepassing is, is dit:
" If the program dynamically links plug-ins, and they make function calls to
each other and share data structures, we believe they form a single program,
which must be treated as an extension of both the main program and the
plug-ins. This means the plug-ins must be released under the GPL or a
GPL-compatible free software license, and that the terms of the GPL must be
followed when those plug-ins are distributed."
Van "dynamically linking" is waarschijnlijk wel sprake, ze maken onderling
function calls bij de vleet (syscalls, anyone?) en een willekeurig userland
proces staat vol van datastructuren die door de kernel zijn bedacht. Dit
geldt zowel voor userland processen als kernel modules.
Het "grote" verschil is blijkbaar dat kernel modules in kernel space draaien,
en programma's niet, maar dat verschil is helemaal niet groot, en is slechts
een technisch detail. Als je een systeem zou hebben zonder protected mode
(ELKS, bijvoorbeeld!) dan *is* er niet eens een verschil, en is het dus
pure willekeur van de FSF om het "overduidelijk" als een ander proces te
beschouwen. Het feit dat de license file van iedere Linux kernel begint met
te vertellen dat userland processen *NIET* als afgeleid werk dienen te worden
beschouwd geeft aan dat het blijkbaar niet zo 'overduidelijk' is.
--
Martijn van Buul - ***@dohd.org