Mozilla Building Mobile Operating System to Rival Google's Chrome OS

By Darryl K. Taft  |  Posted 2011-07-26 Print this article Print

title=Android Components as Foundation for B2G?} 

And discussing the use of Android components as a foundation for B2G, Shaver said, "We intend to use as little of Android as possible, in fact. Really, we want to use the kernel + drivers, plus libc and ancillary stuff. It's not likely that we'll use the Android Java-wrapped graphics APIs, for example. It's nice to start from something that's known to boot and have access to all the devices we want to expose." Shaver noted that this may not be the right direction and asks for suggestions.

The discussion prompted several queries about APIs. Regarding the APIs and privilege model, Brendan Eich, a Mozilla engineer and creator of JavaScript, said:

"Those New Web APIs are for the standardized, portable content languages (JS/HTML/CSS). We are not looking to run native code, especially given the requirements for a new plug-in API, complex toolchain, etc. We're following NaCl, including the PNaCl work, but it is not ready for prime time, and we'd have to spend a lot of people and time integrating and tracking it. The opportunity cost on pushing the open web standard is very high, at least for our community.

"Google can much better afford to invest in NaCl, but that won't necessarily make a standard. The toolchains and OSes are likelier to support control-flow integrity enforcement in native code sooner than the browser makers, IMHO."

NaCl, known as "Salt" because NaCl is the molecular formula for salt, is a sandboxing technology for running a subset of Intel x86 native code using software-based fault isolation. The Google Native Client technology uses software fault isolation (SFI) to enable the execution of untrusted native code inside a Web browser, giving Web applications greater access to the performance of the client machine while avoiding the security problems with current infrastructure for plug-ins. PNaCl, pronounced Pinnacle, is a suite of tools for building, testing and distributing Native Client programs in an instruction-set neutral format. PNaCl uses the Low-Level Virtual Machine (LLVM) bitcode format to represent instruction set architecture (ISA) neutral portable executables compiled from code written in a variety of languages including C and C++.

Gal summed up Mozilla's goals for B2G:

"A number of intermediate steps are possible. I am very interested in making a beefed up web stack with powerful local APIs available to users of existing devices. I think we can do this without distracting from the ultimate goal: breaking the stranglehold of proprietary technologies over the mobile device world."

Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.

Submit a Comment

Loading Comments...
Manage your Newsletters: Login   Register My Newsletters

Rocket Fuel