Google Chrome's open-source ally: Microsoft
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.)
Stephen Shankland writes about a wide range of technology and products, but has a particular focus on browsers and digital photography. He joined CNET News in 1998 and since then also has covered Google, Yahoo, servers, supercomputing, Linux and open-source software, and science. E-mail Stephen, or follow him on Twitter at http://www.twitter.com/stshank. 





A"javascript test" is NOT the same as loading real web pages , as I find IE8 just as fast while using the CPU hardly at all. I was tipped off to this by a tech writer at CNN. Listen to how bad Chrome really is...
http://thisweekintech.com/sn161
Doesn't this mean that they broke vista's license and copyright (I'm pretty sure that it states that NO reverse engineering is allowed)
In any case, I've heard disassembling anything is a no-no from a license perspective.
Sometimes an approach like Firefox or IE7 with separate tabs but the same core process can make it easier to work with. Not everyone has the memory needed to run Chrome as effectively as Firefox, Safari, and IE7 can. <p>
Your mileage may vary, of course.
Other operating systems are not a problem. They use Firefox, Safari and the like which run Javascript reasonably well (although not as fast as Chrome).
Take out IE or pressure Microsoft to deliver a better Javascript engine and Google's goal is accomplished. Microsoft's response may well be to make their Javascript even slower to hinder web apps from Google and the like. That's their style.
http://thisweekintech.com/sn161
Google wants more data on you.
They did make it open source, though, for Linux and Mac fans to try and rebuild it for their favortie platform and the best part is ... Google doesn't have to pany anybody to build it, but when somebody finally ports it they can take the code and add it to the base code and call Chrome cross-platform!
Crossover has done an experimental self-contained port of the Windows version to Wine: http://www.codeweavers.com/services/ports/chromium/ - I tried the Linux version last night on Ubuntu 8.04 and it works very nicely. Fit and finish is still defective, but that'll come - Wine development cycles are every two weeks, after all.
Also, it works on Wine but not on Windows 2000 ;-)
As for the questions ab't reverse-engineering? On operating systems (especially proprietary ones), you pretty much have to every time you build and compile any app more complex than "hello world". If Windows programming relied only on published APIs, Microsoft would have died a very long time ago.
/P
- by pauljweighell September 16, 2008 7:31 AM PDT
- I am a corporate user of IE as its simpler to use what's already there than wasting time installing, testing and maintaining new browsers that quite frankly offer no bottom line advantage and have way less functionality re 3rd party MS orientated apps that we all use.
- Like this Reply to this comment
-
-
- by daftkey September 16, 2008 8:10 AM PDT
- Orientated... tee hee.
- Like this
-
(16 Comments)Having said that Firefox has been useful as it keeps IE honest but it does seem a bit daft to spilt the open source competition by adding Chrome as FireFox and Chrome are now chasing the same market and can only divide it further - bit of an open source own goal really...