Re: A proposal - binary

Paul Mackerras
2006-08-05T00:06:40Z

Theodore Tso writes:

> IBM's virtualization *does* have magic blobs; it's called the
> hypervisor. The difference is that the PowerPC have a delibierately
> castrated architecture such that when you are running a guest
> operating system in an LPAR, so that when you do things like mess with
> page tables (for example), it traps to the hypervisor which is really

Well no. When the kernel wants to change the hardware page tables it
doesn't even try to do it itself, it calls the hypervisor via the
"hypervisor system call" instruction. It's entirely analogous to a
program calling the "write" system call to send output to a terminal
rather than trying to drive the serial port directly (via outb
instructions or whatever).

> "a magic binary blob" running on the bare Power architecture. The

Not really. Not any more than the Windows kernel is a "magic binary
blob" in a GPL'd program running under Windows.

> difference is that the way you trap into the hypervisor is via a
> PowerPC instructure that looks like a native instruction call.

Wow, you must have been really tired when you wrote that... :)

> The bottom line is that the line between magic binary blobs and
> whether or not they are legal or not is more of a grey line than we
> might want to admit.

It's quite clear that (a) being in a separate address space (b) having
a defined, documented interface and (c) being used by multiple
different client OSes is pretty good evidence that something is an
independent work, not a derived work of the kernel, and therefore not
subject to the GPL.

Paul.