VMware May Violate Linux Copyrights
Nailer writes "Bloomberg believe VMware's IPO today may the largest technology offering since Google. But doubts have been cast over the company's supposedly proprietary ESX product, as top 10 Linux contributor Christopher Hellwig claims the software may violate Linux kernel copyrights. 'Is Hellwig right, and is VMware a derived product of Linux? Unless vmkernel can be loaded without the Linux kernel, it would appear so. VMware was developed from another, long ago OS created as a research project, but it's unclear whether vmkernel was ported from that OS or rewritten as the Linux-requiring binary blob. What's more of an issue is that VMware had these serious questions posed directly to them a year ago, repeated in a public forum many times since, but have yet to respond at all.'"
Copyright gets infringed, licenses get violated.
The Banjo Players Must Die!
ESX runs directly on the hardware. They're saying ESX is what's violating the copyrights.
When does this happen in the movie?
'Q. Does ESX Server Run on Linux? On Windows?
A. ESX Server runs natively on server hardware, without a host operating system.
Ok, so ESX doesn't need a host OS. It's pretty clear that ESX installs directly on the hardware without needing Windows, Linux or any other OS installed first - ESX itself is the OS. The question then is whether the ESX OS is based on Linux. To reitterate The question then is whether the ESX OS is based on Linux
init 11 - for when you need that edge.
Because ESX server (the specific product in question here) runs differently than the Windows and Linux Workstation products (the key word being "hypervisor"):
"[The] VMware ESX hypervisor virtualization approach provides lower overhead and better control and granularity for allocating resources (CPU-time, disk-bandwidth, network-bandwidth, memory-utilization) to virtual machines. It also increases security, thus positioning VMware ESX as an enterprise-grade product." - Wikipedia
Whereas the desktop products operate over the OS layer, ESX is closer to the bare hardware (Type 1 versus Type 2 hypervisor - Read more. The question in this case is why it needs the Linux kernel "loader" if it is a self-contained kernel. My understanding of the product isn't deep enough to speculate.
WASTE - The Secure P2P
Whether or not VMWare violates Linux copyrights, the mere fact that this is being discussed may add to the perception of the GPL as a "viral" license, and steer developers/businesses away from using Linux and other GPL software in their products.
"Anyone who [rips a CD] is probably engaging in copyright infringement." - David O. Carson
You heard it here first. In the next major ESX release, VMware will ditch the Linux service console altogether in favour of their own proprietary one. Admins around the globe cheer as they have to learn yet another system.
I joined two users too late.
Strange that during a training session the instructor consistently referred to the underlying platform as a highly modified RedHat. They didn't even try to claim that this was anything else, or even just their own Linux, they used the brand name of the starting point.
There is, of course, a way that they aren't violating linux copyrights: They may simply be using the Linux Kernel to get the hardware into a known state prior to loading the VMkernel. Similar projects include LinuxBIOS, and Linux's own kexec (kexec lets you boot a new linux kernel without actually 'booting').
Of course, it is a violation if ESX is actually running a modified Linux Kernel, instead of using the Linux Kernel as a bootloader. Using the Linux Kernel as a bootloader is a done deal; just look up 'kexec' for proof of it. (Though I'm fairly certain kexec isn't what VMware uses).
But even then, remember that ESX is their "enterprise" product, which acts more like a hypervisor, and is not to be confused with VMware Workstation, VMware Player, or VMware Server.
-- Sometimes you have to turn the lights off in order to see.
- Linux boots.
- Userspace tool kexec's the hypervisor (an odd way of doing things, so I wouldn't be surprised if this isn't actually what happens).
- The Linux kernel continues to run in a VM, providing an admin UI and drivers to the other guests, just as it does with Xen.
Looking at the patches that the VMWare guys have been sending in for hypervisor support, it seems like step three, at least, is accurate. Xen does the following in a typical install:- Linux is installed, with a Xen-compatible kernel.
- User reboots.
- Xen Hypervisor boots.
- Xen Hypervisor loads a Linux (or NetBSD or Solaris, or Windows with Xen Enterprise) domain 0 (privileged) guest, which runs the (userspace) management tools and provides device drivers.
There has, I believe, been some work done making Xen boot using kexec from Linux, so you can skip step 2 if you want. If you do this, then you get exactly the same set of steps as VMWare ESX.Now, to be fair, Xen actually does include some code (stuff like atomic operations, for example) from Linux (and is GPL'd, making this a non-issue), but this was done to save time, rather than because the code has to come from Linux.
I am TheRaven on Soylent News
I've read somewhere that SCO was offering a special discount on linux licenses this week. Quick! get one before the offer ends!
Lots of proprietary software runs just fine on Linux, including drivers, without violating the GPL. VMWare's ESX Server is sort of a special case as people seem to think a part of the product is itself derived from Linux. "Derived from Linux" is not the same as "running on Linux".
1. It details information that is from an older and nearly 2.5 year old revision of the Product. The Current Version is 3.0.x and the relationship of the Linux system and the VMKernel has changed substantially.
2. VMWare licenses the Implimentation of Linux used in ESX from Red Hat, however nowhere is that mentioned in the Article.
Power Corrupts,Absolute Power Corrupts Absolutely, leaving one person(group)in charge is absolutely corrupt.
Go read this article (http://hardware.slashdot.org/article.pl?sid=07/08 /09/171248) from last week and note that Dell apparently will be booting a version of ESX from BIOS. If ESX can be booted with an alternate bootloader, it must not be that closely tied to RedHat.
Nothing for 6-digit uids?
I think Christopher Hellwig put it best: Exactly. Linux would've pushed legal action by now if they thought it would get them anywhere. The defense rests, end of story. So what is the point of this article? To whine about how unfair this is? Ok, maybe. But such is life.
--
Capitalism: When it uses the carrot, it's called Democracy. When it uses the stick, it's called fascism.
Capitalism: When it uses the carrot, it's called democracy. When it uses the stick, it's called fascism.
I've never used ESX, but I would imagin that no matter what, ESX needs driver support.
Being a hypervisor, it has to access all kinds of devices like VGA consoles, serial ports, Fibre Channel HBAs, SCSI HBAs, IDE controllers (for CDROMs), Ethernet adapters, etc., etc. So my question is, where does the ESX hypervisor (vmkernel) get these? Does it pull them from Linux or did they write their own? This hardware _HAS_ to be setup, initialized, and arbitrated. Does vmkernel have it's own stack of device drivers, or does it conveniently run the ones in the Linux "bootloader"?
I'm thinking there's more to this than just the binary blob issue...
Then you had a poor-quality instructor. Every VMware instructor I've had has been crystal clear that the Service Console runs a heavily modified version Red Hat, but that the vmkernel - the OS that's bootloaded by the SC, which handles virtualization and hardware access, or in other words the underlying platform - is a completely proprietary OS.
If you are talking about the kernel, then you should read the COPYING file: if your work is a derived work of the Linux kernel, then it must be released under the GPL. If it is not a derived work of the kernel then you can do whatever you want.
If you are talking about one of the many platforms based on Linux (e.g., RHEL, Debian GNU/Linux, etc) then you must consider the licensing terms of every work which you derive from (e.g., the GNU C Library, GTK+). I harken back to the days of Netware NLMs. Netware didn't seem to want some sort of ownership for people loading things onto their kernel, nor did Microsoft demand rights for people distributing TSRs. So why is this different? And look where it got them. Well, I have no idea if Netware is still alive and/or relevant today, but the sheer number of crappy proprietary drivers written by two bit hardware companies has locked them to the shitty old i386 architecture, and it looks like this will continue to be the case for decades to come.
BTW, I must correct your implied assertion that the free software community wants "ownership" of a vendor's code. This is not the case! We merely want vendors to respect the licensing terms of any works from which they create a derivative work.
That's not surprising at all. You're interacting with the service console, which runs Linux. It's more interesting to me that your Nagios box thinks the SC is running 2.6.8. And Debian, at that. The Service Console for ESX 3 actually runs a heavily modified RHEL 3 - 2.4.21 as of 3.0.1. ESX 2.5 ran Red Hat 9, I believe.
You're overstating the GPL's claimed definition. GPLv2 simply references copyright law's definition of derived works; only GPLv3 specifically references shared-library linkages as inferring derivative status, and even then only when the 3rd-party code is written to the interface provided by the GPLed code ("shared libraries and dynamically linked subprograms that the work is specifically designed to require", such that use of a common, standardized interface not specific to some GPLed work is explicitly acceptable).
The GPL is not viral. Copyright is viral. You can't take any copyrighted work and incorporate it into a new work of your own without permission from the copyright holder (excepting Fair Use). The work you incorporated "infects" your work.
Copyrighted work distributed under the GPL is different only in that it does give permission for creation of derivative works, given certain limitations. If you don't want to comply with the license, don't incorporate GPL'd code into your software. Go buy some commercial code and use that instead -- but be sure to comply with the terms of that license, because "viral" copyright will burn you if you don't. Or, if you prefer, you can write your own code so you don't need a license at all.
This is not rocket surgery. It's not even the slightest bit confusing, except when made deliberately so by FUDsters.
Note to ACs: I usually delete AC replies without reading them. If you want to talk to me, log in.
umm, no. You're actually ssh'ing into the service console, which runs Red Hat Linux. "uname -a" just shows the Linux kernel version that the service console is running, not the ESX kernel. The service console just provides a means of interacting with ESX, but it's not ESX itself.
the "directly on hardware" is marketing talk saying that you dont need and shouldnt even bother with the host OS, vmware takes care of it (installation, support, updates, etc)
No, actually, it doesn't mean that at all. You have no actual concept of how ESX works, you just SSH'd into a box, ran uname and considered yourself clever. What you are looking at is the Service Console. The SC runs a modified RHEL 3, and functions on bootup as a bootloader for the vmkernel. Once the vmkernel is loaded, the vmkernel handles all hardware access and virtualization functions, and is a completely separate OS from the service console. The Service Console continues running as a pseudo-VM with API hooks into the vmkernel to preform management functions. It bridges the vmkernel with the outside world. The vmkernel itself, the underlying OS running everything and managing hardware access, is proprietary, and is not Linux.
Might I suggest you take some VMware classes to gain a better understanding of how this stuff works.
I am a former VMware programmer. Obviously I do not speak for the company, just myself.
VMware is not infringing anything. First, they have high standards of ethics. Even if they didn't, they would be too smart for that. When ESX was designed, there were other choices for the console OS, FreeBSD for instance. But they figured out that using Linux was legal and did so. Both VMware and Linux benefit from this. Yes, it is not a "standard", well-understood relationship such as running some app on top of the kernel. But it respects the technical aspects of the license and I believe its spirit as well (although my interpretation of the "spirit" may differ from yours).
One could argue that Linux benefits more from VMware than the other way around. In many cases VMware ESX introduced Linux to corporate data centers that wanted nothing to do with it. The sales people had to work hard to convince potential customers that the product was NOT running on Linux, that Linux was just running in a separate VM to help along with various tasks.
Linux is also helped by the fact that virtual machines offer a low-cost way of experimenting with new systems, and add a layer of freedom in the conservative corporate IT environment.
As to whether VMware should be free software, there are situations for which free software is just not the right model and VMware is a good example. In the early years of the company, someone tried to start a competing free-software product (at some point called Freemware) but it didn't go far. VMware is a large (huge) system. It took a lot of unglamorous work from a lot of people under the same roof to bring it to life. It was almost a miracle that it would run. It stressed CPUs in truly novel ways. (The programmers hit and had to work around previously unknown bugs in the CPU.) I, the eternal pessimist, feared that we'd never be able to make it stable enough for a viable product. Fortunately I was wrong, and in any case Windows was a lot less stable than VMware those days, so it didn't matter that much.
Luigi
No.
Derived from Linux source code = Have to show the code
Running on Linux = whatever you want to do
Derived from linux concepts (commands, interfaces, etc) or using linux API's = whatever you want to do
Please don't spread rediculous misconceptions about what the GPL forces to be free, it hurts the GPL movement because people will avoid it for fear its will "infect" their code, I had to get our lawyers sign off that checking our proprietary code into the GPL'd CVS would not force our code to be GPL; arguements that using Open Office make your term paper GPL or that somehow the ability to run Halo under WINE means you have a right to the source code is the type of anti-GNU FUD MS wants to spread.
Under that logic almost all FSF software would be the property of Sun, AT&T, HP, IBM, etc. since for a long time it required SunOS, Solaris, HP/UX, AIX to run on.
FSF did not distribute SunOS, Solaris, HP/UX etc. and therefore they were not bound by those licenses. The same applies to say NVIDIA, since they don't distribute GPL-covered software either. VMWare has no such luck -- they distribute both GPL-covered and proprietary software, and they even do it on the same CD. Now, the GPL could have outright forbidden this "mere aggregation", which would obviously have been completely enforceable. Instead, the GPL allows shipping both on the same media -- but only if both pieces work independently of each other. And the VMWare hypervisor seems to not work without the Linux kernel. Whoops.
Finally! A year of moderation! Ready for 2019?
libraries are okay because they're just linked
Incorrect. You *cannot* link a GPL library into a non-gpl app. Check with your lawyers. Seriously..