Sistemas Embarcados Android



Documentos relacionados
Sistemas Embarcados Android

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

A plataforma Android: Uma Introdução

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Introdução a Computação Móvel

Android. Marcelo

O que é o Android? O que é o Android

EA998/MC933 Guido Araujo e Sandro Rigo

Introdução ao Android SDK. Prof. Me. Hélio Esperidião

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Desenvolvimento de um aplicativo básico usando o Google Android

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

Desenvolvimento de Aplicativos com ASR para Android

Seminário de S.O - Google Android

Manual de instalação e configuração da Ferramenta Android SDK

Programação para Dispositivos Móveis

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião

Sistemas Operacionais Introdução

06/06/2013. O que é Software de Sistema? Sistema Operacional (SO) Tipos de Software de Sistema. Fatia de Mercado :: SO Desktop

SISTEMA BASEADO EM LOCALIZAÇÃO DE SERVIÇOS DE TÁXI

Programação para Dispositivos Móveis

Desenvolvimento de Aplicativos com ASR para Android

C3SL - Centro de Computação Científica e Software Livre. Estudo sobre Android

OBJETIVO Criação e execução de um projeto Android dentro da IDE IntelliJ.

Desenvolvimento para Android Prá9ca 1. Prof. Markus Endler

Sistemas Operacionais

Computação II Orientação a Objetos

ESTUDO DE CASO WINDOWS VISTA

Sobre o Colméia: Grupo de pesquisa em Software e Hardware Livre. Software Livre não é só Linux!

Programação Palm OS. Roteiro da Apresentação. Motivação

PLATAFORMA ANDROID. Ariel Soares Teles

O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr

Introdução ao Android

DESENVOLVIMENTO EM DISPOSITIVOS MÓVEIS UTILIZANDO BANCO DE DADOS

LINUX. Lapro I Profa. Fernanda Denardin Walker. - Aula 2 - Material adaptado de: Isabel Mansour, Marcia Moraes e Silvia Moraes SISTEMA OPERACIONAL

Desenvolvimento de Aplicações Móveis: Presente, Passado e Futuro

IV SEMANA DE INFORMÁTICA. Prof. Rafael Hens Ribas

Introdução a Computação

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 24/09/2010. Carlos Eugênio Torres Engenheiro de Informática

Mapas e Localização. Programação de Dispositivos Móveis. Mauro Lopes Carvalho Silva

Minicurso - Android Fábio Silva / João Paulo Ribeiro

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

UM FRAMEWORK PARA DESENVOLVIMENTO DE

Circuito UNIFACS Semana SBC

Software Livre. Acesso ao código fonte Alterar o código fonte Redistribuir Utilizar como desejar

Arquitetura de Computadores. Introdução aos Sistemas Operacionais

Aplicações Móveis e sua aplicação na saúde: micd, exemplo prático

Sistema Operacional LINUX

RELATÓRIO FINAL DE PROJETO DE INICIAÇÃO CIENTÍFICA (PIBIC/CNPq/INPE)

UM FRAMEWORK DE REALIDADE AUMENTADA

SISTEMAS OPERACIONAIS. Maquinas Virtuais e Emuladores

Infra-Estrutura de Software. Introdução. (cont.)

Windows NT 4.0. Centro de Computação

Virtualização Gerencia de Redes Redes de Computadores II

Estrutura, Processos e Threads

Sistemas Operacionais

Frameworks para criação de Web Apps para o Ensino Mobile

Desenvolvimento para Android

Windows 8 no Surface, Data Dashboard e a evolução do mercado de tecnologia móvel

Gabriel Oliveira do Nascimento Rogério Libarino Aguilar. UFF - Universidade Federal Fluminense

EXPLORANDO TÉCNICAS E RECURSOS DO GERENCIADOR DE DADOS ABERTOS CKAN. TuaneFaria USP tuanefaria@yahoo.com.br

Sistemas Operacionais 1/66

