Correction 8:40 a.m. PDT Sept. 19: Google didn't disassemble Vista to employ the security feature described below. See this separate blog post for details.
During Google's launch of its Chrome Web browser, the company went out of its way to acknowledge the debt it owes two open-source projects, Firefox and WebKit. But Microsoft, an uncommon ally in the open-source realm, might also deserve a tip of the hat.
After some digging through the Chrome source code, Scott Hanselman, a senior programming manager for Microsoft, found that the browser uses an open-source Microsoft project called the Windows Template Library, software for building a Windows user interface. (It uses an abstraction layer so other interface software can be employed on other operating systems.)
Microsoft's WTL project is available on SourceForge.net, a repository of open-source projects.
(Credit: SourceForge.net)On its open-source Chromium site, Google lists WTL 8.0 as included third-party software.
Microsoft, while keeping its crown jewels proprietary, has been lurking around the fringes of the open-source realm for years now. Open-source software may be moved freely from one project to another; though license particulars sometimes erect barriers, both Chrome and WTL use relatively liberal licenses.
There's a bit more intrigue with some other Microsoft technology, though. For security technology called Data Execution Prevention, which can help block various forms of attacks, Google also apparently used an undocumented interface from Microsoft to get the feature working in Windows XP SP2.
Microsoft's Arun Kishan said the interface is "undocumented and unsupported" and "initially only intended for our own use" on a Microsoft forum posting. Using such APIs (application programming interfaces) can get software into trouble, because operating system companies offer no guarantees future software will support them, so upgrades can break compatibility.
And in describing how to use the security feature, Google said people could disassemble the Windows Vista's underlying source code--in other words, extract the operating system's low-level instructions from the Vista binary. Disassembly is one form of reverse-engineering.
Google spotlighted the technology in a comment in the Chrome source code: "Completely undocumented from Microsoft. You can find this information by disassembling Vista's SP1 kernel32.dll with your favorite disassembler."
The software takes the high road if possible, according to another comment: "Try documented ways first. Only available on Vista SP1 and Windows 2008."
Google didn't immediately comment on the move.
Matt Asay, a Mac user and an executive at open-source firm Alfresco, pines for a Mac version of Chrome, suggesting that leading off with Windows may have been a "strategic error" even if the Windows Template Library made it easier to get the Windows version out first. "It might make sense to aim for the mainstream (i.e., corporate IT, which would get the most benefit from an JavaScript-optimized Web browser), but the mainstream isn't in the habit of trying out the latest and greatest," Asay said.
Google's not dumb, though: there are plenty of programmers and early adopters using Windows, even if the cutting-edge crowd might be proportionally larger with Mac OS X or Linux. Besides, making headway in today's browser wars will take more than a few months and one beta version, and the Mac OS X and Linux versions of Chrome are under development.
(Via Redmond Developer News.)
Microsoft, one of the biggest rivals to open-source programming, has begun funding the Apache Software Foundation, one of open-source software's biggest supporters.
"Microsoft is becoming a sponsor of the Apache Software Foundation. This sponsorship will enable the ASF to pay administrators and other support staff so that ASF developers can focus on writing great software," said Sam Ramji, a senior director of platform strategy at Microsoft. He announced the move Friday in a speech at the Open Source Convention, and noted Microsoft's support of Apache on the software company's Port 25 blog as well.
Apache still leads Microsoft for Web server software market share. But the Apache Software Foundation has many more projects than just that early leader.
(Credit: NetCraft)Obviously you might think this an opportune moment to cue up the soundtracks of record needles screeching and cars crashing into each other. But hold your horses.
For one thing, some within Microsoft have for years been making various encouraging words about open-source software, even though others have engaged in serious trash-talking. The company has no apparent desire to let the programming world have its way with Windows, as is possible with Linux, but Microsoft has been trying to make nice in some circles.
Playing nice with open source
For example, Microsoft has released its own open-source licenses and has put some technology under its Open Specification Promise, which lets open-source programmers use it. Also on Friday, Ramji said that policy makes it clear the promise applies to commercial uses of the technology, too.
Another example: Microsoft has been working closely with Zend for Windows support of PHP, an open-source project that lets servers create Web pages on the fly.
PHP is often used in conjunction with other open-source components: Linux, the Apache Web server software that's used to dish up Web pages, and the MySQL database that's used to store the data used to build Web pages elements such as online catalog pages or online forum postings. In fact, the four are used often enough that there's an acronym for it: LAMP.
But there's also the idea of WISP, which substitutes many of Microsoft's own components: Windows, Internet Information Services for a Web server, and SQL Server for the database. On Friday, Microsoft released a patch to ADOdb, a package PHP uses to access databases. The patch lets PHP use SQL Server.
In other words, some parts of Microsoft are learning how to play nice with some parts of the open-source world.
Apache's liberal license
Second is the Apache License that governs the foundation's projects. Many of Microsoft's attacks on open-source software were aimed at the General Public License, which has a reciprocity provision: If you make a change to a GPL project, then distribute software employing that change, you must share the change under the GPL.
The Apache License, though, lets programmers take software and combine it with proprietary software in any way, with no obligation to share. That's how IBM, for example, uses the Apache Web server software in its proprietary WebSphere product.
For Microsoft, that means Apache's projects can be used within Microsoft. And there are some that could be of interest.
Apache: Useful projects
Third is what the Apache Software Foundation is up to.
When it began, Apache didn't have too many projects under its umbrella besides the HTTP Web server that has surpassed Microsoft's competing products in market share since at least 1995, according to Netcraft's Web server survey.
Now Apache has dozens of projects.
Here's one that Microsoft, given its so-far fruitless efforts to catch up to Google in search, might enjoy: Hadoop, an open-source version of Google's MapReduce algorithm that's instrumental to processing huge data sets. Yahoo contributes to Hadoop and uses it in its own operations.
There's nothing stopping Microsoft from using Hadoop or any other Apache project without funding Apache, but sponsorship makes some sense for political and practical reasons.
- prev
- 1
- next




