For the half-year to 30 June 2014, the IPKat's regular team is supplemented by contributions from guest bloggers Alberto Bellan, Darren Meale and Nadia Zegze.

Two of our regular Kats are currently on blogging sabbaticals. They are David Brophy and Catherine Lee.

Tuesday, 4 May 2010

Removable Features of Operating Systems

The IPKat is no expert when it comes to the software industry but, like many IP enthusiasts, he tries to keep up with the major issues and thought-trends as and when they crop up. One of the issues he has pondered about from time to time is the sometimes hostile, sometimes constructive tensions that exist between the business models that drive proprietary software and open source, as well as the continuing dialogue between the supporters of each. Bearing this in mind, the Kat is pleased to be running, over the next few weeks and starting today, a series of four short pieces by his friend Keith Braithwaite, which he hopes will do two things. One is to seek to pinpoint the most significant issues as viewed from the industry side rather than from that of the academics and lawyers in whose company this Kat is most comfortable. The other is to place these issues within some sort of temporal continuum where that is possible. And here's the first of them:

Removable Features of Operating Systems

Prologue


It is long established that intellectual property law applies to computer software. Source code written by programmers is subject to copyright and, where programmers are employees, the copyright is almost always assigned to their employer. The processes and techniques embodied in that source code may be further protected by patents. Individual programmers or, as is more common these days, teams of programmers invent technical solutions to problems, and those solutions may be protected by patents. Again, a patent will usually be assigned to the employer, if any, of the inventor, but sometimes to some other organization.

The fact that this is possible is a source of controversy. The Free and Open Source Software community embraces strong copyright protection of programs—that is how Open Source (OS) licences gain their legitimacy and strength—but they have set their faces against patent protection.

The field is complex and fraught. In some cases it is not clear even from the statements of any given patent office whether it even grants software patents or recognises the possibility of patenting an invention realised as software. Various precedents have been set for the patent-eligibility of software, and various policies expounded, which differ between jurisdictions.

Notwithstanding all this confusion, substantial portfolios of software patents exist. All major (and a great many minor) software vendors have a lengthy list of patents and often agree to cross-license items from each other’s portfolios. Other vendors and even their customers can find themselves in court for infringing patents.

The question of whether software patents are possible, valid or desirable is often discussed in lofty, abstract terms. However, the actions that arise through IP infringement and attempts to avoid it in software development can have very concrete outcomes for the users of software systems. This series of four posts explores some aspects of that impact.

First, we examine the impact of removing a feature from software. In many cases where patent infringement is claimed this is the “obvious” course of action for the infringer but as we shall see, it is not necessarily the best option from the user’s point of view.

What is a removable feature?

The operating systems of computers and intelligent devices (eg mobile phones, set-top boxes, satellite navigation systems and even dishwashers) are complex pieces of software. Yet the end user is often hardly aware that they exist—until something goes wrong.

Functions of the operating system include the management of system resources, such as memory, and storage, providing graphical displays, handling input devices and networks and any other generic features of the system, which may be used by every application and not specifically for any particular one.

Because of their inherent complexity, modern operating systems are highly modular. Particular modules can be included or excluded as required (for example, support for a particular model of printer or DVD drive).

Vendors facing patent infringement claims sometimes react by removing the offending feature or replacing it with a near equivalent that is unencumbered by IPR. In the case of OS software, in theory any user of the software can remove a patented feature and recompile the software. In practice there are considerable obstacles to doing that.

The operation of removing a patented feature requires considerable expertise, comprehensive and accurate documentation, potentially a lot of time and the appropriate software tools. Even if that can be arranged it may be that, without the patented feature, the software is next to useless.

Software users do not escape liability to pay damages for past infringements simply because they no longer use the infringing technology and, if any other patents cover its remaining features, the act of recompiling the code without the original feature may cause further infringement.

Intellectual property and removable features

