Showing posts with label Mozilla. Show all posts
Showing posts with label Mozilla. Show all posts

Wednesday, February 22, 2012

Mozilla's Boot2Gecko Mobile Platform and Gaia UI

Mozilla's Boot2Gecko Mobile Platform and Gaia UI


By Ryan Paul.


Mozilla launched a new project last year called Boot2Gecko (B2G) with the aim of developing a mobile operating system. The platform's user interface and application stack will be built entirely with standards-based web technologies and will run on top of Gecko, the HTML rendering engine used in the Firefox web browser. The B2G project has advanced at a rapid pace this year and the platform is beginning to take shape.


The B2G team at Mozilla is preparing to give a demo of the platform's user experience at the upcoming Mobile World Congress (MWC) event. Mozilla's Brendan Eich told us via Twitter that the B2G project has already attracted partners, including one that is developing its own custom home screen. This suggests that multiple parties, possibly hardware vendors, are interested in adopting the platform.


According to a roadmap recently published by Mozilla, the B2G project could potentially reach the product stage by the second quarter of 2012. That's a highly ambitious target, but the project's impressive rate of development suggests that it can be done. The pervasive use of HTML and JavaScript to build the user interface and application stack is no doubt speeding the project along. Web technologies are very conducive to rapid development.


The B2G platform consists of three main layers. The bottom layer, which is called Gonk, includes the Linux kernel, the hardware abstraction layer, the telephony stack, and other low-level system components. The middle layer is the Gecko rendering engine, which has been improved with new APIs that expose device capabilities. The top layer is Gaia, the B2G user interface, which is built entirely with HTML and JavaScript.


The Linux kernel that is used in Gonk is said to be "reasonably close" to upstream Linux. According to Mozilla's documentation, Gonk uses some of the underlying bits of the Android open source project, including some minor kernel customizations, in order to make it easier for hardware vendors to get B2G running on Android hardware. B2G is not based on Android, however, and will not run Android applications. It's currently possible to replace the Android environment on a Samsung Galaxy S II with a B2G build.


Much of the interaction between the Gecko and Gonk layers will be mediated by a B2G process that runs with a high privilege level and acts as a sort of Gecko server. The B2G process will paint to the framebuffer and interact with hardware components like a built-in GPS antenna or camera.


The wireless modem functionality is implemented in a radio interface layer (RIL) daemon, which B2G will interact with through a simple proxy process. Actual web content and multimedia playback will be handled by separate processes that communicate with the B2G process.


Mozilla aims to build the entire B2G user interface and application stack with native HTML and JavaScript. In order to accomplish that, Mozilla launched the WebAPI project, which exposes device functionality to web content through JavaScript APIs. Mozilla has already previously introduced APIs for accessing certain device capabilities, such as the accelerometer and geolocation APIs that are supported in the mobile versions of Firefox.


The WebAPI project goes a step further and adds a great deal of additional functionality for tasks like taking pictures with the built-in camera, dialing the phone, accessing the device's battery level and status, sending and managing SMS messages, accessing the user's address book, and making a device vibrate. These capabilities are largely made accessible to web content through a set of JavaScript APIs. This means that the B2G dialer interface, for example, is just a web page that uses a JavaScript function to initiate a call.


Mozilla is working to standardize these APIs through the W3C Device APIs working group. In theory, the same underlying JavaScript APIs that are used to enable access to underlying platform features on B2G could eventually be supported natively in the default web browsers that ship with other platforms.


The standardization effort around device APIs is especially significant. If the APIs gain widespread adoption, it would make it possible for large portions of the B2G user experience and application stack (which are, essentially, just web content) to run in web browsers on other platforms. At that heart of Mozilla's agenda for B2G is a vision of the future in which browser-based mobile applications, built with standards-based HTML and JavaScript, will be capable of doing everything that can be done today with the native mobile application development frameworks.


Because B2G's Gaia user interface layer is implemented in HTML and JavaScript, it can technically run in a regular desktop web browser. Of course, the device-related capabilities will only work when the content is run in an environment that has WebAPI support.


