Practical Technology

for practical people.

May 29, 2007
by sjvn01
0 comments

The Patent Puzzle

Patent fights are fights about money. The secondary issue, the one that makes the headlines, is control. To really understand whats going on in the current patent posturing involving Microsoft, Novell, and a host of open-source companies and groups, it helps to keep those factors firmly in mind.

What makes this current brewing battle particularly puzzling is that it is based on software patents. The naïve can confuse software patent issues with those of copyright and trademarks. Unlike copyright and trademarks, however, where one can point at the offending code or trademarked image or language, there is no such bright shining line in software patents.

With most software patents, there is no specific language, no hard code, but only descriptions of general processes that can be implemented in multiple ways. This, as the Public Patent Foundation, or PUBPAT, points out, has led to undeserved patents being granted. Some of the reasons why this happens, according to PUBPAT, is “that the Patent Office may not be aware of significant prior art (knowledge already in the public domain), that the Patent Offices employees are not given sufficient time and resources to do an effective screening of patent applications, and that the rules regarding how patents are granted are skewed through perverse patent policy to favor granting patents.”

The result? Bradley Kuhn, chief technology officer of the Software Freedom Law Center, explained in August 2004 (when he was executive director of the Free Software Foundation) when the issue of Linux and patents was first seriously considered, that its “difficult today to write any software program—be it free software or proprietary—from scratch that does not exercise the teachings of some existing software patent in the U.S.A.”

Because of these factors, we have ended up with a legal environment where hundreds of millions of dollars can turn on obscure software patents. Indeed, in the infamous case between BlackBerry maker Research In Motion and patent-holding company NTP, RIM ended up paying $612.5 million even though, at the time of the settlement, three of NTPs five patents had been given nonfinal rejections by the U.S. Patent and Trademark Office and the two others had been given final rejections.

This kind of perverse result is not unique. The 1950s fight over FM radio between its inventor, Edwin Howard Armstrong, and RCA and the even earlier battles over DC vs. AC electrical power, and their famous champions, Thomas Edison vs. Nikola Tesla, also demonstrate how patent battles have far more to do with money and control than they do with the technical virtues of the patents themselves.

This leads us to today. On the one side, you have Microsoft. On the other, you have Novell and more open-source companies and groups than you can shake a stick at.

Microsoft reopened the Linux and open-source patent can of worms when it expanded its patents claims. On May 13, Brad Smith, Microsofts general counsel, claimed in a Fortune interview that the Linux kernel violates 42 of its patents, while the Linux graphical user interfaces break another 65. In addition, the Open Office suite of programs infringes 45 more, a number of e-mail programs violate 15 others, and an assortment of free and open-source programs allegedly transgress 68 more patents.

At one time, Novell was seen by many, thanks to its patent partnership with Microsoft, as being at least partly on Microsofts side in the patent debate. Novell has always denied this. The recent publication of the bulk of the companies patent agreement seems to support Novells position. In addition, Novell and the Electronic Frontier Foundation joined forces on May 23 seeking to reform software patent law and attack patents that impose particularly heavy burdens on software developers by identifying prior art that can be used to invalidate such patents.

If this is friendly to Microsofts Linux and open-source patent position, then Microsoft needs new friends.

Microsofts patent position has also been assaulted by a variety of companies and organizations. For example, the CEO of the Open Invention Network, Jerry Rosenthal, declared: “This is not the first time that unsubstantiated claims of patent infringement have been leveled at Linux. Moreover, just as in the past, these claims are made without disclosing any evidence. Its time to stop the accusations and show the evidence. Whats happening with these accusers is the equivalent of declaring four aces while being unwilling to show even a pair of deuces.”

OIN is an intellectual property company formed to further Linux by acquiring patents, in part, to defend the operating system against just such attacks as Microsoft seemed to be proposing. With members like IBM, NEC, Novell, Philips, Red Hat, Sony, and, just this March, Oracle, OIN represents a considerable patent litigation threat to any company, even a Microsoft, that might try to take Linux to court.

Microsofts position has also been weakened by its refusal to explain how it determined that its patents were being violated. The companys patent claims are also weakened when looked at closely.

