gnu-misc-discuss
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Can linux kernel claim it uses GPL v2?


From: David Kastrup
Subject: Re: Can linux kernel claim it uses GPL v2?
Date: Sat, 07 Oct 2006 17:46:30 +0200
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux)

kero552@gmail.com writes:

> David Kastrup wrote:
>
> Point taken. However it means "library turns into kernel " is still
> there and waiting.

Kernel is pretty different than a library.  It has threads of its own.

>> >> Where do you get those ideas?
>> > Which ones?
>>
>> That the license note by Torvalds has _anything_ whatsoever to do with
>> glibc/GPL/LGPL.  That's really utter hogwash.

> Not really. I am looking for reason, why some programs using kernel
> can be not-GPL, while programs using GPL library has to be GPL.

It depends on whether the program can work without this _specific_
library or kernel.

>> > The reason why kernel is GPL while glibc is LGPL is because of
>> > syscall note.
>>
>> Not really.  The reason is that there is a clear cut separation of
>> functionality with a _standard_ API between them.  Also glibc works
>> fine on a number of systems without Linux kernel, so it can hardly
>> be called derived from the kernel.  And the case does not become
>> better by GNU libc having existed before Linux.
>
> So you are saying if I make a standard API for GPL library, I can
> use different license.

Uh, you can't "make" a standard API for GPL library.  Look up the
definition of "standard" in a dictionary of your choice.

But you'll find that GNU libraries that are programmed according to a
preexisting (and probably standard) API are pretty much uniformly
licensed under the LGPL.  And while this is not the official reason
cited for this choice, it is one area where the FSF would not want to
have the "linking constitutes derivation" theory tested in court.  So
they use a license that explicitly does not pursue the linking idea.

> About using GPL library means GPL program or kernel.
> The only difference I see is that calling kernel requires filling
> certain registers and calling int 0x80 (on i386), while calling
> function require pushing arguments on stack and jump to certain
> adress.

Not "certain address", but a symbolic entry point that will get
resolved by the linker and combined executable and library, adapting
the executable according to the actual memory layout of the library.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum


reply via email to

[Prev in Thread] Current Thread [Next in Thread]