We tested the Gaia home screen user interface and several of the platform's applications in a Firefox nightly build. All we had to do to get it running was download the code from the relevant GitHub repository and then open the homescreen.html file in Firefox.


When the page loads, the user will see the B2G lock screen, which displays the current date and time. The home screen interface can be accessed by dragging the lock screen up. The home screen displays a grid of application launchers and has a notification bar at the top. You can drag a notification slider down from the bar, much like the equivalent user interface element in Android.


If you look at the source code of the homescreen.html page, you will see that the contents of the interface, including the lock screen, are created with HTML div tags with some JavaScript code to handle interaction and populate the values. It's quite simple and predictable web content.


Individual applications run inside of a frame in the homescreen interface. We tested several applications, including a dialer, a web browser, and a map application. Like the home screen, these are all implemented in HTML and CSS. The web browser is basically a web page with an HTML input element for the URL bar and an embedded iframe element where the page content loads.


The current implementation of the Gaia environment is still simplistic and incomplete, but it offers a compelling demonstration of how conventional web content can be used to create a smartphone user experience. It's possible to do anything in the B2G user interface that can be done with HTML and CSS, so the possibilities for styling and theming are prodigiously extensive. Such intrinsic flexibility could help make B2G appealing to hardware vendors because it would make it easier for them to create custom user interfaces that differentiate their products.


Mozilla hasn't created an HTML-based widget toolkit for application development. The applications currently included in Gaia are just straight markup with CSS for design. It's theoretically possible to use existing HTML widget toolkits in B2G, however, such as jQuery Mobile and Sencha Touch.


The B2G project is off to an impressive start. The underlying concept of bringing native application capabilities to the standards-based web technology stack is also tremendously compelling. It hints at the possibility that the open web could someday provide a unified application platform for mobile devices.


It's also worth noting that the project is entirely open. As Eich pointed out to us yesterday in response to our coverage of Open webOS, the B2G project has had open governance and public source code since its first day. B2G also benefits from Mozilla's engineering talent and potential partners. The B2G platform has an opportunity to bring positive disruption to the mobile landscape and be a serious contender.



Other Electronics News:


Laptop Battery ,


Fujitsu Laptop Battery , FPCBP197AP , Fujitsu S760 modular bay Battery , FPCBP197AQ , Fujitsu S761 modular bay Battery , FPCBP197AS , etc.

Mozilla to reveal allies for its challenge to Android and iOS

Mozilla to reveal allies for its challenge to Android and iOS


By Stephen Shankland.


Expect partners for Mozilla's Boot to Gecko, a mobile OS for Web apps, to emerge at Mobile World Congress. B2G has big challenges, but there are no easy ways into the mobile market.


Firefox developer Mozilla will reveal partners later this month for its Boot to Gecko project, an ambitious attempt to build a browser-based operating system for mobile devices.


At first glance, it's easy to write off Boot to Gecko (B2G) as doomed from the start. When it comes to taking on iOS and Android, WebOS was a dud, BlackBerry OS is struggling, and Microsoft is carving out a niche for Windows Phone only by dint of extraordinary effort.


But B2G has a couple things going for it. First, it's a browser-based operating system, meaning that Web apps become its native apps. With legions of Web programmers already at work and increasingly attuned to mobile browsing, B2G isn't starting from scratch.


Second, it turns out, B2G has allies.


"B2G is partnering up," Mozilla Chief Technology Officer Brendan Eich said in a tweet. "More at MWC," he added, referring to the frenzied Mobile World Congress show that starts in a week and a half in Barcelona, Spain.


Having Web developers as allies is nice, but having strong partners is essential--especially because Mozilla plans for B2G products to arrive in the second quarter. Without a vehicle to deliver B2G into users' hands, the software will be mostly irrelevant.


