Globalcode – Open4education
Trilha – Internet das Coisas
Marco Antonio Maciel
Java + Embedded + IoT + Maker
@marcomaciel
Globalcode – Open4education
Java 8 em 256KB de RAM
Marco Antonio Maciel
Java + Embedded + IoT + Maker
@marcomaciel
Globalcode – Open4education
Agenda
Por que Java ME 8?
Java ME 8: Overview e características
Java 8 on Freescale FRDM-K64F
Demonstração
Conclusão
Globalcode – Open4education
PORQUE JAVA ME 8?
Globalcode – Open4education
Java Embedded para
Serviços de IoT
Globalcode – Open4education
Desafios Atuais:
Indústria de embarcaods
Variedade de dispositivos
Segurança e privacidade
Automatização (sem o
controle humano)
Ciclo de vida do
dispositivo longo
Conectividade, custo de
infra-estrutura, largura de
banda
Custo de dispositivos,
requisitos de energia
Globalcode – Open4education
Desafios Atuais:
Indústria de embarcaods
Variedade de dispositivos
Segurança e privacidade
Automatização (sem o
controle humano)
Ciclo de vida do
dispositivo longo
Conectividade, custo de
infra-estrutura, largura de
banda
Custo de dispositivos,
requisitos de energia
Gerenciamento e
monitoramento
O fluxo de dados e análise
Padrões e Interoperabilidade
Produtividade do
desenvolvedor
Custo de desenvolvimento,
re-uso, conjuntos de
habilidades
Time-to-market
Globalcode – Open4education
Java ME 8: Motivadores
Exigências Descrição
Plataforma moderna
de software
embarcado
• Ambiente robusto, seguro, multi-plataforma
• Sistema de software modular e de operação remota que estende
valor do produto e reduz o custo / risco
• Plataforma rica em recursos e focada em valor agregado
Desenvolvimento de
software e modelo de
implantação eficientes
• Aborda os desafios do desenvolvimento incorporado tradicional
• Acelera o time-to-market
• Habilita a portabilidade de software e economias de escala
• Entrega um grande ecossistema de especialização e parceiros
Aumento do alcance
de mercado
• Plataforma permite abordar vasta gama de casos de uso e
mercados-alvo com um modelo de software único, a partir de
dispositivos de baixa capacidade até os mais poderosos
Aberto, baseado em
padrões e
interoperável
• Evita vendor lock-in
• Beneficia a inovação tecnológica
• Integrável com muitos padrões da indústria
Globalcode – Open4education
JAVA ME 8: OVERVIEW E
CARACTERÍSTICAS
Globalcode – Open4education
Unificar o Ecossistema
Java para o Embedded
Princípios fundamentais
Java ME 8 é o "irmão menor" de Java SE 8
Portabilidade de aplicações e bibliotecas entre as
plataformas Java
Java ME vs Java SE agora é uma decisão baseada em
footprint/funcionalidades
Ciclos de lançamento Java ME e Java SE estão em
sincronia
Globalcode – Open4education
Unificar o Ecossistema
Java para o Embedded
Benefícios
Plataforma moderna e flexível para a entrega de
software embarcado
Unificação da experiência de desenvolvimento e
comunidade Java
Alinhamento da linguagem Java, APIs, desenvolvimento
e ferramentas
Habilitar 9+ milhões de desenvolvedores Java para
desenvolver para o Java Embedded
Globalcode – Open4education
Mercado Alvo
Small to mid-embedded cobrindo uma ampla gama
de Casos de uso / mercados
Dispositivos da borda (edge) inteligentes
Nós de comunicação
Dispositivos de cuidados de saúde (helthcare)
Sensores inteligentes (smart sensors)
Medidores inteligentes (smart meter)
Soluções gerais da Internet das coisas / M2M
Globalcode – Open4education
Espectro Java Embedded
Globalcode – Open4education
Java ME 8
Overview da Plataforma
Globalcode – Open4education
Ferramentas:
Java ME SDK e IDEs
Java ME SDK
Ferramentas e emulação para desenvolvimento rápido
de aplicações Java ME embarcadas
NetBeans & Eclipse
Integração com o Java ME SDK
Ambiente de desenvolvimento completo e integrado
Experiência de desenvolvimento unificada
Mesmo modelo de desenvolvimento para Java ME, Java
SE e Java EE
Globalcode – Open4education
Diagrama
Globalcode – Open4education
JAVA 8 ON FRDM-K64F
Globalcode – Open4education
Freescale FRDM-K64F
Kinetis K64
120 MHz, 1 MB flash memory, 256 KB RAM
Rodando mbed RTOS
Compatível com Arduino
Aproximadamente $30.00
19
Globalcode – Open4education
Java 8 for ARM Cortex-
M3/M4 Micro-Controllers
Java ME Embedded 8.1
Supports Freescale FRDM-K64F
Kinetis K64F, 120 MHz, 256 KB RAM /1 MB Flash, running ARM mbed OS
Arduino form-factor and pin-out. Approx. $30 street price
Java ME 8 functionality on small embedded & IoT devices
Feature-rich, optimized Java ME 8 runtime in 190 KB RAM, enabling highly
functional Java Embedded applications on single-chip micro-controller systems
Simple installation
Support for Java 8 language, core APIs, networking, device I/O, storage, and
more
Rich development and tooling via Java ME SDK 8.1 and NetBeans 8 IDE
Complements existing Java ME 8 platforms such as Raspberry Pi, scaling Java
ME 8 from large to small
Ideal for evaluation and prototyping of small embedded & IoT solutions
FREE download available now via Oracle Technology Network (OTN)
Globalcode – Open4education
Java ME 8 on FRDM-K64F
Globalcode – Open4education
DEMONSTRAÇÃO
Globalcode – Open4education
Requisitos
Netbeans 8
http://netbeans.org
Java ME 8 SDK
http://bit.ly/Java-ME-Embedded-Downloads
mbed Firmware FRDM K64F
http://mbed.org/handbook/Firmware-FRDM-K64F
Globalcode – Open4education
CONCLUSÃO
Globalcode – Open4education
Java ME 8:
Principais Recursos
Alinhamento com a plataforma Java SE
Concebido para ser embarcado
Altamente portável e escalável
Consistente entre dispositivos
Plataforma avançada para aplicações
Compatível com APIs padrões existentes
Ferramentas dedicadas ao desenvolvimento
embarcado
Globalcode – Open4education
Java ME 8 Resources
Java ME 8 Oracle Technology Network (OTN)
Free for development and evaluation purposes
Oracle Java ME Embedded 8.1
Oracle Java ME SDK 8.1
http://bit.ly/Java-ME-Embedded-Downloads
Java ME 8 Documentation
Developer Preview on FRDM-K64F: Release Notes, Getting
Started Guide
Java ME 8 Developer Guide, plus new chapter: Java ME
Optimization Techniques
Full Java ME 8 API doc set
http://docs.oracle.com/javame/8.0/
Globalcode – Open4education
Java on K64F get started
http://docs.oracle.com/javame/8.1/get-started-freescale-k64/toc.htm
Globalcode – Open4education
Perguntas e Obrigado
Marco Antonio Maciel
Java Embedded & Internet of Things
marco.maciel@oracle.com
@marcomaciel
http://mmaciel.com.br

