Boot_to_Gecko

**Firefox OS**，由 Mozilla 基金會主導研發的開放原始碼行動作業系統，採用 Linux 核心。這個計劃於 2011 年 7 月 25 日釋出，最早主要應用於智慧型手機和平板電腦，但因難以打入手機市場，於 2016 年 7 月停止推出預載 Firefox OS 的新手機，轉型主打物聯網的作業系統。

Firefox OS 與 Google Chrome OS 類似，是一種網路作業環境，以 Gecko 瀏覽器引擎為中心，採用 HTML5 來開發。它允許基於 HTML5 的應用程式，能透過 JavaScript 語言，直接透過裝置硬體來做相互溝通。Firefox OS 的所有應用都基於網路，希望使用者一啟動就能夠連接上網際網路，但仍可透過 HTML5 cache Manifest 或相關 API 在離線時使用。

## 發展目標

2011 年 7 月 25 日，Mozilla 公司開始 Firefox OS 的研發，目標在於建立一個獨立且完整的作業系統，用以推動網路開放，並使開發人員能夠在不同手機平台上開發跨平台應用程式。並確立了一些工作方向：建立新的 WebAPI 來驅動裝置和作業系統的功能，例如：電話和相機；建立權限模型來保證系統的安全，以及底層驅動 Android 裝置的低階程式碼。2012 年正式發布了 Firefox OS。

Mozilla 研發總監安德里亞斯・加爾（Andreas Gal）形容目前已存在的行動裝置平台猶如「圍牆花園」，Firefox OS 將完全使用開放的 HTML5 網頁標準技術，不涉及專利軟體及技術。Firefox OS 希望建立起一個平台，讓符合網頁標準的網頁瀏覽器便能夠執行軟體，讓程式開發者統一在同一套標準下開發可以共通使用的應用程式，不需再為各平台各別開發專用的應用程式。

## 發展歷史

2011 年 7 月 25 日，Mozilla 研發總監安德里亞斯・加爾（Andreas Gal）於討論群組上宣佈「Boot to Gecko」專案（簡稱 _B2G_）。這項消息引發了許多科技媒體關注。其中根據 Ars Technica 引述：「Mozilla 表示，B2G 基於標準的開放網路有潛力成為一個具有競爭力的替代品，取代由主流行動作業系統提供的現有單一供應商應用程式開發環境。」。

2012 年 2 月 28 日，在執行於 Android 型號的智慧型手機上，首次公開展示 Firefox OS。7 月 2 日，Boot to Gecko 正式被命名為 Firefox OS，並於 8 月展示部份系統截圖。

2012 年 9 月 2 日，Strategy Analytics 分析師預測，Firefox OS 將在 2013 年占據 1% 的智慧型手機市場。

2013 年 1 月 10 日，中興通訊於國際消費電子展上證實將推出 Firefox OS 智慧型手機，並在 2013 年 7 月 2 日，西班牙電信推出首款商用 Firefox OS 手機 ZTE Open。西班牙 GeeksPhone 公司接著也推出 GeeksPhone Keon 和 Peak。2 月 24 日，Firefox OS 商業計劃正式擴大。Mozilla 於巴塞羅那世界行動通訊大會記者會上宣佈，第一波 Firefox OS 手機將提供給巴西、哥倫比亞、匈牙利、墨西哥、蒙特尼哥羅、波蘭、塞爾維亞、西班牙與委內瑞拉的消費者；LG 集團、中興通訊、華為和 TCL 集團將承諾生產 Firefox OS 裝置。

2013 年 5 月 27 日，鴻海科技與 Mozilla 簽署合作協定，合作範圍包括平板電腦和其他手持裝置產品。

2014 年 5 月 14 日，Mozilla 基金會和 T2Mobile 合作推出 Firefox OS 參考平台手機被名為「Flame」，這是專為開發人員用於開發和測試的手機。

截至 2014 年 12 月 16 日，Firefox OS 手機在全球共有 14 家營運商和近 28 個國家上市。

2015 年 12 月 8 日，Mozilla 聯網裝置部門副總 Ari Jaaksi 在其 Twitter 頁面宣佈將終止 Firefox OS 智慧型手機的開發與銷售，而將 Firefox OS 聚焦在物聯網的發展。2016 年 2 月，Mozilla 公司在寄送給開發者的電子郵件中宣布：在 2.6 版本發佈後，他們將停止開發手機平台上的 Firefox OS，原開發團隊將會移到別的專案上，例如 Firefox TV 和其他的智慧型家電。

2016 年 9 月 27 日，Mozilla 宣布 Firefox OS 於手機平台的商業性開發已經停止，且所有相關的程式碼將從 mozilla 核心中移除，以便未來 Gecko（Firefox 的排版引擎）的開發不受已停止的手機專案之影響。但也會釋出 Firefox OS 2.6 版穩定的原始碼，供開源軟體社群繼續利用與開發手機作業系統。只是因為此後的 Gecko 引擎在演進中將逐漸與 2.6 版為止的 Firefox OS 越來越不相關，這意味著開源軟體社群必須自行跟上 Gecko 的發展來修改 B2G 程式碼，對社群成員將是一大挑戰。 目前（2016-10-26）在 Firefox OS 官網上，看到的下載仍是 2.5 版開發者預覽版。

