Firefox OS

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Firefox OS
Firefox OS Vertical Logo.png
Firefox OS 1.5.jpg
Prototipo da interface do Firefox OS 1.5
Produção Mozilla Corporation
Família do SO Firefox OS/Open Web (baseado no Kernel Linux)
Estado em desenvolvimento
Lançamento abril de 2013 (1–2 anos)[1]
Versão estável 1.4 8 de agosto de 2014; há 33 semanas e 6 dias
Versão em teste 2.2
Mercado-alvo Disponível em 14 países, incluindo Brasil, Polônia, Venezuela, Colômbia, Haiti, Espanha e Itália [3].
Arquitetura(s) ARM, x86
Núcleo Linux
Interface Gaia (GUI)
Licença LPM[1]
Página oficial mozilla.org/firefox/os
Cronologia
Último
Último
Boot2Gecko
Próximo
Próximo

O Firefox OS é um sistema operacional livre desenvolvido pela Mozilla e baseado no navegador da web Firefox. Além de ter a Mozilla como principal responsável, o Firefox OS conta com apoio de outras empresas[2] como a Telefônica[3] [4] e uma vasta comunidade de voluntários em todo o mundo. Este sistema operacional tem como alvo dispositivos móveis, em especial, modelos mais simples e de baixo custo, já que prioriza o baixo consumo de recursos, como processamento e memória RAM. No entanto, é possível encontrá-lo em outros tipos de equipamento, como computadores portáteis de baixo consumo energético.[5] No Brasil, os aparelhos comercializados são o Alcatel One Touch Fire e o LG Fireweb.[6]

O canal oficial de distribuição de aplicativos é o Marketplace[7] , mas operadoras e terceiros podem criar seu próprio canal de distribuição. Os aplicativos são construídos a partir de padrões abertos da Web em HTML5, CSS e JavaScript. Apesar de utilizar tecnologias da Web para a criação de seus aplicativos, o Firefox OS não exige acesso à Internet para usá-los. Os aplicativos, como jogos, são salvos na memória interna do aparelho e podem ser executados como em um smartphone convencional, a exemplo do Android, iOS e do Windows Phone.

Licenciamento[editar | editar código-fonte]

O Firefox OS é um produto comercializado pela Mozilla e que é baseado no projeto Boot to Gecko (B2G). B2G é o codinome do projeto de código aberto e livre mantido pela Mozilla em parceria com fabricantes e desenvolvedores independentes. A diferença entre ambos é que o Firefox OS adiciona ao Boot to Gecko marca, cores e outras características que estão registradas e definidas pela Mozilla.

A Mozilla impõe restrições para o uso do Firefox OS:

  • Adotar dispositivo complacente com open-source: o dispositivo deve atender aos requisitos e restrições das licenças open-source existentes no código-fonte do projeto e encorajar parceiros a se envolverem no projeto, contribuindo com código que pode ser utilizado pela Mozilla.
  • Ter os requisitos mínimos de hardware e desempenho definidos pela Mozilla e pela Open Web Device Complicance Review Board.
  • Garantir que qualquer mudança feita manterá a compatibilidade com a Web API e os aspectos de privacidade e segurança previamente definidos.
  • Fornecer atualizações por pelo menos 1 ano da data de lançamento

Caso um fabricante adote o Boot to Gecko em um dispositivo, a Mozilla reconhece três categorias de licenciamento que variam conforme o atendimento dos requisitos definidos:

  • Boot to Gecko: pode ser usado sem atender a nenhum requisito. Um exemplo de dispositivo que adota esse nível é o Geeksphone Revolution.
  • Powered By: alguns dos requisitos de uso do Firefox OS são atendidos, o que permite ao fabricante anunciar usar a marca Firefox OS, dizer que o dispositivo é um "Firefox OS" e os padrões de cores da marca. Como os requisitos míninos impostos pela Mozilla não precisam ser atendidos, este nível de licenciamento deve cobrir a maior partes dos dispositivos, inclusive dispositivos de baixíssimo custo, tablets, TVs e outros equipamentos.
  • Co Branded: todos os requisitos são atendidos e o aparelho passa a ter a marca dupla: do fabricante e do Firefox OS. Um exemplo de dispositivo é o Alcatel One Touch Fire.

Projeto aberto[editar | editar código-fonte]

O Boot to Gecko é um projeto open-source e livre. É possível obter todas as versões, incluindo anteriores, atual ou em desenvolvimento, a partir do repositório da Mozilla no Git Hub. Além do acesso à implementação, a lista de funcionalidades previstas para implementação está aberta ao público.

Arquitetura[editar | editar código-fonte]

Firefox OS arquitetura diagrama

