Google has filed at least four patent applications for technology it's building into its Chrome browser to try to make the Web a more powerful foundation for applications.
Patents can serve a variety of purposes. They can be used to keep competitors away from new technology until the patent expires. They can be licensed to others for their use or used as bargaining chips when negotiating patent cross-license agreements that let companies use each other's patents. They can be hoarded for defensive purposes, ready for deployment in a patent infringement countersuit if one company is sued by another. They can be used to gain more favorable terms in the creation of industry standards that relate to the patents. And of course they can bolster corporate chest-thumping when it comes time to boast about levels of innovation.
Thus far, Google hasn't proven to be a litigious company, but its presence is looming ever larger over the computing industry. The new patents are in a particularly fast-moving area, the development of Web browsers and associated technology for making cloud computing a more powerful foundation for applications.
Ultimately, Google hopes to standardize the technology so all browsers can use it, though it's not waiting for a standard.
"Native Client so far is outside any standards process. We're in discussions with other browser vendors on how to move that forward. We'd like to see all these things standardized," said Linus Upson, engineering director for the Chrome browser and Chrome OS, in a December interview. "At the end of day, don't think we'll refuse to ship something just because there isn't a piece of paper that says this is a standard."
Google's Chrome browser competes chiefly with Microsoft's Internet Explorer, Apple's Safari, and Mozilla's Firefox. It's also the application foundation for Google's Chrome OS project to create an operating system first for Netbooks, later for laptops and more powerful machines, and potentially for tablets as well. As such, Chrome OS competes with Mac OS X and Windows.
The browser technology at the heart of the patents seeks to speed up Web-based software by letting it take advantage of the undiluted power of computing hardware. The more powerful Web applications become, the more viable a competitor they are to those that run natively on an operating system such as Windows.
Native Client is designed to bridge those worlds, letting Web pages send a browser a binary file. That sounds like a perfect way to efficiently distribute viruses and other malware, but Native Client modules are created with a specialized compiler that blocks particular computer instructions that could cause those sorts of problems. The Native Client technology in the browser screens out any module that performs forbidden instructions, and in addition, the processes run in a walled-off area called a sandbox to help contain any problems.
Native Client is available as a browser plug-in today but is being built into Chrome. The same is true of O3D.
The four patent applications are as follows:
"Method for Safely Executing an Untrusted Native Code Module on a Computing Device." This patent application governs the sandbox security system, with a browser receiving an untrusted code module and running it in a secure environment. It was originally filed May 8, 2008.
"Method for Validating an Untrusted Native Code Module." This application, originally filed May 8, 2008, governs the process of ensuring the downloaded code module doesn't execute prohibited instructions or access prohibited resources.
"Method and System for Executing Applications Using Native Code Modules." It was originally filed July 16, 2008.
"Web-Based Graphics Rendering System." This application covers a Web application calling on a browser plug-in to hand off instructions to a graphics chip then hands off that chip's instructions to the computer system for display. It was filed January 21, 2010.
The Native Client patent applications list several inventors, including J. Bradley Chen, engineering manager of Google Native Client; Matthew Papakipos, a Google engineering director; David C. Sehr, a tech lead for Native Client; Evangelos Kokkevis; Matthew T. Harren; and Bennet S. Yee. Inventors on the O3D patent are Robin Green, Gregg Tavares, Papakipos, and Kokkevis.
Eventually, Google hopes others will embrace its technology without it splitting into different, incompatible versions, as happened for example with Apple's Canvas HTML tag for better two-dimensional graphics in Web pages, Upson said.
"Sometimes when something is experimental, you just have to ship it," Upson said. "We're in constant discussion about what's the right way we can converge."