So, removing features doesn’t necessarily avoid liability. It can also be disastrous for the user. Imagine you've bought a new flat-screen TV with a memory-card slot. Eager to display your digital photos as an instant slide show, you insert a card from your camera. But instead of a slide show, all you see is an error message! Your TV helpfully offers to repair your card. That doesn’t help, so you move the card to your PC to see what might be the problem. You discover that all your carefully applied captions have been replaced with meaningless filenames. What has happened?

This can easily happen if your memory card happens to use a FAT file system which dates back to pre-Windows MS-DOS days, to organise its storage, but the manufacturer of your TV has chosen not to take a license to the patented “long filenames” feature for FAT. In February 2009 it emerged that the Linux kernel (which, in this example, we imagine is the operating system on your TV) infringed a number of Microsoft patents. One of these concerned the way in which FAT can be used to support long filenames while maintaining the short filenames for older version of the operating system.

Satellite navigation seller TomTom agreed to remove exactly this infringing technology from its devices. This implied a change to the Linux kernel to avoid infringement. The Linux community, ever keen to demonstrate the ability of OS projects to “code around” problems like this, set to work to replace the offending module. The new module is designed to support short (“8.3”) filenames or long, but not both at the same time. Setting aside the question of whether this change in fact addresses the patent infringement, this change potentially renders the resulting file system incompatible with older software that recognises only short names or newer software written to use the patented functionality. So the new, non-infringing system does not have exactly the same functionality as the infringing version.

There are many other examples of technology that could turn out to have IP issues at any time, if their developers have not been careful, conscientious or fortunate enough not to have got caught. Because they relate not to “what” a system does, but to “how” it does it, they can be invisible to users. Let’s take a couple of examples and see what impact any potential IP issues with them might have.

Hibernation

When you shut down your PC or laptop, Windows lets you choose between a complete shutdown, hibernation or sleep. From the user’s point of view, the main difference between them is the speed with which the machine will start up again.

Linux distributors are in no doubt about the value of the hibernation feature to users. Some have begun to support at least the equivalent of hibernationbut getting that to work reliably is probably still beyond the capability of the average user. Even when it works, users may find that their wireless network is inactive after resuming after suspension. This lack of reliability is thought to be at least partly due to device drivers developed without the support of the relevant hardware manufacturers. This is a problem that has been solved very well by the proprietary operating systems, but those solutions have been rejected by the Linux developers.

Power management

Because of the importance of extending battery life, notebook and laptop computers have been designed for many years with power-saving hardware features. The processor can be slowed when it doesn’t have a lot to do, while unused parts of the system can be turned off. A standard (the Advanced Configuration and Power Interface specification–ACPI) was released in 1996 to provide operating systems with full control over the hardware to do this.

Linux distributions have been slow to take advantage of hardware power management features, in particular ACPI. This may be connected with the fact that the specification is complex and not easy to implement. Yet it is clear that there is a great need for it. According to some calculations, Linux-related carbon emissions currently total around five million tons annually–0.1% of the estimated amount of carbon added to the atmosphere each year by human activities.

In response to this need, the number of Linux-based “green” initiatives is growing rapidly. But optimistic press announcements cannot disguise the fact that there is still a long way to go in improving the integration between hardware, software and network management. For example, a Network World investigation in mid-2008 revealed that neither Red Hat nor SUSE distributions were able to exploit the ACPI features of the servers tested.

When it comes to saving the planet, should the potential cost of IP licences be allowed to stand in the way of progress?

10 comments:

Anonymous said...

Interestingly, and probably not coincidentally, the German Federal Court of Justice recently overturned the decision of the Patent Court which revoked the German part of Microsoft's EP patent 618 540 relating to FAT. The full written decision is not yet available but in the press release it was indicated that the BGH was of the opinion, after receiving expert advice, that the BPatG had misunderstood the claim.

EdT

Gentoo said...

