SlideShare a Scribd company logo
FIREFOX OS
What is it?
● Firefox OS. Referred to as Boot 2 Gecko or
B2G (codename).
● Firefox OS is an open source mobile
operating system from Mozilla, based on
Linux and powered by Mozilla's Gecko
technology.
IDEA?
●The idea behind Firefox OS is simple:
Building apps for the mobile web using exactly the same tools and
languages as the desktop web.
Simply it's aWeb App transformed in User
Interface for your smartphone.
SIMPLE?
 Firefox OS is simple to create and work on.
 It is completely based on HTML5 and CSS3
just like a browser running on your phone.
HOW IS IT BUILD?
ARCHITECTURE OF FIREFOX OS
Linux Core (GONK)
Firefox OS is based on the proven firefox engine (GECKO). Fully open
and standard proposed-APIs
UX layer (GAIA)
GONK
 Gonk is the lower level operating system of the Firefox OS
platform.
 Gonk is a very simple Linux distribution.
 Gonk is a porting target of Gecko.
 i.e there's a port of Gecko to Gonk, just like there's a port of
Gecko to OS X,Windows, and Android.
CONTINUE…..
Porting target (in gecko there is a lot of code that is
platform agnostic, and some parts (like windowing
system, input system) that are platform specific. gonk is
the platform we use for b2g devices)
CONTINUE….
 It consists of a Linux kernel (based on the Android Open Source
Project (AOSP)) and userspace hardware abstraction layer
(HAL).
 HAL (set of user space libraries which are common open-source
projects: Linux, libusb, bluez. Some of the other parts of the
HAL are shared with the Android project: GPS, camera, and
others).
CONTINUE….
 Firefox OS project/Gecko has full control over Gonk, we can
expose interfaces to Gecko that can't be exposed on other
operating systems. For example, Gecko has direct access to the
full telephony stack and display frame buffer on Gonk, but
doesn't have this access on any other operating system.
 Linux kernel ??
 Booting process??
LINUX KERNAL & FLOW OF CONTROL
In Linux, the flow of control during a boot is from BIOS to boot
loader, to kernel.
(BIOS : initialize and test the system hardware components, and to
load a “bootloader” from a mass memory device ).
The boot loader often presents the user with a menu of
possible boot options.
The boot loader can be configured to time out if the user does
not interact with the boot loader, thus selecting a default kernel
and system configuration.
CONTINUE…..
 After the selection is made, or after reaching a selection time-out,
boot loader loads the kernel.
 The boot loader starts the kernel(by calling calling start_kernel()) and the kernel
starts init.
 start_kernel() then performs the majority of system setup (interrupts,
the rest of memory management, device and driver initialization,etc.)
before spawning separately, scheduler, and the init process (which is
executed in user space).
 (The kernel then starts the scheduler (to allow multi-tasking) and runs the
first program init (short for initialization: is a program for Unix-based
computer operating systems that spawns all other processes))
CONTINUE….
 The init process executes scripts as needed that set up all non-operating
system services and structures in order to allow a user environment to be
created. Usually, these scripts then present the user with a way to
authenticate and thus login into the system
FIREFOX OS BOOT UP PROCESS
GECKO
 This is the Firefox OS application runtime; that is, the layer that
provides all of the support for open standards: HTML, CSS, and
JavaScript. Gecko, is the implementation of web standards (HTML,
CSS, and JavaScript) that is used to implement everything the user
sees on Firefox OS.
 Gecko is a middleware composed of
layout engine (for rendering HTML content)
virtual machine (for running Javascript code)
porting layers to the different platforms,networking stack,graphics
stack (which delegates-to give power/duty- operations to the GPU when needed)
etc..
GAIA
 Gaia is the user interface level of Firefox OS. Everything that appears on the
screen after Firefox OS starts up is drawn by Gaia, including the lock screen,
home screen, dialer, and other applications. Gaia is written entirely in
HTML, CSS, and JavaScript. Its only interface to the underlying operating
system and hardware is through standard Web APIs, which are
implemented by Gecko.
 Because of this design, not only can Gaia be run on Firefox OS devices, but
also on other operating systems and in other web browsers.
 UI implementation based on building blocks and JS libraries
