什么是Firefox OS ?

Firefox OS 是一个为网页设计而生的能编译和独立的手机网页操作系统,我们相信在接下来的时代,网页应用将充满整个新兴操作设备,这也为当前许多网页开发者不需要太多的学习新的计算机语言来开发网页应用,为当前网页开发者提供了良好的平台。
专案名称为Boot to Gecko,也称B2G.

(1) Firefox OS 是基于开源的网页技术(HTML,CSS,JavaStript)

(2) Firefox OS的UI设计全部是基于这些开源网页技术

(3) 桌面菜单照相应用通话界面等,所有这些都是基于HTML

(4) 最新颖的一部分是你可以自己编辑手机上应用的UI如果你知道这些开源网页技术

(5) 你可以将Firefox OS 划分为三部分,分别是 Gonk 、Gecko、Gaia 。

Gaia

(1)这是Firefox OS的用户上层接口

(2)这层实现了锁屏、Home、打电话、短信消息、照相应用等等。

(3)整个设计通过html 、CSS、JavaScript

(4)Gaia通过开源网页API调用Firefox OS 稍底层的接口层Gecko

(5)只有用标准的web apis 这样才能与其他操作系统相融合并且能够在浏览器上完美运行

(6)第三方开发者的应用可以安装在gaia层展示在手机上。

Gecko

(1)Gecko 是一个免费开源工具,被上层所有应用调用,这是Mozilla组织以及与Mozilla合作的伙伴一起开发的

(2)这一层是用C++开发的中间层,可以在很多操作系统上运行

(3)为HTML,CSS,JS 提供开源标准的接口,让这些接口可以很好的在操作系统上运行

(4)包括网络协议栈,图形栈,界面工具,虚拟机(for js)和‘application runtime’

Gonk.

(1)这是B2G的最底层部分

(2)这一层包含了Linux Kernel和硬件抽象层(HAL)

Booting

当打开Firefox OS 手机后,从bootloader开始执行,在这里开始执行Firefox OS 内核的主要进程及线程,这里有很多boot 进程,但是值得我们关注的主要进程如下

(1) bootloaders在启动时会像我们展示“splash screen”也就是展示vendor 开机图标

(2) Bootloaders 将flash和图像展现在我们的设备上,不同的设备用不同的协议,大多数设备用fastboot但是Galaxy S II用的却是“odin”

(3) 最后执行启动modem进程

Kernel

当内核启动结束时,用户接口界面“init”进程启动,这和其他像unix操作系统一样,当启动init进程后,linux内核服务(services)将调用用户层以及中断设置。

转自:http://blog.csdn.net/gamelife_lch/article/details/9014573

[置顶] Firefox OS 学习——简单了解知识的更多相关文章

  1. [置顶] Firefox OS 学习——manifest.webapp结构分析

    在Firefox OS 学习——Gaia 编译分析  这篇文章多次提到manifest.webapp文件,对于做过android app 开发的人来说,都很熟悉Android.mk 和Manifest ...

  2. [置顶] Firefox OS 学习——Gaia 编译分析

    Gaia作为用户的接口,也是用户可见部分,一些用户的应用也是安装在这一层,所以研究他是很有必要的,对于像我这样的初学者,最直接的学习方法就是通过修改代码,然后可以看到UI的变化,很直观的观察修改结果. ...

  3. [置顶] Deep Learning 学习笔记

    一.文章来由 好久没写原创博客了,一直处于学习新知识的阶段.来新加坡也有一个星期,搞定签证.入学等杂事之后,今天上午与导师确定了接下来的研究任务,我平时基本也是把博客当作联机版的云笔记~~如果有写的不 ...

  4. [置顶] Ajax 初步学习总结

    Ajax是什么 Ajax是(Asynchronous JavaScript And XML)是异步的JavaScript和xml.也就是异步请求更新技术.Ajax是一种对现有技术的一种新的应用,不是一 ...

  5. [置顶] Effective STL 学习笔记

    看Effective STL 作的一些笔记,希望对各位有帮助. 以下是50条条款及相关解释. 容器 1. 慎重选择容器类型,根据需要选择高效的容器类型. 2. 不要试图编写独立于容器类型的代码. 3. ...

  6. [置顶] C语言学习入门

    编译文件:cc -c one.c two.c  生成.o目标文件 链接文件:cc one.o two.o     默认生成 a.out 执行文件 指定生成的可执行文件名   cc -o one one ...

  7. [置顶] 自己写一个简单通用的Makefile

    转自:http://blog.csdn.net/u011913612/article/details/52102241 一.makefile的作用 Makefile是用于自动编译和链接的,一个工程有很 ...

  8. [置顶] Java Web学习总结(24)——SSM(Spring+SpringMVC+MyBatis)框架快速整合入门教程

    1.基本概念 1.1.Spring Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作Expert One-On-One  ...

  9. [置顶] JQuery插件学习教程

    这是JQuery其它常用插件的视频教程,包括validate插件,.comet插件等.同时有大量实例项目,如果你是喜欢JQuery的童鞋千万不要错过. 教程的内容有: 1_validate插件(1) ...

随机推荐

  1. UVA_Cubic Eight-Puzzle UVA 1604

    Let's play a puzzle using eight cubes placed on a 3 x 3 board leaving one empty square.Faces of cube ...

  2. ftp报错 200 port command successful. consider using pasv 425 failed to establish connection

    最近在公司做的项目是需要在客户端录制视频,然后通过ftp传到服务器端.客户端是windows,服务器端linux.今天用新的电脑配置好项目之后,测试数据传输时出现了“200 port command ...

  3. sendto() 向广播地址发包返回errno 13, Permission denied错误

    http://blog.csdn.net/guanghua2_0beta/article/details/52483916 sendto() 向广播地址发包返回errno 13, Permission ...

  4. Python re模块 正则表达式

    1 简介 就其本质而言,正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.正则表达式模式被编译成一系列的字节码,然后由用 C ...

  5. java转换字符串编码格式 (解码错误,重新解码)

    字符集概念:规定了某个文字对应的二进制数字存放方式(编码)和某串二进制数值代表了哪个文字(解码)的转换关系. 我们在计算机屏幕上看到的是实体化的文字,而在计算机存储介质中存放的实际是二进制的比特流. ...

  6. 第002篇 深入体验C#项目开发(一)

    网上摘来的简介:        <深入体验C#项目开发>通过10个综合实例的实现过程,详细讲解了C#在实践项目中的综合运用过程.这些项目从作者的学生时代写起,到项目经理结束,一直贯穿于作者 ...

  7. Unhandled event loop exception 解决办法

    网上搜索了一下.对其他人有效的办法有两种: 1. 安装了adsafe  .卸载掉就可以了. 2.安装了流氓软件:百度杀毒. 卸载掉也解决问题了 我就是第三种情况.到现在还没解决的热.!. 谁还有更好的 ...

  8. 【数据处理】各门店POS销售导入

    --抓取西部POS数据DELETE FROM POSLSBF INSERT INTO POSLSBFselect * from [192.168.1.100].[SCMIS].DBO.possrlbf ...

  9. EF Code Frist

    EF:学习资料 http://www.cnblogs.com/libingql/category/366833.html

  10. Spring 入门 Ioc-Annotation

    通过对XML版本进行修改:http://www.cnblogs.com/likailan/p/3446821.html 一.导入 Spring 所需要的包 spring-framework-2.5.6 ...