Feeds

Google hooks Native Client into Visual Studio, Eclipse

'Threat to Mozilla vision' rolls on

High performance access to file storage

Google I/O Google is building an interactive Native Client debugger that will integrate with various popular IDEs. According to Google engineer David Springer, the company will begin with Visual Studio before moving on to Eclipse and others.

"We're starting with Visual Studio because a lot of client programs are already built there," Springer said this afternoon at Google's annual developer conference in San Francisco. Part of Google's Native Client pitch is that it will allow developers to easily move their existing client applications into the browser.

Still in the "experimental" stage, Native Client – aka NaCL – is a Chrome browser plug-in designed to securely run C, C++, and other native code inside the browser. It's included with the current stable version of Chrome – Chrome 11 – but it must be manually turned on. The idea is not only to move existing code into the browser, but also to improve the speed of web applications.

"While the [Chrome] team has made JavaScript tremendously faster over the last two years, there's a lot of applications out there that have existing audiences that are [written in native code, such as C and C++], and there are a few that are specialized applications that need every last bit of performance the hardware can offer. Native Client is a way of addressing both those issues," Google engineering director Linus Upson told us in December.

Spinger said that the platform brought the web's "write once, run anywhere" setup to native code. The trouble is, that at this point "anywhere" means "anywhere that you have Chrome running on a 32- or 64-bit x86 processor". Both Mozilla and Opera have strongly opposed Native Client because it bypasses web standards such as HTML, CSS, and JavaScript. You can eventually achieve comparable speeds with JavaScript, they say, and with JavaScript, you can maintain the world-flattening simplicity of web programming.

Opera CTO Håkon Wium Lie reiterated his Native Client opposition to The Reg just yesterday, and in a public document, Mozilla lists Native Client among the things that "threaten" its vision.

When, following Springer's talk, we mentioned this opposition to Google engineer Eric Kay, he told us it was more accurate to say that the likes of Mozilla and Opera were "taking a wait-and-see attitude. To them, it just looks like black magic, and it's hard to tell if it really works," he said.

When we made the same mention to Upson in December, he pointed to a new version of the plug-in known as Portable Native Client, which will allow Native Client apps to operate independent of the processor. Portable Native Client – aka PNaCl, pronounced "pinnacle" – compiles C, C++, and other languages into the Low Level Virtual Machine (LLVM) bitcode format, and this allows for client-side translation into the client's native instruction set.

"When it comes to running programs over the web in Native Client, we're very sensitive to maintaining the qualities of the web that have made it so successful," Upson said. "One of those things is that you can write applications that can run on any computer. One of the reasons we haven't widely deployed Native Client so far is we're working on something called Portable Native Client, so you're not tied to any one particular instruction set, so people can build whole new CPUs, whole new chip architectures, and [applications] won't get tied to those."

But Wium Lie questions whether Portable Native Client will achieve the same speeds as the non-Portable version. When applications are ported to standard Native Client, David Springer said today, they already take a 5 per cent performance hit, and presumably they'll slow even more on Portable Native Client.

Eric Kay told us it's too early to tell whether Portable Native Client will introduce a second performance hit, but he believes that if it does, this will mostly affect startup time.

In any event, Google is moving ahead with the project. Springer said that the company is also working on JIT support, and it has already built a Mono port that runs C#. ®

High performance access to file storage

More from The Register

next story
Windows 8.1, which you probably haven't upgraded to yet, ALREADY OBSOLETE
Pre-Update versions of new Windows version will no longer support patches
Android engineer: We DIDN'T copy Apple OR follow Samsung's orders
Veep testifies for Samsung during Apple patent trial
OpenSSL Heartbleed: Bloody nose for open-source bleeding hearts
Bloke behind the cockup says not enough people are helping crucial crypto project
Microsoft lobs pre-release Windows Phone 8.1 at devs who dare
App makers can load it before anyone else, but if they do they're stuck with it
Half of Twitter's 'active users' are SILENT STALKERS
Nearly 50% have NEVER tweeted a word
Windows XP still has 27 per cent market share on its deathbed
Windows 7 making some gains on XP Death Day
Internet-of-stuff startup dumps NoSQL for ... SQL?
NoSQL taste great at first but lacks proper nutrients, says startup cloud whiz
US taxman blows Win XP deadline, must now spend millions on custom support
Gov't IT likened to 'a Model T with a lot of things on top of it'
This time it's 'Personal': new Office 365 sub covers just two devices
Redmond also brings Office into Google's back yard
prev story

Whitepapers

Securing web applications made simple and scalable
In this whitepaper learn how automated security testing can provide a simple and scalable way to protect your web applications.
Five 3D headsets to be won!
We were so impressed by the Durovis Dive headset we’ve asked the company to give some away to Reg readers.
HP ArcSight ESM solution helps Finansbank
Based on their experience using HP ArcSight Enterprise Security Manager for IT security operations, Finansbank moved to HP ArcSight ESM for fraud management.
The benefits of software based PBX
Why you should break free from your proprietary PBX and how to leverage your existing server hardware.
Mobile application security study
Download this report to see the alarming realities regarding the sheer number of applications vulnerable to attack, as well as the most common and easily addressable vulnerability errors.