APPLICATION LAYER
Core - Certified Applications
 Applications which are the backbone of a contemporary mobile device
 Dialer, Messaging, Contacts, Media, Gallery, Clock, etc.
 Pre-installed on the device .
 Trusted Packaged Applications
 Installed from marketplace.
 Reviewed and cryptologially signed byApp reviewer.
Communication with Gecko??
COMMUNICATION WITH GECKO
 The communication between Gecko and Gaia's System app is done via
mozChromeEvent and mozContentEvent.
 mozChromeEvents are broadcast from chrome to content(i.e for messages
from chrome (parent window) to content(system apps))
 mozContentEvents are broadcast from content to chrome.
 This communication is used to control the creation and closure of the trusted
UI and to inject the required functions for notifications and other tasks,
including telling the System app to start an app.
FIREFOX OS APPS ARCHITECTURE
 The app startup process
 When the user selects an app,the home screen app starts by getting an
app reference from the “app API” ,then calling the “app.launch()”
method to launch.
 Gecko receives that request and sends the “mozChromeEvent” to the
System app with the app's details.The System app handles that event
by inserting a new<iframe> into its DOM tree and loading the app
within the new <iframe>.That frame will be the app's home until it
terminates.
 Every app requires a manifest that describes the app.
THANKYOU
Kumar Rishav
Mozillian and FSA
https://www.facebook.com/rishav.raj.737001
rishav006@gmail.com
SUPPORT OPEN WEB
 Doing good is part of our code
Appdaysindore

More Related Content

What's hot

Trabajo de jose
Trabajo de jose Trabajo de jose
Trabajo de jose
josemgg
 
Internet browsers by Andres Haydar
Internet browsers by Andres HaydarInternet browsers by Andres Haydar
Internet browsers by Andres Haydar
AndresHaydar
 
Browsers .
Browsers .Browsers .
Browsers .
seripa3
 
Browsers
BrowsersBrowsers
Web browsers
Web browsersWeb browsers
Web browsers
torosalgado
 
Browsers
BrowsersBrowsers
Browsers
mafecarvajalb
 
Web browsertico
Web browserticoWeb browsertico
Web browsertico
tico3195
 
Browsers
BrowsersBrowsers
Browsers
Abraham Sierra
 

What's hot (8)

Trabajo de jose
Trabajo de jose Trabajo de jose
Trabajo de jose
 
Internet browsers by Andres Haydar
Internet browsers by Andres HaydarInternet browsers by Andres Haydar
Internet browsers by Andres Haydar
 
Browsers .
Browsers .Browsers .
Browsers .
 
Browsers
BrowsersBrowsers
Browsers
 
Web browsers
Web browsersWeb browsers
Web browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Web browsertico
Web browserticoWeb browsertico
Web browsertico
 
Browsers
BrowsersBrowsers
Browsers
 

Similar to Appdaysindore

Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
Nilay Binjola
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
Aimee Maree Forsstrom
 
F irefox
F irefoxF irefox
F irefox
mantu verma
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
PRASHANT AMAGE
 
Firefox os
Firefox osFirefox os
Firefox os
Nivin Thomas
 
Firefox os ppt
Firefox os pptFirefox os ppt
Firefox os ppt
Sourav Halder
 
Introduction to firefox os
Introduction to firefox osIntroduction to firefox os
Introduction to firefox os
H Mohammed Rajjaz
 
Firefox OS Intro, Inside OUT
Firefox OS Intro, Inside OUTFirefox OS Intro, Inside OUT
Firefox OS Intro, Inside OUT
skiee-mahir
 
Firefox os
Firefox osFirefox os
Firefox os
Amit Chaudhary
 
Firefox smart phone os
Firefox smart phone osFirefox smart phone os
Firefox smart phone os
Deevena Dayaal
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
Robert 'Bob' Reyes
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating system
Nishant Mehare
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
ankitgadgil
 
Develop your first app on Firefox OS
Develop your first app on Firefox OSDevelop your first app on Firefox OS
Develop your first app on Firefox OS
serge sonfack
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
Yesu Raj
 
Firefox os
Firefox osFirefox os
Firefox os
Shruthi Srigadi
 
