Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Firefox OSのアーキテクチャと
構成技術について
Makoto Kato
Technical Adviser, Mozilla Japan
About Mozilla
About Mozilla

•

•

Mozilla Foundationは
AOL/Netscapeから2003年
に分離した非営利組織
主なプロダクト
•
•
•

Firefox (Web Browser)
Thunderbird (...
“Our mission is to promote
openness, innovation &
opportunity on the Web”
ARM Platform上での取り組み
— NokiaのMaemo

/ MeeGo PlatformでのWebブラ
ウザ (Firefoxベース)
— NVIDIAのTegra 1上でのWindows CE用Webブラ
ウザ
— Androi...
Firefox OS

7
Firefox OS
— 2011年から開始されたプ

ロジェクト
— コードネーム Boot to
Gecko (B2G)
— HTML5を用いたモバイル
OS
— ブラウザエンジンのみのシ
ンプルな構成
— オープンソースにて開発
— 開発...
Architecture

Firefox OS Presentation Title
HTML対応を表明している従来型OS

Native
Application

Native
Application

Core Libraries

HTML
Application

HTML
Application

Web Runtim...
Firefox OS / B2G

HTML
Application

HTML
Application

HTML
Application

HTML
Application

Web Runtime + Core Libraries
Ker...
Basic Architecture of B2G

Gaia

Gecko
Gonk

• UX/UIを提供
• アプリケーション

• Web APIs
• ネットワークアクセス
• HTML/CSS レンダリング
• Linux
• Dr...
Gaia
— Firefox

OSでのアプリケーション層
— Web Stack (HTML / CSS / WebGL /
JavaScript)で書かれる
— Home screen
— Browser
— Mail
— Camera
—...
UI Framework – Building Blocks
Gecko = Rendering Engine & APIs

Gecko
JavaScript Rendering
Engine
• HTML
• CSS
• SVG
• MathML
• WebGL

Web API

Networkin...
Gecko
— Firefox

(デスクトップ版 / Android版) でも利用さ
れているレンダリングエンジン
— デスクトップ版で実装されているものは基本す
べて利用可能
— アプリケーションから利用できるAPIはすべてこ
こで実装され...
Gonk = Linux kernel + user space / library

wpa_supplicant

RIL damon

Other daemons

Linux Kernel
Device

Libraries
(Bion...
Gonk

— Linux kernel + User space Library + Daemon
— Daemonはデバイスアクセスのため
— User space LibraryにはAndroidのソースコードを

利用
— すべてではな...
Process Model

Application

Main
Process
(b2g)

Application

Application

Content
Process

Content
Process

Content
Proces...
Process Model

各アプリケーションはContent Process上で独立して動作
ハードウェアデバイスやカーネルにアクセスする役目は
Main Processが担当
— Main ProcessとContent Processは...
Porting Firefox OS / B2G to your devices
— ビルドシステムはAndroidベース
— ドライバ層はAndroidと同様
— Firefox OS 1.0/1.1 = Android 4.0 (ICS)
...
Schedule

CY
2013Q2
2013Q4
2014Q1?
2014Q2?
(4半期毎)

Firefox OS version
1.0.1
1.1
1.2
1.3
…

Gecko version
18
18
26
28
…+2
References
Firefox OS
— http://www.mozilla.org/ja/firefox/os/
— Firefox OS description
— https://developer.mozilla.org/en-...
Thank you
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Firefox OSのアーキテクチャと構成技術
Upcoming SlideShare
Loading in …5
×

Firefox OSのアーキテクチャと構成技術

3,530 views

Published on

at ARM Technology Symposium 2013 Japan

Published in: Technology
  • Be the first to comment

Firefox OSのアーキテクチャと構成技術

  1. 1. Firefox OSのアーキテクチャと 構成技術について Makoto Kato Technical Adviser, Mozilla Japan
  2. 2. About Mozilla
  3. 3. About Mozilla • • Mozilla Foundationは AOL/Netscapeから2003年 に分離した非営利組織 主なプロダクト • • • Firefox (Web Browser) Thunderbird (Mail Client) Firefox OS (Mobile OS)
  4. 4. “Our mission is to promote openness, innovation & opportunity on the Web”
  5. 5. ARM Platform上での取り組み — NokiaのMaemo / MeeGo PlatformでのWebブラ ウザ (Firefoxベース) — NVIDIAのTegra 1上でのWindows CE用Webブラ ウザ — Android版Firefox
  6. 6. Firefox OS 7
  7. 7. Firefox OS — 2011年から開始されたプ ロジェクト — コードネーム Boot to Gecko (B2G) — HTML5を用いたモバイル OS — ブラウザエンジンのみのシ ンプルな構成 — オープンソースにて開発 — 開発中のソースコード も公開
  8. 8. Architecture Firefox OS Presentation Title
  9. 9. HTML対応を表明している従来型OS Native Application Native Application Core Libraries HTML Application HTML Application Web Runtime (ex. WebKit / Blink / Trident) Core Libraries & GUI Toolkit Kernel
  10. 10. Firefox OS / B2G HTML Application HTML Application HTML Application HTML Application Web Runtime + Core Libraries Kernel
  11. 11. Basic Architecture of B2G Gaia Gecko Gonk • UX/UIを提供 • アプリケーション • Web APIs • ネットワークアクセス • HTML/CSS レンダリング • Linux • Drivers / Daemon (MediaServer / RIL etc)
  12. 12. Gaia — Firefox OSでのアプリケーション層 — Web Stack (HTML / CSS / WebGL / JavaScript)で書かれる — Home screen — Browser — Mail — Camera — Gallery etc — APIによって利用できる権限が異なる — Web App — Privileged App — Certified App
  13. 13. UI Framework – Building Blocks
  14. 14. Gecko = Rendering Engine & APIs Gecko JavaScript Rendering Engine • HTML • CSS • SVG • MathML • WebGL Web API Networking Security • Device access • HTTP • SSL / TLS • WebSocket • WebRTC • Permission
  15. 15. Gecko — Firefox (デスクトップ版 / Android版) でも利用さ れているレンダリングエンジン — デスクトップ版で実装されているものは基本す べて利用可能 — アプリケーションから利用できるAPIはすべてこ こで実装される — Firefox OSではいくつかのデバイスアクセスの機 能が追加されている — RIL, Bluetooth, Wifi and etc
  16. 16. Gonk = Linux kernel + user space / library wpa_supplicant RIL damon Other daemons Linux Kernel Device Libraries (Bionic / OpenGL ES / etc) Etc…
  17. 17. Gonk — Linux kernel + User space Library + Daemon — Daemonはデバイスアクセスのため — User space LibraryにはAndroidのソースコードを 利用 — すべてではなくGeckoを動かすための最小限の 構成
  18. 18. Process Model Application Main Process (b2g) Application Application Content Process Content Process Content Process Kernel/HAL - Gonk
  19. 19. Process Model 各アプリケーションはContent Process上で独立して動作 ハードウェアデバイスやカーネルにアクセスする役目は Main Processが担当 — Main ProcessとContent ProcessはIPCを利用して相互通 信 — Content Processがデバイスにアクセスする際にはIPCに てMain Processと通信 — アプリケーション間通信もMain Processを通じてIPCを 利用 — —
  20. 20. Porting Firefox OS / B2G to your devices — ビルドシステムはAndroidベース — ドライバ層はAndroidと同様 — Firefox OS 1.0/1.1 = Android 4.0 (ICS) — Firefox OS 1.2+ = Android 4.0 (ICS) or Android 4.3 (JB) — Gralloc / OpenGL ES 2 / libstagefright / OpenMAX / etc — カーネルはLinuxのためinitを利用して独自プロセ スを起動することも可能
  21. 21. Schedule CY 2013Q2 2013Q4 2014Q1? 2014Q2? (4半期毎) Firefox OS version 1.0.1 1.1 1.2 1.3 … Gecko version 18 18 26 28 …+2
  22. 22. References Firefox OS — http://www.mozilla.org/ja/firefox/os/ — Firefox OS description — https://developer.mozilla.org/en-US/Firefox_OS — Roadmap — https://wiki.mozilla.org/B2G/Roadmap — Porting Guide — https://developer.mozilla.org/en-US/Firefox_OS/Porting — Firefox OSコミュニティ — http://fxos.org/ —
  23. 23. Thank you

×