Google's Chrome Browser Contains Microsoft Code

The newly released Google Chrome Web browser beta is a completely open source solution and a potential challenger to Microsoft's proprietary-code Internet Explorer browser, but Microsoft's Senior Program Manager Scott Hanselman found a little bit of irony in Google's browser as well.

Hanselman looked at Chrome's source code and made an interesting discovery: there's Microsoft code in it!

It turns out that Chrome uses Microsoft's Windows Template Library (WTL), which was released as open source code in May of 2004. Hanselman documented the finding in his blog post on Thursday.

Hanselman described the usefulness of the WTL, citing author Simon Steele, who wrote that the WTL can "produce small executables that do not require the MFC [Microsoft Foundation Classes] run time libraries...leading to really small programs, which run fast too."

Microsoft let the WTL pass into open source about four years ago. It apparently was one of the first such projects to go that route, according to Hanselman's account. Still, Microsoft execs back then were leery about "the business value" of open source software. The WTL's release was a rarity.

Hanselman provided further code analysis of Chrome. He noted that the Google team, in creating the Chrome browser, used an unsupported security technique with WTL as a workaround. They wanted to turn on Data Execution Prevention in Windows XP SP2 and Windows Server 2003 SP1. To do so, they may have done a little reverse engineering.

"Looks like The Chromium authors may have disassembled part of the Windows Kernel in order to achieve this security feature under Windows XP SP2," Hanselman wrote. While that was wrong, they did it in the interest of security, he added.

Google's Chrome browser uses open source code from a variety of sources. It's built on the open source WebKit browser engine that Apple uses in its Safari browser. Google also made use of Mozilla's open source Firefox browser, particularly with tabbing, it seems. Google's multiprocess architecture adds some additional security to isolate processes running in tabs from the rest of the browser, which helps avoid crashes.

Google's view in going open source with its browser is that anything that helps the Web helps Google. The company makes its billions out of search advertising, rather than applications. They also want people to contribute to the browser's development -- a community development approach that has greatly benefitted the Firefox browser.

Microsoft, by contrast, has made just a few baby steps in the direction of open source. Its most free license, the Microsoft Public License (MS-Pl), allows for code sharing. Otherwise, the company typically charges royalties for code use. In a major step in February, Microsoft opened up API code documentation for many of its core products to better enable interoperability with other vendors' software.

"Google gets it, and Microsoft doesn't," said one person commenting on open source software at Hanselman's blog. In reply, Hanselman suggested that Microsoft is taking a different direction now.

"Believe me, there are lots of people inside Microsoft who's [sic] knee-jerk reaction is to release code as Open Source," Hanselman wrote. "That's their *first* reaction, myself included. It's happening, give it time."

About the Author

Kurt Mackie is senior news producer for 1105 Media's Converge360 group.


  • Phishing Tops Concerns in Microsoft Study of Remote Work

    Potential phishing attacks were a top concern of most IT security professionals when organizations switched to remote-work conditions early last year.

  • How To Configure Windows 10 for Intel Optane Memory

    Intel's Optane memory technology can significantly improve the performance of your Windows 10 system -- provided you enable it correctly. A single mistake can render the system unbootable. Here's how to do it the right way.

  • Microsoft and SAP Enhance Partnership with Teams Integration

    Microsoft and SAP this week described continuing partnership efforts on Microsoft Azure, while also planning a Microsoft Teams integration with SAP's enterprise resource planning product and other solutions.

  • Blue Squares Graphic

    Microsoft Previews Azure IoT Edge for Linux on Windows

    Microsoft announced a preview of Azure IoT Edge for Linux on Windows, which lets organizations tap Linux virtual machine processes that also work with Windows- and Azure-based processes and services.

comments powered by Disqus