Browsers
BrowsersBrowsers
Browsers
Sebastian Lora
 
Browsers
BrowsersBrowsers
Browsers
Sebastian Lora
 
Import golang; struct microservice
Import golang; struct microserviceImport golang; struct microservice
Import golang; struct microservice
Giulio De Donato
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
abdelrahman samy
 

Similar to Appdaysindore (20)

Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015Firefox OS - Hive Pilani 2015
Firefox OS - Hive Pilani 2015
 
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
FirefoxOS and its use of Linux (a deep dive into Gonk architecture)
 
F irefox
F irefoxF irefox
F irefox
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
Firefox os
Firefox osFirefox os
Firefox os
 
Firefox os ppt
Firefox os pptFirefox os ppt
Firefox os ppt
 
Introduction to firefox os
Introduction to firefox osIntroduction to firefox os
Introduction to firefox os
 
Firefox OS Intro, Inside OUT
Firefox OS Intro, Inside OUTFirefox OS Intro, Inside OUT
Firefox OS Intro, Inside OUT
 
Firefox os
Firefox osFirefox os
Firefox os
 
Firefox smart phone os
Firefox smart phone osFirefox smart phone os
Firefox smart phone os
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
Firefox operating system
Firefox operating systemFirefox operating system
Firefox operating system
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 
Develop your first app on Firefox OS
Develop your first app on Firefox OSDevelop your first app on Firefox OS
Develop your first app on Firefox OS
 
Online lg prodect
Online lg prodectOnline lg prodect
Online lg prodect
 
Firefox os
Firefox osFirefox os
Firefox os
 
Browsers
BrowsersBrowsers
Browsers
 
Browsers
BrowsersBrowsers
Browsers
 
Import golang; struct microservice
Import golang; struct microserviceImport golang; struct microservice
Import golang; struct microservice
 
Firefox OS
Firefox OSFirefox OS
Firefox OS
 

Recently uploaded

Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Paige Cruz
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
Uni Systems S.M.S.A.
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
SOFTTECHHUB
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
Mariano Tinti
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
DianaGray10
 

Recently uploaded (20)

Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdfObservability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
Observability Concepts EVERY Developer Should Know -- DeveloperWeek Europe.pdf
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
Microsoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdfMicrosoft - Power Platform_G.Aspiotis.pdf
Microsoft - Power Platform_G.Aspiotis.pdf
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
Goodbye Windows 11: Make Way for Nitrux Linux 3.5.0!
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Mariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceXMariano G Tinti - Decoding SpaceX
Mariano G Tinti - Decoding SpaceX
 
Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1Communications Mining Series - Zero to Hero - Session 1
Communications Mining Series - Zero to Hero - Session 1
 

