|
|
| (48 intermediate revisions by 8 users not shown) |
| Line 1: |
Line 1: |
| This document describes at a high level how [[Gaia]] and [[B2G]] work in the port of [[Gecko]] to [[Gonk]]. If you don't know what these things are yet, don't worry, they'll be introduced below.
| | == Warning == |
| | | This page is no longer maintained - please see this content on https://developer.mozilla.org/en-US/Firefox_OS/Platform/Architecture |
| Gaia/B2G/Gecko are under heavy development, so some items below discuss how the code '''will''' work, instead of how it '''currently''' works. This will be noted.
| |
| | |
| == Terminology == | |
| | |
| == Booting ==
| |
| | |
| After turning on a b2g phone, execution starts in the primary bootloader. From there, the process of loading the main OS kernel happens in the usual way: a succession of higher-level bootloaders bootstrap the next loader in the chain. At the end of the process, execution is handed off to the linux kernel.
| |
| | |
| There's not a lot to say about the boot process, but there are a few things worth knowing
| |
| * The bootloaders usually show the first "splash screen" seen during device boot, which usually displays a vendor logo.
| |
| * The bootloaders implement flashing an image onto the device. Different devices use different protocols. Most phones use the fastboot protocol, but the Galaxy S II uses the "odin" protocol.
| |
| * By the end of the bootstrapping process, the modem image is usually loaded and running on the modem firmware. How this happens is highly device-specific and possibly proprietary.
| |
| | |
| == Kernel (Linux) ==
| |
Latest revision as of 09:19, 18 February 2014