The vague claims are essentially a repeat of claims made by Microsoft CEO Steve Ballmer in 2004. Microsofts claims were repudiated then by Dan Ravicher, an attorney and executive director of PUBPAT. Ravicher said at the time, “There is no reason to believe that GNU/Linux has any greater risk of infringing patents than Windows, Unix-based or any other functionally similar operating system.” Nothing in the years since then has convinced Ravicher to change his stance.

The lawyers of the SFLC are also claiming that the Microsoft/Novell patent deal, far from casting doubt about Linuxs patent status, may actually end up hurting Microsofts patents. They claim that, between the Novell/Microsoft patent deal and Microsoft distributing Novells SLES (SUSE Linux Enterprise Server) as part of the larger Microsoft/Novell partnership, Microsofts patents will fall underneath the anti-patent GPL 3 (General Public License Version 3).

On top of this, the Supreme Court decision in early May in KSR Intl Co. v. Teleflex Inc. is believed by many experts to make it harder for software patents to stand up in court.

Given all these complications, perhaps it is no surprise that Microsoft appears to be backing off its patent lawsuit threats. Bill Hilf, Microsofts general manager of platform strategy, and Sam Ramji, head of Microsofts open-source software lab, recently blogged, “Our strategy regarding intellectual property and open source has not changed—and it is not frivolous litigation or fear.”

Microsoft has also started a public campaign against the adoption of the GPL 3. In the past, Microsoft had shown little interest in the internal details of open-source licenses.

Perhaps, as Ubuntu leader and Canonical CEO Mark Shuttleworth recently suggested, Microsoft has realized that it would not be served by a tit-for-tat patent trench war.

From where Shuttleworth sits, the real problem for both Microsoft and Linux isnt “patent trolls”—that is, companies that never produce software, but buy up software patents and then sue those who make these ideas into successful products. No, “its not the patent holders who are the problem, its the patent system.”

It is a system that has rewarded companies with both money and control in the past. It may not this time, though, be a system that will work for Microsoft. With a new, unclear software patent legal environment, thanks to the KSR decision; opposition from other major patent portfolio holders such as the OIN members; and its own complex legal situation in regard to its Novell deals, Microsoft might best be served by letting its vague patent claims lapse into silence.

A version of this story was first published in eWEEK.

May 28, 2007
by sjvn01
0 comments

Novell/Microsoft patent deal secrets

Most of the Novell/Microsoft patent deal is now out in the public. With this, the veil has been lifted in part from this controversial patent partnership.

With this unveiling we now know that there is still no proof, other than Microsoft’s flat unsupported statement, that Linux violates any of Microsoft’s patents. We also know that it appears, as Novell CEO Ron Hovsepian has said, that Novell never agreed that Linux violated Microsoft’s patents.

In the agreement, as no less a figure than Richard M. Stallman, the author of the GPL, said not long after the Novell/Microsoft patent deal became public news, “Microsoft has not given Novell a patent license, and thus, section 7 of GPL version 2 does not come into play. Instead, Microsoft offered a patent license that is rather limited to Novell’s customers alone.”

Stallman also said: “It turns out that perhaps it’s a good thing that Microsoft did this now, because we discovered that the text we had written for GPL version 3 would not have blocked this, but it’s not too late and we’re going to make sure that when GPL version 3 really comes out it will block such deals. We were already concerned about possibilities like this, namely, the possibility that a distributor might receive a patent license which did not explicitly impose limits on downstream recipients but simply failed to protect them.”

The vast majority of people who were concerned with this matter agreed with Stallman. They saw the GPLv3 as blocking any future such partnerships between Microsoft, or other proprietary software companies, and open-source software businesses.

The attorneys of the SFLC (Software Freedom Law Center) would come to see the interaction of the GPLv3 and the Novell/Microsoft patent deal in quite a different light.

Richard Fontana, counsel for the SFLC, revealed this new view when he said, “Now that Microsoft has effectively become a distributor of Linux, by distributing some 50,000 or so Novell SLES coupons, it has perhaps unwittingly restricted its ability to sue Linux users over its patents. While this is particularly clear under the forthcoming Version 3 of the GPL, the Microsoft lawyers who helped craft the MS-Novell deal appear to have overlooked the fact that, by procuring the distribution of lots of free software under GPL Version 2, among other licenses, Microsoft has already lost some of its power to assert patents against subsequent distributors and users of that software.”

