J2ME – Embedded systems

Java oferece algumas características que a torna bom para o desenvolvimento de software para sistemas embarcados, tais como:
– portabilidade;
– reuso de código;
– confiabilidade;
– segurança;
– conectividade com a Web;
– …

As plataformas Java mais conhecidas são:
• J2SE
– Contém as classes principais da plataforma Java, e é chamado de Core Java Plataform;
• J2EE
– É um conjunto de tecnologias que fornecem APIs e um ambiente para desenvolvimento e execução de aplicações coorporativas;
• J2ME
– É o Java para o desenvolvimento de software para sistemas embarcados.

Por que o J2ME?
A natureza dos dispositivos móveis mudou.
• Antigos Dispositivos: Todo o software era feito pelo fabricante;
• Novos Dispositivos: O software pode ser personalizado e “carregado”;
• Implementações disponíveis em vários dispositivos móveis;
• Milhões de usuários na Asia, Europa e América do Norte utilizam a tecnologia J2ME.

O J2ME é uma versão reduzida das plataformas JAVA existentes que permite que aplicativos sejam criados para dispositivos móveis com diversas vantagens (Java):
• Projetado para dispositivos com limitações de memória, tela e processamento;
• Com o J2ME é possível que dispositivos móveis possam fazer download de aplicações Java, semelhante à tecnologia Java Applets;
• Apesar das semelhanças, um Applet Java utiliza a API J2SE, enquanto que um aplicativo J2ME utiliza a API J2ME (sem várias funcionalidades do
J2SE, como o não suporte a API Swing).

As funcionalidades de dispositivos que rodam J2ME variam enormemente. Por exemplo, um celular possui, normalmente, uma resolução de tela menor, do que um Palm.

Para que o J2ME possa ser utilizado por todos os dispositivos foram definidos os conceitos de configurações e perfis.

CONFIGURAÇÕES
• Define o mínimo da tecnologia Java que o desenvolvedor pode esperar de uma “família” de dispositivos.
• Define um conjunto de tecnologias que são suportados pelos aparelhos (como máquina virtual e APIs básicas).
• Configurações são especificadas nas JCPs.

A tecnologia J2ME define duas configurações básicas:
CDC (Connected Device Configuration)
• Para dispositivos, geralmente, fixos (TV Digital, sistemas automotivos) com uma quantidade razoável de processamento ou memória.
CLDC (Connected Limited Device Configuration)
• Para dispositivos móveis (celular, pager, Palm) que apresentam grandes restrições de recursos.

CDC
• Implementação completa da JVM tradicional;
• 512 KB (mínimo) de memória (ROM) para rodar Java;
• 256 KB (mínimo) de memória (RAM);
• Conectividade de rede, possivelmente persistente e de alta velocidade. Processadores de 32 bits;
• Mais de 2MB de memória total para o armazenamento da máquina virtual e bibliotecas de classe;
• Interface com usuário com variado grau de sofisticação.

CLDC
• 128 KB (mínimo) de memória (ROM) para rodar Java;
• 32 KB (mínimo) de memória (RAM);
• Interface do usuário limitada;
• Baixa potência de bateria;
• Conectividade de rede, tipicamente sem fio, com baixas velocidades (9600bps ou menos) e acesso não-contínuo;
• processador de no mínimo 16 bits com baixo consumo (adequado a baterias típicas de um celular).

PERFIS
• Os perfis procuram prover mais serviços além dos requisitados pelas configurações, sendo específicos para um conjunto de dispositivos ou a um mercado particular. O perfil apenas acrescenta funcionalidades para aquele aparelho.
• Por exemplo, os telefones celulares e os Palms utilizam a mesma configuração (CLDC), contudo possuem limitações diferentes;
• Um perfil é uma extensão a configuração, oferecendo bibliotecas específicas para escrever aplicações para um dispositivo específico;
• A tecnologia J2ME define os seguintes perfis:
– MIDP (Mobile Information Device Profile), direcionado a pequenos dispositivos (CLDC).
– Foundation Profile, para dispositivos não ligados em rede (CDC).
– Personal Basis, Personal and RMI Profiles, para dispositivos ligados em rede, oferecendo suporte de rede (RMI) e gráfico (CDC).
• Toda aplicação MIDP é chamada de “MIDlets”;
• As especificações MIPD consistem:
– conjunto de bibliotecas requeridas para um tipo particular de dispositivo;
– especificação de uma máquina virtual Java;
– funcionalidades de uso (interfaces);
– armazenamento de dados local;
– funcionamento em rede;
– execução das aplicações.

JVM
• A CDC utiliza a JVM J2SE.
• A CLDC utiliza uma JVM “limitada” conhecida como KVM.

KVM necessita:
– entre 40 e 80 KB de memória;
– somente 20 a 40 KB de memória heap;
– ser executado em processadores de 16 bits com
freqüência de 25 MHz.

ARQUITETURAS

GENÉRICA
Perfis
Configurações
Java Virtual Machine
Sistema Operacional

CELULAR
MDIP
CLDC
KVM
Sistema Operacional

[ ]´s
Francismar|Padawan

No comments yet

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: