I've been thinking about something. And I can't figure out the answer. Remember when SCO's Erik Hughes was deposed [PDF; text] in the SCO v. IBM litigation, he said that at first the LKP did have kernel code in it, but later it was taken out? So then why, when SCO announced it was stopping distribution of Linux in May of 2003, would it have needed to stop distributing the LKP also? Presumably by then, according to what they've told us, there was no Linux kernel code in the LKP. So why did SCO stop distributing? I know one can never rule out the Keystone Kops syndrome, but I keep trying to puzzle out their thinking.
And then I have another question: if there ever was kernel code in the LKP, was kernel source distributed as required by the GPL license? The reason I keep thinking about it is this: if they failed to distribute the source, did they lose their GPL license? Under GPLv2, if you breach the terms, termination is automatic and can't be restored except by permission of the authors of the copyrighted code.
Now *there's* a picture my mind doesn't mind dwelling on.
SCO did stop distributing the LKP when it stopped distributing Linux, or more accurately *said* it did. Specifically, one of the items SCO said it wouldn't continue to distribute because of the IBM litigation was UnixWare 7.1.4 with the LKP:
What is LKP? I don't know why they thought it was OK to endorse using the LKP from the earlier CD, or how that would fix things since it actually highlighted SCO had earlier distributed the LKP, but there you are. SCO is SCO. They never did understand the GPL, as far as I could make out. You can see that
in the "Legal Notice" (that no longer seems to be where it was at ftp://ftp.sco.com/pub/scolinux/Legal_Notice), where SCO said it would continue to make Linux rpms available to existing customers:
Because of the SCO vrs IBM case the LKP disk is not being shipped with UnixWare 7.1.4. You can use the CD from UnixWare 7.1.3 to install on UnixWare 7.1.4 until the SCO/IBM case is resolved.
One of the main features of UnixWare 7 is the LKP, which stands for Linux Kernel Personality. It maps common Linux Kernel functions to the UnixWare kernel allowing us to run both Unix and Linux software on the same box, seemlessly and effortlessly :-)
NOTICE: SCO has suspended new sales and distribution of SCO Linux until
the intellectual property issues surrounding Linux are resolved. SCO will,
however, continue to support existing SCO Linux and Caldera OpenLinux
customers consistent with existing contractual obligations. SCO offers at
no extra charge to its existing Linux customers a SCO UNIX IP license for
their use of prior SCO or Caldera distributions of Linux in binary
format. The license also covers binary use of support updates distributed
to them by SCO. This SCO license balances SCO's need to enforce its
intellectual property rights against the practical needs of existing
customers in the marketplace.Can you find anything in that first notice that there was a password needed? I won't call them morons, but if you read the messages about the notice, others surely did. My point is just to establish that UnixWare with LKP was put on the list of items that would no longer be distributed except to prior customers. So you could still download it, but you were on your honor not to do so unless you were a customer. Why SCO thought distributing to prior customers new code, updates, bypassed the GPL is another mystery. But again, my question is: why? If there was no Linux in the LKP, why would SCO feel it needed to withdraw it from public distribution? What exactly was in there? What was it for?
"The Linux rpms available on SCO's ftp site are offered for download to
existing customers of SCO Linux, Caldera OpenLinux or SCO UnixWare with
LKP, in order to honor SCO's support obligations to such customers."
Because we are working to complete our historical record, I'd like now to include some information about the LKP, because certain materials seem to have gone to SCO Heaven and are either hard to find or impossible now. So, for historians, some materials about the LKP seem in order.
First, what exactly was Caldera/SCO's Linux Kernel Personality for? That page has links to answer that and other questions. You might want to start with the
Introduction. Or with the
table of contents. Here's how they said it worked:
How the LKP works So that's what the story was. They specifically state that there was no Linux kernel, just the interface, called the Device Kernel Interface (lxdevfs). The copyright is October of 2002, though, and by then there may have been some litigation is some executives' starry eyes. In any case, it doesn't say when it changed, or that it did. Hughes told us that part, under oath.
The LKP provides a Linux kernel interface to UnixWare 7. The LKP is not an emulator; rather, Linux kernel functions are mapped into equivalent UnixWare 7 kernel functions. The LKP runtime environment, from an application point-of-view, is the same as as a Caldera OpenLinux runtime environment -- Linux applications do not "know" that they are running on a UnixWare 7 kernel. The LKP includes standard Linux libraries, runtime components and user commands.
The main differences between native Linux and the LKP are in the kernel and data structures themselves, which are based on UnixWare 7 for the LKP.
you know the LKP was one important reason Caldera did the deal with Santa Cruz? Why did Caldera want it? The idea was to "acquire features better suited for high-end use" for Linux, as Caldera put it at the time, and bring Linux into the mainstream, to increase the enterprise customer base for Linux by providing the apps a Unix kernel, as well as to provide more applications for UnixWare, by making applications written for Linux usable on UnixWare, whose customers were having issues with a comparative lack of applications.
I realize, of course, that SCO later sued IBM for allegedly doing precisely the same thing, bringing Linux into the mainstream, but this is SCO. It doesn't have to make sense.
But it was indeed why Caldera wanted to do the deal back in 2000 according to Santa Cruz's Dave McCrab:
Linux will acquire features better suited for high-end use as a result of Caldera Systems' pending acquisition of technology assets from Santa Cruz Operation.... Interesting, no? So one point of the merger, as Stephen Shankland's title put it, was: "SCO-Caldera deal brings high-end features to Linux".
One reason for the acquisition was that SCO was embarked on a Linux strategy of its own, McCrab said. The company was working on a software project called Linux Kernel Personality, or LKP, that would allow SCO's UnixWare software to run all Linux programs. The software is a key part of the combined company's plan to have Linux programs run on comparatively low-end systems with Caldera Systems' Linux operating system and higher-end multiprocessor systems with SCO's UnixWare operating system.
Using both the UnixWare kernel and the Linux kernel is a strategy SCO had embarked on, McCrab said, but the company realized it would be easier to use an established product such as SCO's OpenLinux than to create a version of Linux all its own.
Another point was enunciated by Ransom Love in August of 2000. He said it was to bring new customers to Linux:
The acquisition of Santa Cruz Operations' Unix software and services will help Caldera address weaknesses that have kept Linux from mainstream use, Caldera chief executive Ransom Love said today. Darl McBride didn't get that memo, I guess. He's always asking what Caldera got for its money. Well, that's part of what they were wanting to get. And one more goal, shown in a presentation at SCOForum 2000:
The acquisition, announced two weeks ago, gives Caldera the ability to provide global sales, support and customization services; an operating system that will work on heavy-duty servers; and strong partnerships with software companies, Love said in a keynote address today at the LinuxWorld Conference and Expo.
So the purpose of the deal, and the LKP, was so UnixWare could be a commercial Linux platform? So one hand would wash the other, or at least that was the plan. UnixWare would get the Linux apps and Linux would get the high end enterprise customers. Here are some details on how it worked:
Woah. "We implement the Linux ABI", eh?
Back in 2003, we noticed another of SCO's Powerpoint presentations, then on SCO Benelux's website, and some comments asked about filesystems. Here's a slide from that presentation about that to add to our collection on Groklaw:
Well. JFS. In 2000.
Santa Cruz had the LKP, so rather than build another, Caldera decided to just buy it. That ties in with the Caldera Developer Network, which was a "combined Unix/Linux Development Platform" Caldera then set up.
If any of you were members of that Caldera Developers Network, perhaps you can tell us if you had to sign an NDA.
I'm kidding. There couldn't have been one, since it is literally impossible to write secret GPL code for the Linux kernel, and Caldera knew it, since it understood the GPL was the license on the kernel and access to the source is an essential part of the license. And yet, Caldera created a combined developer network. How would you come up with NDA language for that? I can't imagine. So who spilled the trade secrets, would you say?
What does all this have to do with the LKP? Because at the time, Caldera was all about uniting Unix with Linux for the enterprise, and the LKP was supposed to enable that.
Here's a snip from a 2001 Caldera press release announcing the LKP, in Open UNIX 8:
Caldera Systems, Inc. (Nasdaq: CALD) and The Santa Cruz Operation, Inc. (SCO) (Nasdaq: SCOC) today announced the forthcoming release of Open UNIX 8. By incorporating the Linux Kernel Personality (LKP) technology into the next release of the UnixWare(R) 7 kernel, Open UNIX 8 will enable Linux applications to be deployed on top of the powerful and highly scalable UNIX kernel.... One purpose of including the press release
again now is to show that UnixWare and Open UNIX 8 were the same thing, except that Open UNIX 8 had the LKP.
The LKP technology in Open UNIX 8 will include the same GNU tools and libraries built into Caldera OpenLinux(TM), which were developed with close adherence to the specifications of the proposed Linux Standards Base (LSB). Open UNIX 8 will track this developing standard, assuring the highest degree of application compatibility.
We had earlier noticed ELF in the LKP, but what else was in there? The press release said "the same GNU tools and libraries built into Caldera OpenLinux". So, what GNU tools and libraries were built into Caldera OpenLinux? Here is a press release on OpenLinux:
Caldera's OpenLinux Workstation Enters Open Beta; Includes the New Linux 2.4 kernel, Targets Commercial, Corporate and Open Source Developers The 2.4 kernel is exactly what the SCO litigation was supposedly about.
We're talking the GPL here, though, so I can't help but ask another natural question. Did SCO carefully provide the source for all the Linux code it distributed, including with Open UNIX 8 (and later Unixware with the LKP)?
OREM, Utah--March 19, 2001--Caldera(R) Systems Inc. (Nasdaq: CALD) Monday announced that OpenLinux(TM) Workstation 3.1 has entered open beta and will be available for download from Caldera's Web site at http://www.calderasystems.com/products/beta this Thursday, March 22.
OpenLinux Workstation is the develop-on platform for Caldera and targets commercial, corporate and Open Source developers seeking the ability to deploy on Caldera high-performance, unified Linux/UnixWare(R) enterprise platforms. OpenLinux Workstation will be the successor to the award-winning OpenLinux eDesktop 2.4.
OpenLinux Workstation is built on the new Linux(R) 2.4 kernel and features a complete self-hosting environment, KDE(TM) 2.1, glibc 2.2.1 and Xfree86(TM) 4.0.2. The beta contains an expansive set of Open Source development tools including: gcc 2.95.2, g++ 2.95.2, Perl 5.6.0, OpenSSL 0.9.6 and Sun(R) Java(TM) 2 SDK, Standard Edition, version 1.3. Commercial development tools will ship with the final version....
OpenLinux Workstation is developed to function as an integrated client for all Caldera server offerings -- both OpenLinux and UnixWare-based -- and includes the Caldera(R) Volution(TM) management agent. In addition, it consists of the base components Caldera's Professional Services will use to deliver specialized Linux-based client platforms for OEMs, Internet devices and thin clients.
I have another question: how could Caldera, now SCO, not know what was in the 2.4 Linux kernel until 2003, if they were working with it this intimately in 2001? That's on top of the issue of SCO distributing the 2.4 kernel. How do you sue over it after you distributed it as GPL code?
Here's one more press release about Open UNIX 8 and the LKP that explains the purpose:
Open UNIX 8 will maintain compatibility and continuity with the UnixWare 7 operating system while providing a complete Linux environment. In addition, the product will incorporate support for the execution of unmodified Linux Intel(R) Architecture binaries, giving users, resellers and ISVs the best of both UNIX and Linux technologies. The result is transparent execution of Open UNIX 8 (or UnixWare 7) applications and most Linux applications, which will run without modification or recompilation. So that puts the distribution timestamp, so to speak, on the map.
"Open UNIX 8 is the first step in implementing the vision of the pending new company," said Ransom Love, president and CEO of Caldera Systems. "It combines the heritage of UNIX with the momentum of Linux, and will be our premiere product for data intensive applications like database, email and supply chain management. The incorporation of the Linux application engine into the UnixWare kernel essentially redefines the direction of the product, and motivates a new brand identity -- Open UNIX."
"If you need to run a Linux application in a data center environment, Open UNIX 8 will fill the bill with the highest standard of reliability and scalability," said Dave McCrabb, president of the SCO Server Software Division. "We are 'unifying UNIX with Linux for Business' and this product is a major proof point."...
Open UNIX 8 will be demonstrated at Caldera's booth at CeBIT in Hanover, Germany, March 22-28, Hall 3 Stand C45. An Early Availability Program is in place to supply selected partners with LKP technology previews based on UnixWare 7.1.1 systems. In April, Caldera and the SCO Server Software Division will begin distributing Open UNIX 8.0 beta versions to a broad list of partners.