In short, thanks to the Microsoft/Novell deal, Fontana argued, Microsoft had become subject to the GPLv2. Famous free software lawyer and SFLC Chairman Eben Moglen goes even farther.

In an online seminar, Moglen said that the Microsoft/Novell agreement will run afoul of the GPLv3’s “dancing with wolves provision.” The short version of Moglen’s position is that as soon as a customer gets a copy of SLES (SUSE Linux Enterprise Server) via a Microsoft SLES certificate after the GPLv3 is released, Microsoft will becomes subject to the GPLv3 and all its potential patent restrictions.

The Microsoft/Novell patent agreement reveals that Microsoft saw this threat to its patent portfolio before hand. The relevant language from Novell’s 10K reads:

“[The GPLv3] Discussion Draft 3 includes a term intended to require Microsoft to make the same patent covenants that our customers receive to all recipients of the GPLv3 software included in our products. It also includes a license condition intended to preclude companies from entering into patent arrangements such as our agreement with Microsoft by prohibiting any company that has entered into such an arrangement from distributing GPLv3 code. This license condition does not apply to arrangements entered before March 28, 2007, so as currently proposed it would not apply to our agreement with Microsoft; however, the FSF specifically indicated that this ‘grandfathering’ condition is tentative and may be dropped depending on feedback the FSF receives.”

The agreement continued, “If the final version of GPLv3 contains terms or conditions that interfere with our agreement with Microsoft or our ability to distribute GPLv3 code, Microsoft may cease to distribute SUSE Linux coupons in order to avoid the extension of its patent covenants to a broader range of GPLv3 software recipients, we may need to modify our relationship with Microsoft under less advantageous terms than our current agreement, or we may be restricted in our ability to include GPLv3 code in our products, any of which could adversely affect our business and our operating results.”

Therefore, it would seem, if the GPLv3 is passed with stronger patent language, the easiest way for Microsoft to avoid losing any of its hypothetical legal leverage with its patents would be to stop distributing the SLES certificates. That may not work, though.

Moglen argues: “The coupons have no expiration date, and Microsoft can be sure that some coupons will be turned into Novell in return for software after the effective date of GPL 3. Once that has happened, patent defenses will, under the license, have moved out into the broad community and be available to anybody who Microsoft should ever sue for infringement.”

Microsoft has not yet addressed this issue head on. This may help explain, though, why Microsoft recently released the results of a Microsoft-sponsored study that purported to show that open source developers oppose the use of the GPLv3.

In addition, Bill Hilf, Microsoft’s general manager of platform strategy and Sam Ramji , Microsoft’s head of its open-source software lab, recently blogged that “Microsoft was created by developers, for developers and is only successful through developers and customers. Developers who write Open Source software are participating in a worldwide community of practice and a spirit of collaboration. These are noble characteristics and Microsoft both applauds and supports this work.

“We continue to champion projects like JBoss, Zend (PHP), and SugarCRM, as well as Firefox, openwsman, Bandit and thousands of others. We are building relationships and a track record here and we ask that you judge us on these actions.”

While Hilf and Ramji said, “Our strategy regarding intellectual property and open source has not changed — and it is not frivolous litigation or fear,” this also can be seen as Microsoft backing away from what many saw as the Windows-powerhouse threatening Linux and open-source software with patent lawsuits.

When the Novell/Microsoft deal was first revealed, it was widely seen as an attack on Linux and open-source. As we learn more about the deal’s details, though, it appears to be more of a double-edged sword than anyone could have foreseen.

A version of this story first appeared in Linux-Watch.

May 24, 2007
by sjvn01
0 comments

Ubuntu-powered Dell desktops and notebook arrive

On May 24, the rumors and speculation came to an end. Dell officially unveiled its three consumer systems — the XPS 410n and Dimension E520n desktops, and the Inspiron E1505n notebook — that come with the Ubuntu 7.04 Linux distribution factory installed.

I predicted that Dell would release Ubuntu-powered computers from these lines. I did not see, however, that rather than offering a variety of models, albeit not the full range from each line, that Dell would be offering a single system from each line.

These three systems will be made available in the U.S. after 4:00 PM CDT on May 24 at the Dell Linux site. These systems are meant to target Linux enthusiasts. The release of these Ubuntu-powered systems is the direct result of the outpouring of customer demand at Dell’s IdeaStorm site, the company’s Web site for fielding customers’ suggestions to improve products, services, and operations.

