(See Lineo's response here.)
In the white paper, first published without fanfare on Microsoft's Web site at the end of November, the software giant criticized embedded Linux's driver support, the licensing costs from major distributors like Red Hat and Lineo and their customer service models, and even suggested that the companies might not be around much longer to continue to support their products.
(Red Hat responded to the white paper last week.)
Linux is considered one of the only operating systems that could pose significant competition to Microsoft's Windows desktop monopoly, and in the past Microsoft has gone out of its way to stigmatize the open-source operating system. The fight is now moving to the embedded market too, where Microsoft's embedded operating systems control only a small part of the market. Open source means that the software must be freely distributed to developers, with most distributors making their profits from developer tools or customer support.
But many of the criticisms amount to no more than saying "Linux is different from Windows," according to Lineo. For example, Microsoft notes that "from a list of over 300 network card drivers available for Linux, Red Hat's v7.1 Hardware Compatibility List (HCL) currently indicates support for only two 'Red Hat Ready' drivers and only 27 'compatible' drivers.'"
Lineo asserts that the figures are meaningless. "I can't believe Microsoft doesn't understand that in the embedded world, support for discrete network cards is generally not required. Instead, networking hardware is generally provided directly on board (rather than via a separate network card," said Dave Beal, Lineo senior product manager for tools and OSes, in Lineo's response.
Microsoft repeatedly attacks the pricing model for embedded Linux, which generally charges based on what developers want to use, as opposed to Microsoft's flat-rate policy, which, Lineo asserts, charges developers even for features they don't need. "Their parameter seems to be that they have one price for all IP in the XP environment. If you prefer to have one price up front to cover all IP options we have, we'll certainly be glad to provide one. Of course, like Microsoft's, our one price will charge you for not only what you use, but what you don't use," said Mark Heilpern, a Lineo field application engineer.
Some of Microsoft's assertions distort the way Linux works, according to Lineo. For example, Microsoft says that embedded Linux "offers nothing comparable to Windows XP Embedded's driver signing functionality," a process by which Microsoft certifies that drivers are bug-free.
But this is simply a difference between proprietary software like Microsoft's and open-source software like that in the Linux world, Lineo says. "Linux, unlike a closed operating system, does not need to provide a list of certified drivers. Why? Because with Linux, the source code is open, allowing anyone (you, me, your development team) to fully test and validate the driver in a specific application space," said Beal. "No one has to take the word of a vendor regarding the stability or suitability of their software for a potentially mission-critical application."
Other arguments are factually wrong, according to Lineo. Microsoft states that Lineo's software development kit supports "only four preconfigurations," compared with greater flexibility from Microsoft, and that it supports only PowerPC and x86 processors. However, Lineo now says it supports most embedded chips and that there are several preconfigurations for each chip.
Lineo takes particular issue with Microsoft's claims to better security and an easier model for dealing with intellectual property.
Microsoft asserts that it has teams devoted to patching security holes, whereas Linux relies on the open source community for bug fixes, as though the open source model posed a risk. However, "the reality of Open Source software and the 'many eyes' theory is realised by comparing the track record of security reports for Microsoft OSes and Linux," said Lineo Chief Technology Officer Tim Bird.
Lineo's Beal said that Linux allows developers to immediately fix bugs, since they have access to the source code. "When compared with the alternative--that is, contacting the device manufacturer or Microsoft, entering a bug report, contracting with Microsoft for a bug patch (among the potentially hundreds of others submitted) and finally waiting for that patch to be delivered, the advantages of Linux are clear," he said.
Microsoft claims that Linux can pose a risk for developers because its software often uses the GNU Public Licence, which requres that any software using GPL-protected code must be freely released itself to the public under the GPL.
"Pretending that this is a situation unique to open source development is one of Microsoft's worst lies," said Bird. "Doing ANY software engineering work requires responsible engineering practices and some oversight to avoid copying or utilising unfairly the work of others, or infringing on another party's intellectual property."