Sistemas Operacionais. Roteiro. Sistemas de Computadores. Os sistemas de computadores são projetados com basicamente 3 componentes: Marcos Laureano

DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS. PROFª. M.Sc. JULIANA H Q BENACCHIO

Android Básico Hello World!

Como se tornar um desenvolvedor de plug-ins para AutoCAD e Revit

Agregador de feeds RSS para dispositivos móveis

Conceitos sobre Sistemas Operacionais. Técnico de Informática 2º. Módulo Profa. Madalena Pereira da Silva

Departamento de Engenharia e Ciências do Mar Licenciatura em Engenharia Informática e de Computadores Projeto Fim de Curso TÍTULO

Projeto de Sistemas Embarcados Microcontrolados

Seminário de Lei de Informática. Francisco Siqueira de Sousa Gerente Comercial

Artur Petean Bove Júnior Tecnologia SJC

Introdução. O que vimos. Infraestrutura de Software. (cont.) História dos Sistemas Operacionais. O que vimos 12/03/2012. Primeira geração:

Introdução ao Android. SECAP 2014 Prof. Rone Ilídio - UFSJ

Introdução à Plataforma Eclipse. Leandro Daflon

Prof. Victor Halla. Unidade IV FUNDAMENTOS DE SISTEMAS

Um estudo sobre Realidade Aumentada para a plataforma Android. Acadêmica Gabriela Tinti Vasselai Orientador Dalton Solano dos Reis

Professor: Roberto Franciscatto. Curso: Engenharia de Alimentos 01/2010 Aula 3 Sistemas Operacionais

Introdução ao Android. Programação Orientada a Objetos Prof. Rone Ilídio - UFSJ

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

Escola Adalgisa de Barros

SISTEMAS OPERACIONAIS. Apostila 03 Estrutura do Sistema Operacional UNIBAN

Produção de aplicativo de catálogo de cursos da UTFPR para o sistema Android

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

Java Básico. Aula 1 por Thalles Cezar

UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE INFORMÁTICA E ESTÁTISTICA GRADUAÇÃO EM CIÊNCIAS DA COMPUTAÇÃO DISCIPLINA: COMUNICAÇÃO DE DADOS

Introdução à Informática

4 Estrutura do Sistema Operacional Kernel

Programação para Android

Computação Instrumental

Resumo até aqui. Gerenciamento Proteção Compartilhamento. Infra-estrutura de Software

Resumo. Prof. Alejandro - Introdução à Sistemas Operacionais Resumo Informativo, complemente o material assistindo as Aulas 19/08/2015 1

Sistemas Operacionais

Sistemas Operacionais. Prof. M.Sc. Sérgio Teixeira. Aula 05 Estrutura e arquitetura do SO Parte 2. Cursos de Computação

Transcrição:

Engenharia Elétrica UFPR 7 de março de 2013

Outline Desenvolvido para sistemas móveis pelo Google: Android Open Source Project (AOSP) Grande sucesso, devido a combinação de: open source licensing aggressive go-to-market interface altamente amigável O Android também está atraindo a atenção de desenvolvedores de sistemas embarcados. Documentação: http://source.android.com

Histórico Em 2002 a empresa Danger Inc. desenvolve o sistema operacional Sidekick, para telefones O sistema não obteve sucesso. No entanto, o buscador padrão era o Google. Com o insucesso, o CEO Andy Rubin sai da empresa e cria a Android Inc. em 2003 e inicia o desenvolvimento de sistemas operacionais para telefones celulares. Em 2005, o Google compra a Android Inc.

Versões Outline Fonte: Embedded Android, Karim Yaghmour, O Reilly 2012

Application framework: disponível para desenvolvedores em http://developer.android.com Dalvik Virtual Machine: versão do Google para máquina virtual Java, com simplificações para melhorar o desempenho WebKit-based browser, pode ser usado e integrado pelas aplicações Interface gráfica: o Android possui sua biblioteca gráfica 2D, para 3d é usado o OpenGL ES