Continue Reading →

May 18, 2007
by sjvn01
1 Comment

My Great Linux System Repair Adventure

Thunder storms in the Blue Ridge Mountains can come fast. That’s why my main Linux desktop system was still up when one, two, three lightning bolts slammed near my home. Thus began my Great Linux System Repair Adventure.

Despite no fewer than three power surge protectors, including a master power protector for the entire house, just enough of a surge hit my Insignia 300a, an older Best Buy house-brand desktop PC with a 2.8GHz Pentium IV, GB of RAM, and an Ultra ATA/100 60GB hard drive, running SLED 10 (SUSE Linux Enterprise Desktop).

At first, everything looked OK. Then I began getting odd disk errors and programs started misbehaving. So, I used that master tool of all Linux/Unix file repair, fsck, to see what was wrong with my drive.

It wasn’t pretty. There were file system errors here, errors there, errors just about everywhere. I use the ReiserFS, because I really like its speed and space performance. On the other hand, when things go badly wrong, getting the ReiserFS fsck file tree rebuild to work properly can be very tricky.

For simple file problems, ReiserFS restores the file system by replaying its transaction log journal. That’s as it should be. The whole point of a journaling file system is that you can replay disk writes when something goes wrong.

I was well beyond simple problems, though. It was time to unmount the file system — reiserfsck won’t repair mounted systems — and get serious. So, I ran the command:

    reiserfsck  -- rebuild-tree

This option forces reiserfsck to, just like it says; rebuild its b-tree map of the file system.

It was humming along, when bang, it stopped. OK, this can happen. Maybe there’s a bad block. The simple-minded way to find out, without reaching for another tool, is to simply try the command again. If it breaks at the same spot, I’ve got bad blocks, actual sectors of the hard drive that can’t hold data reliably.

If that’s the case, I’d run:

    /sbin/badblocks [-b (reiserfs-block-size)] device

to get a list of bad blocks that reiserfsck can understand. After that, I’d run dd_rescue to create a backup of the file system without the bad blocks. Yes, you can try this with other tools — dd comes to mind immediately — but dd_rescue, unlike dd, doesn’t abort on errors. I could program around that, but dd_rescue does such a good job; so, why bother?

Unfortunately, reiserfsck blew up at a new location… farther along in the rebuilding. OK, so it wasn’t a bad block. This required some thought.

I decided to boot the system back up and see what the system looked like from my KDE 3.5 interface. From there, I planned on backing up my system, which I hadn’t done in a week, with KDar, the KDE disk archiver to a DVD-R. Unfortunately, I didn’t make it that far.

The system got about halfway to the desktop when the boot process failed. OK, now I was getting ticked. It was time to return to single user mode and the command line.

It was also time to get hard-core serious about this misbehaving drive. This time I ran:

    reiserfsck  -- rebuild-tree -S

This forces the b-tree to be rebuilt from any part of the directory and file system or b-tree leaves that may be lying anywhere on the partition. Unless you really — I mean really — know how file systems work, don’t try this home. Go to a friend’s house. It will be much safer there.

No, don’t. That was meant to be funny. Don’t try this anywhere, unless you really know what you’re doing.

Believe it or not, I do know file system internals so I ran it… and I got most of the way through when the process stopped and I got the message:

    The problem has occurred looks like a hardware problem (perhaps memory).

Oh no. Could the memory also be sour? The hard drive was fouled up, no question about that, but remember, I’d also seen strange problems with applications. That, I now remembered, is often a sign of bad memory.

I ran the command again. Yes, there was the same error message, but at a different point in the repair process. This was looking more and more like I actually had two problems.

So, I got up, turned off the system, and went to have lunch. When I came back, I turned the PC back on… and it wouldn’t boot at all.

This was turning into a really bad day.

So, now I pulled out my freshly burned copy of SystemRescueCd 0.35. SystemRescueCd, if you’ve never met it, is the best single CD bootable system repair disk I know.

This special purpose Linux distribution is based on the 2.6.20.7 Linux kernel. It includes:

  • GParted, a top-notch partition manager
  • PartImage, a great drive/partition imager tool
  • NTFS3 an open-source program that enables you to mount and read and write to a Windows NTFS