I was unclear as to the purpose of this article - was it about removable features of operating systems or a description of the author's opinion of the deficiencies of Linux? Leaving aside the importance of freedom, I wonder if the author has refreshed his knowledge recently?

For example I do not know where the author got his description of the solution to the Tom-Tom problem (VFAT) but it clearly wasn't from the horse's mouth. The actual solution is described here:

http://lkml.org/lkml/2009/6/26/313

with an FAQ here

http://lkml.org/lkml/2009/6/26/314

and here's a quote from FAQ A8: "...this new patch allows all the filenames allowed by the VFAT format."

The article discussing power management referenced by the author (why the particular quote was selected was unclear to me) is well worth a read, as it shows how top to bottom, FLOSS is working to reduce the computing carbon footprint.

It was unfortunate then that the discussion of ACPI was so out of date. In addition to the initiatives described in the article (and fortunately invisible to the end user), here is the core project

http://www.lesswatts.org/index.php

The author asserts "getting [hibernation] to work reliably is probably still beyond the capability of the average user. Even when it works, users may find that their wireless network is inactive after resuming after suspension"

While the statement could be criticised on many grounds, the one I prefer is "evidence to the contrary"

There is no doubt that FLOSS distros have the open ended problem that there is no pre-knowledge of the hardware to be used. However whenever manufacturers release with a Linux based distro everything works out of the box, my trusty Acer Aspire One (AAO) for example.

Moreover, unlike the use and upgrade by throwing away culture of proprietary software, there is a continual desire to "reduce, re-use, recycle" by ensuring that all improvements in the software apply to all versions of any hardware. Another discussion could be about the carbon footprint of the landfill of perfectly usable hardware, (but only if you install FLOSS). Everything continually gets better and easier.

The FLOSS model has only ever been about free as in speech not free as in beer, so, as with changing a washer in your tap, you might choose to do it yourself or pay to have a plumber do it.