TDC 2015 - Java 8 em 256 KB de memória RAM

  • 1.
    Globalcode – Open4education Trilha– Internet das Coisas Marco Antonio Maciel Java + Embedded + IoT + Maker @marcomaciel
  • 2.
    Globalcode – Open4education Java8 em 256KB de RAM Marco Antonio Maciel Java + Embedded + IoT + Maker @marcomaciel
  • 3.
    Globalcode – Open4education Agenda Porque Java ME 8? Java ME 8: Overview e características Java 8 on Freescale FRDM-K64F Demonstração Conclusão
  • 4.
  • 5.
    Globalcode – Open4education JavaEmbedded para Serviços de IoT
  • 6.
    Globalcode – Open4education DesafiosAtuais: Indústria de embarcaods Variedade de dispositivos Segurança e privacidade Automatização (sem o controle humano) Ciclo de vida do dispositivo longo Conectividade, custo de infra-estrutura, largura de banda Custo de dispositivos, requisitos de energia
  • 7.
    Globalcode – Open4education DesafiosAtuais: Indústria de embarcaods Variedade de dispositivos Segurança e privacidade Automatização (sem o controle humano) Ciclo de vida do dispositivo longo Conectividade, custo de infra-estrutura, largura de banda Custo de dispositivos, requisitos de energia Gerenciamento e monitoramento O fluxo de dados e análise Padrões e Interoperabilidade Produtividade do desenvolvedor Custo de desenvolvimento, re-uso, conjuntos de habilidades Time-to-market
  • 8.
    Globalcode – Open4education JavaME 8: Motivadores Exigências Descrição Plataforma moderna de software embarcado • Ambiente robusto, seguro, multi-plataforma • Sistema de software modular e de operação remota que estende valor do produto e reduz o custo / risco • Plataforma rica em recursos e focada em valor agregado Desenvolvimento de software e modelo de implantação eficientes • Aborda os desafios do desenvolvimento incorporado tradicional • Acelera o time-to-market • Habilita a portabilidade de software e economias de escala • Entrega um grande ecossistema de especialização e parceiros Aumento do alcance de mercado • Plataforma permite abordar vasta gama de casos de uso e mercados-alvo com um modelo de software único, a partir de dispositivos de baixa capacidade até os mais poderosos Aberto, baseado em padrões e interoperável • Evita vendor lock-in • Beneficia a inovação tecnológica • Integrável com muitos padrões da indústria
  • 9.
    Globalcode – Open4education JAVAME 8: OVERVIEW E CARACTERÍSTICAS
  • 10.
    Globalcode – Open4education Unificaro Ecossistema Java para o Embedded Princípios fundamentais Java ME 8 é o "irmão menor" de Java SE 8 Portabilidade de aplicações e bibliotecas entre as plataformas Java Java ME vs Java SE agora é uma decisão baseada em footprint/funcionalidades Ciclos de lançamento Java ME e Java SE estão em sincronia
  • 11.
    Globalcode – Open4education Unificaro Ecossistema Java para o Embedded Benefícios Plataforma moderna e flexível para a entrega de software embarcado Unificação da experiência de desenvolvimento e comunidade Java Alinhamento da linguagem Java, APIs, desenvolvimento e ferramentas Habilitar 9+ milhões de desenvolvedores Java para desenvolver para o Java Embedded
  • 12.
    Globalcode – Open4education MercadoAlvo Small to mid-embedded cobrindo uma ampla gama de Casos de uso / mercados Dispositivos da borda (edge) inteligentes Nós de comunicação Dispositivos de cuidados de saúde (helthcare) Sensores inteligentes (smart sensors) Medidores inteligentes (smart meter) Soluções gerais da Internet das coisas / M2M
  • 13.
  • 14.
    Globalcode – Open4education JavaME 8 Overview da Plataforma
  • 15.
    Globalcode – Open4education Ferramentas: JavaME SDK e IDEs Java ME SDK Ferramentas e emulação para desenvolvimento rápido de aplicações Java ME embarcadas NetBeans & Eclipse Integração com o Java ME SDK Ambiente de desenvolvimento completo e integrado Experiência de desenvolvimento unificada Mesmo modelo de desenvolvimento para Java ME, Java SE e Java EE
  • 16.
  • 17.
  • 18.
    Globalcode – Open4education FreescaleFRDM-K64F Kinetis K64 120 MHz, 1 MB flash memory, 256 KB RAM Rodando mbed RTOS Compatível com Arduino Aproximadamente $30.00 19
  • 19.
    Globalcode – Open4education Java8 for ARM Cortex- M3/M4 Micro-Controllers Java ME Embedded 8.1 Supports Freescale FRDM-K64F Kinetis K64F, 120 MHz, 256 KB RAM /1 MB Flash, running ARM mbed OS Arduino form-factor and pin-out. Approx. $30 street price Java ME 8 functionality on small embedded & IoT devices Feature-rich, optimized Java ME 8 runtime in 190 KB RAM, enabling highly functional Java Embedded applications on single-chip micro-controller systems Simple installation Support for Java 8 language, core APIs, networking, device I/O, storage, and more Rich development and tooling via Java ME SDK 8.1 and NetBeans 8 IDE Complements existing Java ME 8 platforms such as Raspberry Pi, scaling Java ME 8 from large to small Ideal for evaluation and prototyping of small embedded & IoT solutions FREE download available now via Oracle Technology Network (OTN)
  • 20.
  • 21.
  • 22.
    Globalcode – Open4education Requisitos Netbeans8 http://netbeans.org Java ME 8 SDK http://bit.ly/Java-ME-Embedded-Downloads mbed Firmware FRDM K64F http://mbed.org/handbook/Firmware-FRDM-K64F
  • 23.
  • 24.
    Globalcode – Open4education JavaME 8: Principais Recursos Alinhamento com a plataforma Java SE Concebido para ser embarcado Altamente portável e escalável Consistente entre dispositivos Plataforma avançada para aplicações Compatível com APIs padrões existentes Ferramentas dedicadas ao desenvolvimento embarcado
  • 25.
    Globalcode – Open4education JavaME 8 Resources Java ME 8 Oracle Technology Network (OTN) Free for development and evaluation purposes Oracle Java ME Embedded 8.1 Oracle Java ME SDK 8.1 http://bit.ly/Java-ME-Embedded-Downloads Java ME 8 Documentation Developer Preview on FRDM-K64F: Release Notes, Getting Started Guide Java ME 8 Developer Guide, plus new chapter: Java ME Optimization Techniques Full Java ME 8 API doc set http://docs.oracle.com/javame/8.0/
  • 26.
    Globalcode – Open4education Javaon K64F get started http://docs.oracle.com/javame/8.1/get-started-freescale-k64/toc.htm
  • 27.
    Globalcode – Open4education Perguntase Obrigado Marco Antonio Maciel Java Embedded & Internet of Things marco.maciel@oracle.com @marcomaciel http://mmaciel.com.br