…and a host of file system repair tools and drivers. It also includes — and for me this is the cherry on top of the Sundae — network file tools like Samba and NFS. With those, you can send files from a near-dead machine to a network server for safe keeping.

So, I popped in SystemRescueCD, and, with its small memory footprint of 128MB, it appeared to load fine. This time I ran reiserfsck from SystemRescueCD and… it failed with a memory error, again. This time, at least, it almost completed the run.

OK, it was time to play with the hardware. When memory is going bad, you can sometimes keep it going for a while longer by slowing it down.

Normally, people only play with memory settings when they’re trying to turbo-charge a gaming system or the like. The same techniques, applied in reverse, can sometimes get some useful life from sick systems like mine.

Now, playing tricks with RAM is a subject unto itself. For more on that subject, visit sites like Extreme Tech and Tom’s Hardware and look for stories on overclocking.

I was going the other way; I was going to “underclock” my system’s memory. To do this, I went to my PC’s advanced BIOS section. For my purposes, I started with slowing down the CAS (column address strobe) latency. This setting determines how many clock cycles the system waits before issuing a CAS signal and outputting data from the memory chip. A higher value means more waiting, therefore a slower computer, and a bit more memory reliability.

After setting this up, I rebooted again with SystemRescueCD, ran reiserfsck with all the trimmings, and this time it worked. I once more had a viable file system.

Now, my problem was how to get the important files out of there before something else went wrong. Trying to repair the system was a task for another day. Today, I just wanted my files safe, snug and well away from that machine.

My new problem, though, was that my important files, in /home/sjvn, came to a whopping 22 gigabytes. Yes, I’m a file and email packrat.

22 gigabytes is way too much for burning to a DVD or a USB stick. For the first time, I found myself wishing for a Blu Ray disc burner on a PC. Even over my 100Mbps Fast Ethernet connection, I really didn’t want to waste time sending all that data.

The solution was clearly to compress my files down and put them into a more conveniently sized archive for shipping across the network. Linux is full of tools to do that, but tar, that old faithful, was the first program that came to mind.

So, I mounted the repaired partition, headed over to the /home/sjvn, and zapped a lot of junk files with “rm.” Then I hopped back up to the /home directory and ran:

    tar cvzf sjvn/sjvnhomedir.tar.gz sjvn

This created the compressed archive “sjvnhomedir.tar.gz” in /home/sjvn. The tar options were the basics: “c” for create; “v” for verbose (I wanted to know what was going on); “z” for compress files with gzip; and “f” to give the archive its name.

Now, I was left with only one final step: getting my important files, now zipped up in “sjvnhomedir.tar.gz,” to a healthy computer. I decided once more to go with easy, over other alternatives.

This time, that meant setting up an SSH (secure shell) server on the sick machine. To do this, I had to give the machine a root password; anything will do. Then, log in with it and run:

    /etc/init.d/sshd start

That starts up the SSH server. And that was the last thing I had to do on that system.

I then moved to another Linux system. In my case, that just mean I used my IOGEAR KVM (keyboard, video, and mouse) switch to click over to the MEPIS 6.5 system sitting right next to the sick SLED 10 box.

Once logged in on the MEPIS PC, I logged into the SLED system’s SSH server as root, and moved to the /home/sjvn directory. Once there, I used scp (secure copy) to copy sjvnhomedir.tar.gz to my MEPIS system, like so:

    scp sjvnhomedir.tar.gz sjvn@MEPIS:

At long last, I was done. I had my files safely stored away.

Today, the sick PC is back to working, albeit at a slower speed. I don’t trust it as a front-line system, so I replaced it with an HP Pavilion a6040n. That PC is now my main SLED system. On it, safe and sound, is every file I rescued from the sick computer.

My point in telling you of my misadventure is that, with a little knowledge and Linux tools, which SystemRescueCD brings together for you, you can save your files even from apparently hopeless situations.

Oh, and a final note: SystemRescueCD can also work the same magic on your Windows systems. I can’t recommend this mini-distribution enough for anyone who might face repairing any Unix, Linux, or Windows-based computer.

May 14, 2007
by sjvn01
0 comments

Microsoft reignites its war on Linux