Similarly when you discover your otherwise more than adequate hardware in no longer supported by your favourite "pay once then pay again and again" software company, you might choose to see how difficult it actually is to install a distro (there's lots of help out there, e.g.,
http://www.linuxnewbieguide.org/ or http://www.thinkwiki.org/wiki/ThinkWiki) or you could pay to have someone set you going.

I was also curious as to why the author picked "Mid-2008" in his closing peroration, as for example "Linpus" on my AAO is based on Red Hat. More generally, "mid 2008" is a long time ago in FLOSS terms: the openSUSE distro has released three versions, Fedora (Red Hat) four, since then. The 2.6 series Linux has changed from version 25 to version 34 with many many changes relating to power management including the "tickless kernel" (don't ask unless you really want answer)

My answer to the closing question posed is that it is moot.

TJ said...

I got rather lost somewhere near the middle of this post. It starts off looking at removable software features, but ends with whether patents are destroying the planet. I didn't follow the transition.

pjakma said...

It is long established that intellectual property law applies to computer software.

Uh, this and the following discussion on patent law applicability seems odd. What about the blog posts here on IPKat about the Symbian patent case? The IPOs own guidance? Since when is 2 years "long"? Indeed, isn't there still an EPO review to be made (what's the status of that)? Also, on the other side of pond, there is the recent Bilski case on which a ruling is awaited?

So it's maybe not correct to say that it is well established that patents apply to software, if the author meant that. They acknowledge later in the piece there is confusion, but then why lead with such a strong assertion?

Also, a lot of the problems the author assumes are common with power management are now much improved. Suspend/resume has gotten quite reliable on hardware I own in the last few years.

With regard to ACPI, the people who wrote and maintain the Linux ACPI implementation are Intel - the same people who designed ACPI. The ACPI implementation is even shared with other OSes. The problems often are with the ACPI implementation but with the *BIOS* data supplied with hardware by manufacturers - where it's wrong and not well-formed by the ACPI spec, but it just happens to work out with Windows. Windows being all that manufacturers ever fully test and will spend effort in fixing their own bugs for.

I.e. a lot of the work done was/is implementing compatibility with *bugs* made by the *manufacturer* in the *hardware*.

Still, it's nice to see articles that try to straddle the technology and patent/copyright law worlds, particularly with regard to Free Software. Thanks! ;)

Anonymous said...

I agree with the other commenters, a rather confused article.

Historically a bit suspect, for example, the FSF was originally strongly against copyright as the law had developed (which is why they advocated copyleft).

Also, the article starts off on removable features, but somehow gets onto Linux having poor support for power conservations. Whether or not this is technically accurate (see other commenters), there is no suggestion that Linux did have this feature, but it has since been removed (so how does this relate to the earlier stuff in the article?). There is also no explanation why Linux does not have good power-saving facilities - maybe this has nothing to do with IP at all.

So there is a complete disconnect to the final sentence, about the potential cost of IP licencees being a barrier to saving the plaent.

Incidentally, I think that you'll find that the Nordic countries, very good on Linux and open source, have also filed a very large number of patents on wind turbines, etc (which they are also very good at) - another barrier to saving the planet?

MaxDrei said...

First in the thread, EdT drops the startling remark that the BGH (Supreme Court in Germany) thinks that the BPatG (Germany's Federal Patents Court) misunderstood the claim. I say startling because the BPatG judges are so-called "technical" judges, who ought to be far better at grasping abstruse technical features than the supreme court judges. This case is hot on the heels of the olanzapine case, where the District Court in Duesseldorf, handling infringement, was so sure that the BPatG had got validity wrong that, notwithstanding the BPatG's having found the asserted claims to be inalid, the judge in Duesseldorf still enjoined the infringer.

No wonder everybody appeals BPatG judgements to the BGH. No wonder they then wait 5 years in the queue. Question to EdT: is the relationship in Germany between the BPatG and the BGH in any way like that in the USA, between the Federal Circuit and SCOTUS?

Marko Loparic said...

The question of whether software patents are possible, valid or desirable.

I am glad to see the cat putting the debate in this terms. As someone with computer science degree, I've found it painful to see (in other posts) bright and open-minded legists defending something that in my proximity is so clearly seen as contrary to the public interest.

I would like to observe that -- though perhaps the open source advocates are the most noted opponents of software patents -- software patents are also very harmful for propietary software as well. Indeed many companies (mostly small and medium) are actively involved in the fight against them. A google search gives me this

http://www.economic-majority.com/testimony/index.en.php

Many companies appearing there actually develop 100% proprietary software.

Thanks a lot for the informative and cheerful blog!
Marko

Anonymous said...

Further to the earlier poster, I looked at:

http://www.economic-majority.com/testimony/index.en.php

Based on the figures from the web site, the "economic majority" appears to speak for approx 1% of the software industry.

Even the two main UK political parties would be embarrassed by that definition of "majority"!

(Sorry to drag politics into this, but hey, we are having an election today in the UK)

Anonymous said...

LOL. Have you not read the meego agreement.

MS will have to price talk about FAT patent with Nokia and Intel for all of meego. Yes every device maker to use Meego and every distribution with a Meego core. If not cheep enough face a possible all out patent war with Nokia and Intel. Sorry both have the patents to nuke MS out of existance. Same with any other possible patent attacker.

The IP use against Linux is already lost. Meego is an distribution built to Linux standard base specs and directly run by the Linux foundation. All that is left with these IP threats against Linux is the kicking and screaming.

Marko Loparic said...

Dear anonymous,

I hope that by noticing that "1% of the software industry" appears in a campaign against software patents, you do not conclude that 99% is for it.

Would a petition against war signed by 500 thousand UK citizens mean that 99% of the UK population approve going to war?

Cheers,
Marko

Subscribe to the IPKat's posts by email here

Just pop your email address into the box and click 'Subscribe':