Google Brings Portable Native Client To Chrome - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IoT
IoT
Mobile // Mobile Business
News
11/17/2013
09:06 AM
Connect Directly
Google+
LinkedIn
Twitter
RSS
E-Mail
50%
50%

Google Brings Portable Native Client To Chrome

Developers can now compile native C and C++ code to run in Chrome across different hardware architectures.

Google Barge: 10 Informative Images
Google Barge: 10 Informative Images
(click image for larger view)

As part of its ongoing effort to make web apps perform as well as native apps, Google released Portable Native Client (PNaCl), a software framework that allows developers to compile native C and C++ code so that it can be embedded in and run from any website.

Native code can take advantage of CPUs and GPUs in a way that web applications still cannot to enable computationally demanding applications involving sophisticated graphics.

Portable Native Client, released Tuesday, differs from Google's Native Client (NaCl) technology in that it creates architecture-independent output. Where native code compiled with NaCl emerges tuned for a specific instruction set, like x86, ARM, or MIPS, programs compiled with PNaCl will run on any hardware platform. In other words, they work on mobile and desktop devices.

[ What will Google Glass do next? Read Google Glass Plans To Play Music. ]

PNaCl compiles native code into an intermediate form. The resulting LLVM-bytecode then gets wrapped in a portable executable file that can be served from a website. "When the site is accessed, Chrome fetches and translates the portable executable into an architecture-specific machine code optimized directly for the underlying device," Google engineer David Sehr wrote in a blog post.

Though PNaCl may allow developers to create hardware-independent code, it's not quite platform-independent. PNaCl applications require Google Chrome to run, because other browser vendors haven't integrated the technology. However, there's a way around this. PNaCl applications rely on the pepper.js JavaScript library to communicate with web browsers. Thanks to the Emscripten compiler, PNaCl apps (as LLVM-bytecode) can be converted into JavaScript, so the code will run in other browsers, like Firefox, Internet Explorer, and Safari.

In the near term, PNaCl makes ChromeOS more competitive with OS X and Windows as computing environments suited to computationally demanding applications. Whether Google's technology will benefit the web in the years to come remains to be seen.

Mozilla has been backing asm.js, a separate effort to make web apps perform better through a stripped-down, compiler-friendly version of JavaScript. In May, Mozilla engineer Robert O'Callahan articulated some issues that make PNaCl controversial. "PNaCl and Pepper are not open standards, and there are not even any proposals on the table to standardize them in any forum," he wrote in a blog post. "They have documentation, but for the details one must defer to the large bundle of Chrome code that implements them. Other vendors wishing to support PNaCl or Pepper would have to adopt or reverse-engineer this code."

As for Apple and Microsoft, its hard to see either company going out of its way to help hasten adoption of Google's technology. If Google can encourage enough developers to create compelling PNaCl applications that draw consumers in droves, perhaps Apple and Microsoft will be forced to adapt. But don't hold your breath; it could take a while.

Beyond the platform and technology differences that divide the major browser makers, there's an additional issue: access. JavaScript, for all its faults, is there for anyone to read. PNaCl code (and, to a lesser extent, asm.js code) isn't easy to understand. The price we may pay for faster web apps is the ability to read and learn from the web's underlying code.

The App Developers Conference (ADC) is a new app developer event focusing on the very best development, UI, marketing, and the business of apps. It is happening along with GDC Next, the new developer event focusing on the creation of the game experiences of the future. Don't miss the debut of two events and one expo floor. ADC and GDC Next happen Nov. 5-7 at the Los Angeles Convention Center. Register today.

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Comment  | 
Print  | 
More Insights
Comments
Oldest First  |  Newest First  |  Threaded View
Rodney Brown
50%
50%
Rodney Brown,
User Rank: Author
11/18/2013 | 9:44:20 AM
Security concerns?
I admit I don't know enough about the coding here to be able to say for sure if this is an issue, but if I read that a web browser is going to deliver an executable file, I get all kinds of worried. Is this a potential security problem, built into the very core of PNaCl?
Lorna Garey
50%
50%
Lorna Garey,
User Rank: Author
11/18/2013 | 2:49:36 PM
Re: Security concerns?
Rodney, I bet the main utilization of this will be on Chromebooks, which have security advantages. Seems like that will answer many of these concerns while giving yet another boost to the concept of Chromebooks as notebook PC replacements.
Rodney Brown
50%
50%
Rodney Brown,
User Rank: Author
11/18/2013 | 5:02:21 PM
Re: Security concerns?
Lorna, Chromebooks still have some distance to go to be a true notebook replacement, although if this new PNaCl adds to its security, that will help. But the real thing holding Chromebooks back is reliable functionality. I read a great description of what is the defining characteristic of a notebook replacement -- can you give it to a college student and trust that it will do everything they need in computing to succeed? I'm not sure Chromebooks fit that description yet.
Slideshows
IT Careers: 10 Industries with Job Openings Right Now
Cynthia Harvey, Freelance Journalist, InformationWeek,  5/27/2020
Commentary
How 5G Rollout May Benefit Businesses More than Consumers
Joao-Pierre S. Ruth, Senior Writer,  5/21/2020
News
IT Leadership in Education: Getting Online School Right
Jessica Davis, Senior Editor, Enterprise Apps,  5/20/2020
White Papers
Register for InformationWeek Newsletters
Video
Current Issue
Key to Cloud Success: The Right Management
This IT Trend highlights some of the steps IT teams can take to keep their cloud environments running in a safe, efficient manner.
Slideshows
Flash Poll