And Mozilla doesn't want to be on the sidelines. The non-profit's mission is to keep the Web open, and it can't do that without some leverage on the actual technology used. Firefox on personal computers has served Mozilla's purpose, but Chrome and Microsoft bring new competition there, and Mozilla hasn't had much success so far gaining a foothold on the mobile Web.


B2G partners


So who might become a B2G partner? I'm guessing that the most likely candidates are the mobile network operators, aka carriers. They hold a powerful position in the mobile market, in particular because their strong retail presence is often the channel that delivers phones into customers' hands. But they've seen handset makers such as Apple and software companies such as Google usurp much of their power.


Indeed, last year at Mobile World Congress, 24 mobile operators launched the Wholesale Applications Community, an effort to promote Web apps that can run on any phone. WAC is essentially an attempted end-run around Apple's App Store and Google's Android Marketplace. WAC allies include AT&T, Verizon Wireless, NTT DoCoMo, Deutsche Telekom, China Mobile, and Vodafone.


WAC hasn't dented Apple and Google dominance when it comes to mobile apps. But it does show that some powerful players have an appetite for Web-app technology as a way to counterbalance the stronger players. Perhaps some of them see B2G as a new way to serve this goal.


Carriers today are in danger of being relegated to the role of retailer and dump pipe, with not much influence over online services, app stores, and other cash-generating possibilities. No doubt carriers would like to return to the days when they exerted a lot more power over the mobile marketplace.


B2G in the limelight


B2G is one of Mozilla's top 2012 priorities that the browser maker unveiled earlier this week. The organization's overarching goal is to try to break the ecosystem lock-in that can trap customers into a technology stack extending from device hardware through the operating system and reaches up to services and app stores.


B2G plays a role in Mozilla's plan to use Web apps to break the lock-in.


"A truly Web-based OS for mobile phones and tablets would enable the ultimate in user choice and developer opportunity, both from a technology and an ecosystem point of view," said Jay Sullivan, Mozilla's vice president of products of the plan. "Boot to Gecko is a project to build a OS that runs HTML5, JavaScript, and CSS directly on device hardware without the need for an intermediate OS layer."


According to Mozilla's B2G road map, the organization wants to demonstrate the mobile software in the first quarter of 2012 and build it into products in the second quarter.


Software distribution is a higher-level part of the ecosystem that Mozilla hopes to crack. First, it's got plans for its own coming marketplace. Second, it's working on technology that would let other app stores work with it, so people who buy a Web-app game from one won't have to re-purchase it later from another.


And the operating system layer is also key. As with Chrome OS, Google's laptop-oriented browser OS, programmers write software that runs on the browser. The devices don't expose the underlying sub-browser OS (Linux in BTG's case) that handles hardware details such as displaying pixels, paying attention to multitouch gestures, or putting a processor to sleep when it's idle.


But to make a smartphone useful, new services are needed beyond what browsers traditionally have offered. Thus Mozilla's WebAPI effort to provide interfaces so apps running in the browser can dial the phone, operate the camera, send and receive text messages, manage an address book, dim or brighten the screen, and monitor battery levels.


Until recently, the WebAPI work was somewhat at odds with a World Wide Web Consortium (W3C) project caled Device API (DAP) that's backed by browser maker Opera and others. In January, though, Mozilla agreed to marry its WebAPI project with DAP.


And of course the browser itself is at the center of the project. Mozilla has been working for years on a mobile browser project called Fennec, but has been thwarted when the operating systems it supported fell by the wayside. Now it's got Firefox working on on Android, though.


Many of ingredients necessary for Mozilla's mobile success are therefore coming together. The next steps, though--persuading partners to commit strongly, and attracting developers, and winning customers--are out of the organization's direct control.


Cracking the mobile market is tough. But with Firefox effectively barred from iOS and Windows Phone and not installed by default on Android, Mozilla has no easier ways to steer the mobile market.



Other Electronics News:


Laptop Batteries ,


Fujitsu Laptop Batteries , FPCBP196AP , FPCBP136AP , Fujitsu S6510 modular bay Battery , FPCBP174AQ , Fujitsu S6520 modular bay Battery , etc.