Click here to load reader

Boot to Gecko Introduction

  • View

  • Download

Embed Size (px)



Text of Boot to Gecko Introduction

  • Mozilla Boot to Gecko (float) May 19, 2012/MOSUT
  • Boot to Gecko(B2G) Mozillas open source mobile operating system based on Linux and Mozillas Gecko technology.MOSUT 2
  • The idea is essentially to have all user- accessible software running on the phone be a Web app that uses advanced HTML5 techniques and device APIs to access the phones hardware directly via JavaScript.MOSUT 3
  • Gaia Gecko GonkMOSUT 4
  • Gaia The user interface of b2g. Everything drawn to screen after b2g starts up is some part of Gaia. Gaia implements a lock screen, home screen, telephone dialer, text-messaging application, camera app, ... and many more.MOSUT 5
  • Gaia Gaia is written entirely in HTML, CSS, and JavaScript. Its only interface to the underlying operating system is through Open Web APIs, which are implemented by Gecko. Gaia works well when run on top of b2g; however, since it only uses standard web APIs, it works on other OSes and in other web browsers.MOSUT 6
  • GaiaMOSUT 7
  • MOSUT 8
  • MOSUT 9
  • ... MOSUT 10
  • MOSUT 11
  • Gecko The "application runtime" of b2g. At a high level, Gecko implements the open standards for HTML, CSS, and JS and makes those interfaces run well on all the OSes that Gecko supports.MOSUT 12
  • Gonk The lower-level "operating system" of b2g. Gonk consists of a linux kernel and userspace hardware abstraction layer (HAL).MOSUT 13
  • ...... Gaia Web app Gecko b2g Gonk kernelMOSUT 14
  • MOSUT 15
  • Boot Boot Loader Kernel initMOSUT 16
  • Userspace process architectureMOSUT 17
  • Gecko: Processing input events input-device drivers Gonk app shell EventHub DOMMOSUT 18
  • Gecko: Graphics At the very lowest level, Gecko uses OpenGL ES 2.0 to draw to a glcontext that wraps the hardware framebuffers. Gecko draws directly to VRAM.MOSUT 19
  • MOSUT 20
  • Web app Web apps are apps built using standard Web technologies. manifest.jsonMOSUT 21
  • manifest.json 22
  • Intsall app navigator.mozApps.install(manifestURL) or Put app in gaia/apps/ make install-gaiaMOSUT 23
  • Marketplace 24
  • DemoMOSUT 25
  • MOSUT 26
  • Run B2GMOSUT 27
  • Firefox Nightly + gaia 28
  • Emulator QEMU Emulator MOSUT 29
  • Device Samsung Galaxy S2 Samsung Nexus SMOSUT 30
  • Reference to-gecko-the-future-of-mobileMOSUT 31
  • Thank you Question?MOSUT 32