18.05.2014 Views

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SISTEMA EMBARCADO DE AQUISIC¸ ˜AO DE DADOS ...

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

• Disponibilidade de engenheiros com conhecimento da linguagem e hardware<br />

do sistema embarcado utilizado;<br />

• Se a linguagem permite desenvolver facilmente interfaces com sistemas já existentes,<br />

como banco de dados;<br />

• Existência de um legado de software;<br />

• Como a linguagem pode refletir no custo final do sistema.<br />

Pelos fatores expostos acima, em nosso estudo de caso, somente duas linguagens<br />

participaram do processo de seleção: C e Java. Além dos fatores expostos acima, o<br />

processo de seleção deve ser feito por pessoas que tenham reconhecido conhecimento<br />

das linguagens, mas que separem muito bem fatores técnicos de fatores emocionais.<br />

Tanto (NAIDITCH 1998), (MOREIRA et al. 1998), (MAURER 2002) fazem<br />

estudos comparativos entre várias linguagens. Vamos relacionar alguns itens que<br />

necessitam de melhor esclarecimento, pois estão relacionadas com nosso estudo de<br />

caso. São eles:<br />

C é mais eficiente que Java, pois está mais perto do código assembly.<br />

Devido ao fato de Java fazer uso intensivo de estrutura de dados dinâmica (alocação<br />

de memória) e por ter um automático garbage collection (limpeza de uma parte da<br />

memória cujos dados não estão mais em uso) e geralmente ser interpretada é mais<br />

lenta que C. O último problema pode ser suavizado se um compilador nativo (justin-time<br />

(JIT) ) estiver disponível. Em (http://shootout.alioth.debian.org) pode-se<br />

verificar que na maior parte dos benchmarks a linguagem C executa programas mais<br />

rapidamente que implementações em Java.<br />

(MOREIRA et al. 1998) fazem uma comparação de computação numérica entre<br />

Java e C/C++. Os resultados para puro Java são desapontadores. Descaracterização<br />

da linguagem JAVA podem aumentar o seu desempenho, mas não são boas<br />

práticas de programação. Por exemplo, desabilitar checagem de arrays em tempo<br />

de execução.<br />

Fizemos um teste comparativo entre dois módulos microcontrolados de 8 bits na<br />

mesma faixa de preço (em torno de US$50),conforme Tabela 7.1, usando algoritmo<br />

186

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!