雖然手機上的 Firefox OS 停止開發了，但給物聯網的專案仍繼續，例如 Firefox OS TV。

## 展示

在 2012 年世界行動通訊大會上，Mozilla 宣佈與西班牙電信合作，將共同開發基於 HTML5 和 WebAPI 所建構的「Open Web Device」。Mozilla 還宣佈，支持該專案的還有 Adobe Systems 和 Qualcomm，以及德國電信的創新實驗室也將參與該專案。大會現場還展示該系統執行於三星 Galaxy S II 手機（移除內建的 Android 作業系統）。2012 年 8 月 7 日，一名諾基亞工程師將該系統移植到樹莓派上。2013 年 2 月 25 日，索尼展示 Firefox OS 移植於 Sony Xperia E 運作效果，並開放 ROM 供下載。

Firefox OS 可支援裝置包含 Nexus S、Nexus S 4G、Galaxy S2、Galaxy Nexus、Nexus 4、Otoro、PandaBoard 和桌上型電腦。

Mozilla 於 2014 年世界行動通訊大會上聯合展訊通訊（Spreadtrum）展示 25 美元 Firefox OS 智慧型手機。至今 Mozilla 已聯合 4 家手機製造商和 5 家營運商於歐洲和拉丁美洲推出 Firefox OS 手機。在印度，Mozilla 計畫與 Intex 及 Spice 公司推出 25 美元手機，但最終價格為 33 美元（1,999 盧比）。

2015 年的 CES 展，Panasonic 發表第一款內建 Firefox OS 的 4K 解析度液晶電視。

## 分支

松下電器繼續開發用於智慧型電視的作業系統，使用基於 Firefox OS 的 My Home Screen。

明辨科技從 Firefox OS 中分支出 H5OS。公司創始人宮力在擔任 Mozilla 公司總裁期間曾負責 Firefox OS 的開發。

一個名為 KaiOS 的分支使用在一些功能型手機上。

## 架構

Firefox OS 架構主要由三個軟體層組成：

　
: * _Gonk_ – Linux 底層核心和硬體抽象層
* _Gecko_ – 排版引擎和應用執行服務層
* _Gaia_ – HTML5 層和使用者介面系統

### Gonk

Gonk 是 Firefox OS 平台最底層的系統，包括 Linux 核心和使用者空間硬體抽象層（Hardware Abstraction Layer，HAL），核心以及一些使用者空間庫都是常見的開放原始碼專案，例如：Linux、libusb、Bluez；而部分硬體抽象層與 Android 開放原始碼專案（Android Open Source Project，AOSP）共享，例如：相機、全球定位系統。基本上 Gonk 也可以被當成是一個非常簡單的 Linux 分支版本，Gonk 就是個 Gecko 的移植目標，
也就是說，一套在 Gonk 執行的 Gecko，就像 Gecko 也有 Mac OS X、Windows 和 Android 版本一樣。因為 Firefox OS 專案具有 Gonk 完全的控制權，相較於其他作業系統，可以開放更多的介面給 Gecko。例如：Gecko 可以直接存取 Gonk 的完整電信堆疊和顯示緩衝區（Frame Buffer），這是其他作業系統作不到的。

### Gecko

Gecko 是 Firefox OS 的排版引擎，Gecko 提供 HTML、CSS、JavaScript 等開放標準的支援，由相關網路堆疊、圖形堆疊、排版引擎、JavaScript 虛擬機和介面層組成。

### Gaia

Firefox OS 的使用者介面層，任何繪製於螢幕上的所有容都屬於該層的工作，也就是說目前現代智慧型手機應具備的標準應用程式皆基於 Gaia 實作，包括鎖定螢幕、主畫面、撥打電話、文字簡訊、相機。Gaia 完全使用 HTML、CSS、JavaScript 技術來實作而成，Web API 是本層到其底層系統的唯一溝通入口。

## 發行歷史

## 裝置

### 非官方支援裝置

Firefox OS 與 Android 之間架構上的相似性允許 Mozilla 平台執行於許多 Android 的裝置上。一些 Firefox OS 的移植幾乎與原始版本沒有什麼不同，其他的則做了大量的修正以調適正在移植的裝置。

Firefox OS 被移植到下列裝置：

* Sony Xperia SP
* Huawei Ascend Y300
* Huawei Ascend G510
* HTC Pico
* Nexus 4
* Nexus 5
* Nexus 7 (2013)
* Moto G
* Sony Xperia Z3
* Sony Xperia T2 Ultra

## 參見

* Mozilla
* Gecko
* Chrome OS
* Chromium OS
* 雲運算
* Firefox 瀏覽器

## 參考文獻

## 外部連結

* 官方網站
* Firefox OS 專案介紹
* Firefox OS 原始碼（頁面存檔備份，存於網際網路檔案館），在 GitHub（英文）
* Firefox OS 模擬器最新預覽版本（頁面存檔備份，存於網際網路檔案館）（英文）