A arquitetura Boot2Gecko é composta por três módulos: Gonk, Gecko e Gaia.

Gonk[editar | editar código-fonte]

É o "sistema operacional" de baixo nível. Essencialmente é o kernel Linux e a camada de abstração de hardware. O kernel é baseado no kernel da versão open source do Android, o Android Open Source Project (AOSP). O uso de parte do projeto AOSP permite ao Firefox OS usar ferramentas comuns às do desenvolvimento para Android, como o ADB e o fastboot. Outro benefício é o uso de drivers que dão suporte à ampla variedade de dispositivos Android disponíveis no mercado.

Gecko[editar | editar código-fonte]

Neste estão implementados os padrões HTML, CSS, JavaScript. Essa camada é uma versão do mesmo motor de layout utilizado no navedor Firefox. Ela permite que as interfaces e apps funcionem no próprio Firefox OS e em outros sistemas operacionais nos quais o navegador é utilizado.

Gaia[editar | editar código-fonte]

É a camada da interface gráfica do sistema operacional. Nela está implementados tudo que aparece quando o sistema operacional é carregado. Ou seja, tela de bloqueio, barra de notificações, discador, gerenciador de mensagens de texto, câmera e demais aplicações A interface é totalmente escrita em padrões aberto da Web: HTML, CSS e JavaScript.

Versões[editar | editar código-fonte]

Versão[8] Tornou-se Feature Complete (FC) em[9] Data de lançamento[10] Codinome Versão do Gecko
1.0 22 de dezembro de 2012 21 de fevereiro de 2013 TEF Gecko 18
1.0.1 15 de janeiro de 2013 6 de setembro de 2013 Shira Gecko 18[carece de fontes?]
1.1.0 29 de março de 2013 9 de outubro de 2013[11] Leo Gecko 18+ (nova APIs)
1.1.1 - HD Mesmo que a versão 1.1.0, mas com WVGA
1.2.0 15 de setembro de 2013 9 de dezembro de 2013 Koi Gecko 26[12]
1.3.0 9 de dezembro de 2013 17 de março de 2014 Gecko 28
1.4.0 17 de março de 2014 - Gecko 30

Desenvolvimento[editar | editar código-fonte]

O desenvolvimento de aplicativos no Firefox OS é simples e muito semelhante com as extensões do navegador Firefox. É necessário um arquivo "manifest" (no formato JSON), sendo este responsável por todas as informações que o aplicativo precisa para poder funcionar: (nome do app, versão, informações do desenvolvedor, APIs utilizados, permissões, etc.). As Apps são basicamente escritas em HTML, JavaScript e CSS, já que o sistema é baseado em tecnologia web.

Qualquer desenvolvedor pode submeter seus aplicativos no Marketplace (loja de aplicativos do Firefox OS), bem como distribuí-los em qualquer outros. [13]

Tipos de Apps[editar | editar código-fonte]

O Firefox OS possui três tipos de Apps:

  • Host App: são “Aplicativos Hospedados”, os tipos mais simples e comum de aplicativo. Como eles podem ser hospedados em locais variados e não passam pelo processo de análise da Política de Segurança de Conteúdo da Mozilla, eles não podem conseguir acesso a recursos mais sensíveis do sistema operacional, disponível pelas Web APIs.
  • Packaged App: chamado também de "Aplicativos Empacotados”, possui inúmeras vantagens em relação aos Host Apps -- dentre as quais, ter o conteúdo inteiramente salvo no aparelho após a instalação e poder ter acesso a recursos mais sensíveis do sistema operacional. São empacotados num arquivo ZIP contendo todos os arquivos do aplicativo, Manifest, HTML, CSS, imagens, JavaScript, etc.
  • Hybrid App: chamado também de "Aplicativos Híbridos”, sendo basicamente um Host App, porém, também consegue funcionar como um Packaged App. Esse tipo pode ser considerado uma junção dos pontos positivos dos 2 tipos anteriores.

[14]

Informações Técnicas[editar | editar código-fonte]

Por ser baseado em padrões e formatos abertos, em especial, da Web, os principais elementos suportados pelo Firefox OS envolvem as mesmas características.

Gráficos:

Áudio e Vídeo:

Proteção de Código:

IDEs e SDKs:

Exemplo de um "manifest":

{
	"name": "Meu Firefox OS App",
	"description": "Esta é uma descrição do que este App faz",
	"launch_path": "/",
	"icons": {
		"128": "/img/icon-128.png"
	},
	"developer": {
		"name": "Nome do Desenvolvedor",
		"url": "http://www.sitedodesenvolvedor.com.br"
	},
	"default_locale": "pt"
}

Referências

Ligações externas[editar | editar código-fonte]