SQLite: parte do sistema, disponível aos aplicativos Media support: implementado pelo próprio sistema GSM telephony support: o fabricante deve fornecer os drivers Bluetooth, 3G, e WiFi: suporta a grande maioria dos dispositivos Camera, GPS, bússola, e acelerômetro: API para os aplicativos, fabricantes fornecem drivers Facilidades para desenvolvedores: SDK disponível gratuitamente, bem como emulador, plugin Eclipse e ferramentas de debug

SQLite: parte do sistema, disponível aos aplicativos Media support: implementado pelo próprio sistema GSM telephony support: o fabricante deve fornecer os drivers Bluetooth, 3G, e WiFi: suporta a grande maioria dos dispositivos Camera, GPS, bússola, e acelerômetro: API para os aplicativos, fabricantes fornecem drivers Facilidades para desenvolvedores: SDK disponível gratuitamente, bem como emulador, plugin Eclipse e ferramentas de debug

Multitasking Multi-touch Reconhecimento de comandos de voz VoIP / SIP

Ecosistema para divulgação de aplicativos: Android Market / Google Play; em 7/03/2013 com 600.000 aplicativos. Consistent app APIs: garantia de compatibidade da API de desenvolvimento com APIs antigas. O SO em si não tem garantias. Customizável (código fonte aberto); no entanto, o desenvolvimento é feito a portas fechadas pelo Google, sem participação da comunidade (como ocorre normalmente em sistemas open source). No entanto, a versão 3.0 não foi disponibilizada... Isto torna a plataforma muito interessante para desenvolvedores de sistemas embarcados, que buscam uma GUI que seja intuitiva e familiar ao usuário.

Requisitos de Hardware Android deve funcionar em qualquer plataforma que suporte o Linux. Principais plataformas: ARM, x86, MIPS, SuperH, e PowerPC. Ver pag. 16 do livro Embedded Android

Outline O Android roda sobre um núcleo Linux. O Linux provê: Camada de abstração de hardware. Gerência de memória. Gerência de processos. Suporte à rede. O usuário nunca tem contato com o Linux

Bionic, pequena e veloz libc (biblioteca), otimizada para uso em sistemas embarcados Surface Manager: window manager 2D and 3D graphics hardware support or software simulation Media codecs: support for major audio/video codecs SQLite database WebKit library: HTML rendering Fonte: marakana.com/training/android/

Outline Fonte: Embedded Android, Karim Yaghmour, O Reilly 2012

Android e Java Outline Fonte: Embedded Android, Karim Yaghmour, O Reilly 2012

Sistema de Arquivos Outline O sistema de aquivos possui três principais mount points: 1. um para o sistema 2. um para aplicações 3. um para outros Cada aplicação possui uma área acessível para ela; nenhum outro aplicativo pode acessar Teoricamente, podem ser utilizados todos os sistemas de arquivos implementados no Linux

Sistema de Arquivos Podem ser utilizados vários sistemas de arquivos. No entanto, parece estar sendo utilizado como padrão: 1. /system: yaffs2 2. /data: yaffs2 3. /sdcard: vfat No entanto, o fabricante pode alterar: Samsung Galaxy S usa Samsung RFS (proprietário). Nexus S (Samsung) com Android 2.3 usa Ext4. Existem relatos do uso até da FAT16 para o /system.

Implementação de processos Cada aplicação possui um processo no sistema. Cada aplicação possui seus arquivos de configuração com conjunto de preferências. Cada aplicação possui sua própria base de dados. Outras aplicações não podem acessar dados de outras aplicações, a não ser que que seja explicitamente compartilhado. 1. um para o sistema 2. um para aplicações 3. um para outros Cada aplicação possui uma área acessível para ela; nenhum outro aplicativo pode acessar É esperada a existência de SDCard, com acesso permitido para todos os aplicativos