Appdaysindore

  • 1. FIREFOX OS What is it? ● Firefox OS. Referred to as Boot 2 Gecko or B2G (codename). ● Firefox OS is an open source mobile operating system from Mozilla, based on Linux and powered by Mozilla's Gecko technology.
  • 2. IDEA? ●The idea behind Firefox OS is simple: Building apps for the mobile web using exactly the same tools and languages as the desktop web. Simply it's aWeb App transformed in User Interface for your smartphone.
  • 3. SIMPLE?  Firefox OS is simple to create and work on.  It is completely based on HTML5 and CSS3 just like a browser running on your phone.
  • 4. HOW IS IT BUILD? ARCHITECTURE OF FIREFOX OS Linux Core (GONK) Firefox OS is based on the proven firefox engine (GECKO). Fully open and standard proposed-APIs UX layer (GAIA)
  • 5.
  • 6. GONK  Gonk is the lower level operating system of the Firefox OS platform.  Gonk is a very simple Linux distribution.  Gonk is a porting target of Gecko.  i.e there's a port of Gecko to Gonk, just like there's a port of Gecko to OS X,Windows, and Android.
  • 7. CONTINUE….. Porting target (in gecko there is a lot of code that is platform agnostic, and some parts (like windowing system, input system) that are platform specific. gonk is the platform we use for b2g devices)
  • 8. CONTINUE….  It consists of a Linux kernel (based on the Android Open Source Project (AOSP)) and userspace hardware abstraction layer (HAL).  HAL (set of user space libraries which are common open-source projects: Linux, libusb, bluez. Some of the other parts of the HAL are shared with the Android project: GPS, camera, and others).
  • 9. CONTINUE….  Firefox OS project/Gecko has full control over Gonk, we can expose interfaces to Gecko that can't be exposed on other operating systems. For example, Gecko has direct access to the full telephony stack and display frame buffer on Gonk, but doesn't have this access on any other operating system.  Linux kernel ??  Booting process??
  • 10. LINUX KERNAL & FLOW OF CONTROL In Linux, the flow of control during a boot is from BIOS to boot loader, to kernel. (BIOS : initialize and test the system hardware components, and to load a “bootloader” from a mass memory device ). The boot loader often presents the user with a menu of possible boot options. The boot loader can be configured to time out if the user does not interact with the boot loader, thus selecting a default kernel and system configuration.
  • 11. CONTINUE…..  After the selection is made, or after reaching a selection time-out, boot loader loads the kernel.  The boot loader starts the kernel(by calling calling start_kernel()) and the kernel starts init.  start_kernel() then performs the majority of system setup (interrupts, the rest of memory management, device and driver initialization,etc.) before spawning separately, scheduler, and the init process (which is executed in user space).  (The kernel then starts the scheduler (to allow multi-tasking) and runs the first program init (short for initialization: is a program for Unix-based computer operating systems that spawns all other processes))
  • 12. CONTINUE….  The init process executes scripts as needed that set up all non-operating system services and structures in order to allow a user environment to be created. Usually, these scripts then present the user with a way to authenticate and thus login into the system
  • 13. FIREFOX OS BOOT UP PROCESS
  • 14.
  • 15. GECKO  This is the Firefox OS application runtime; that is, the layer that provides all of the support for open standards: HTML, CSS, and JavaScript. Gecko, is the implementation of web standards (HTML, CSS, and JavaScript) that is used to implement everything the user sees on Firefox OS.  Gecko is a middleware composed of layout engine (for rendering HTML content) virtual machine (for running Javascript code) porting layers to the different platforms,networking stack,graphics stack (which delegates-to give power/duty- operations to the GPU when needed) etc..
  • 16. GAIA  Gaia is the user interface level of Firefox OS. Everything that appears on the screen after Firefox OS starts up is drawn by Gaia, including the lock screen, home screen, dialer, and other applications. Gaia is written entirely in HTML, CSS, and JavaScript. Its only interface to the underlying operating system and hardware is through standard Web APIs, which are implemented by Gecko.  Because of this design, not only can Gaia be run on Firefox OS devices, but also on other operating systems and in other web browsers.  UI implementation based on building blocks and JS libraries
  • 17. APPLICATION LAYER Core - Certified Applications  Applications which are the backbone of a contemporary mobile device  Dialer, Messaging, Contacts, Media, Gallery, Clock, etc.  Pre-installed on the device .  Trusted Packaged Applications  Installed from marketplace.  Reviewed and cryptologially signed byApp reviewer. Communication with Gecko??
  • 18. COMMUNICATION WITH GECKO  The communication between Gecko and Gaia's System app is done via mozChromeEvent and mozContentEvent.  mozChromeEvents are broadcast from chrome to content(i.e for messages from chrome (parent window) to content(system apps))  mozContentEvents are broadcast from content to chrome.  This communication is used to control the creation and closure of the trusted UI and to inject the required functions for notifications and other tasks, including telling the System app to start an app.
  • 19. FIREFOX OS APPS ARCHITECTURE  The app startup process  When the user selects an app,the home screen app starts by getting an app reference from the “app API” ,then calling the “app.launch()” method to launch.  Gecko receives that request and sends the “mozChromeEvent” to the System app with the app's details.The System app handles that event by inserting a new<iframe> into its DOM tree and loading the app within the new <iframe>.That frame will be the app's home until it terminates.  Every app requires a manifest that describes the app.
  • 20. THANKYOU Kumar Rishav Mozillian and FSA https://www.facebook.com/rishav.raj.737001 rishav006@gmail.com
  • 21. SUPPORT OPEN WEB  Doing good is part of our code