Microsoft CEO Steve Ballmer on May 14 claimed that “Linux violates over 228 patents. Someday, for all countries that are entering WTO [the World Trade Organization], somebody will come and look for money to pay for the patent rights for that intellectual property.”

With that comment, Microsoft declared war against Linux and open source yesterday… Oh wait. My mistake, Ballmer made that attack in November 2004.

What Microsoft did yesterday, in an interview with Fortune, was to have Brad Smith, Microsoft’s general counsel, reiterate and elaborate those tired old claims. This time around, Microsoft claims that the Linux kernel violates 42 of its patents, while the Linux graphical user interfaces break another 65. In addition, the Open Office suite of programs infringes 45 more, an assortment of email programs violate 15 others, and an assortment of free and open-source programs allegedly transgress 68 more patents.

In a statement obtained by eWEEK, Microsoft’s vice president of intellectual property and licensing, Horacio Gutierrez claims that “Even the founder of the Free Software Foundation, Richard Stallman, noted last year that Linux infringes well over 200 patents from multiple companies The real question is not whether there exist substantial patent infringement issues, but what to do about them.”

How are these programs violating the patents? Heck, which patents are being violated? We don’t know. Microsoft isn’t saying.

Gosh, vague threatening IP (intellectual property) claims without any facts.

Where have we heard that before? Could it be from early days of the long discredited claims against Linux by SCO? Claims that have fallen from grandiose heights to 326 unimportant lines of code?

If we look closer at Microsoft’s claims, we see that we don’t need a court to dismiss them. Take a hard look, for example, at Stallman’s comment. He was referring to that same 2004 study I talked about at the start. The same study, where the author, Dan Ravicher, an attorney and executive director of PUBPAT (the Public Patent Foundation), told me at the time, “Microsoft is up to its usual FUD [fear, uncertainty and doubt].”

Ravicher’s point: Under today’s cockamamie patent law, “the number we found, to anyone familiar with this issue, is so average as to be boring; almost any piece of software potentially infringes at least that many patents.” He continued, “The point of the study was actually to eliminate the FUD about Linux’s alleged legal problems by attaching a quantifiable measure versus the speculation.”

So, while Microsoft’s latest claims may sound terrible to the layman, any attorney worth his or her salt will know that these are old and basically bogus statements. So, why is Microsoft trotting them back out again?

I believe it serves two purposes. One is to spread more FUD about Linux and open-source. For the first time, a major computer vendor, Dell, has committed to a consumer desktop Linux. More states, like California, are considering making laws that require the use of the ODF (Open Document Format). From Microsoft’s point of view, it was time to get people worried about open-source again.

The other purpose is to try to get leverage against the upcoming GNU GPLv3 (General Public License, version 3). The latest draft includes patent language that will make it much harder to make patent deals, such as the November 2006 Microsoft and Novell partnership.

Why should Microsoft care? Because, Microsoft, by distributing SLES (SUSE Linux Enterprise Server) certificates to customers such as Dell, as part of the Novell/Microsoft partnership, may have just placed any IP they might or might not have in Linux, under the GPL.

No, that’s not just open-source fanboy talk. Prominent open-source lawyers, like Eben Moglen, the executive director of the Software Freedom Law Center, believe that by distributing the SLES certificates, Microsoft has become a Linux distributor, and therefore subject to the GPL.

For Microsoft, being subject to the GPL in any way, shape, or form would be a nightmare scenario. If they can get some leverage in their fight to get away from the GPL by getting people frightened of open source, they will.

A version of this story first appeared in Linux-Watch.

May 9, 2007
by sjvn01
0 comments

Red Hat shows its Global Desktop Cards

Red Hat Inc. on May 9 announced the availability of a new client product, Red Hat Global Desktop, at its annual Red Hat Summit tradeshow in San Diego. This desktop aims to deliver a modern user experience with an enterprise-class suite of productivity applications.

Red Hat CTO Brian Stevens stated, “Users, requirements and technologies have changed so dramatically over the past few years that the traditional one-size-fits-all desktop paradigm is simply exhausted.”

“Commercial customers are still begging for desktop security and manageability for their knowledge workers; consumers are rapidly adopting new online services and applications; and developing nations are looking for affordable information technologies that bypass traditional desktops entirely. Our strategy is to deliver technologies that are specifically appropriate to these varied constituents,” Stevens continued.

Continue Reading →