Catégorie : Raspberry PI

Article sur le Raspberry PI

Les différentes VM Java (JVM)

Il existe plusieurs VM Java pour différent système d’exploitation (voir la liste si dessous).

Dans ma recherche de binaire JVM  exploitable en production, sur des systèmes Windows, Mac, Linux, et pouvant être packager dans un kit d’installation j’ai référencé 3 JVM  :

Toutes sont basées sur OpenJDK et supportent les versions 8 et 11 de Java.
Dans cette liste, la version Hotspot d’Oracle à deux URLs de téléchargement adoptopenjdk et java.net. Le binaire qui se trouve chez Oracle (java.net) ne permet plus d’être package dans un kit d’installation et sa mise à jour nécessite un accord commercial avec Oracle (payant).

Il reste donc deux sites web ou trouvera un binaire pour Windows, Linux, Mac :

Si vous votre cible est Linux, je vous conseille d’étudier l’usage de Grall VM CE qui génère un exécutable (et donc, accélère les lancements)

Si votre cible est un mini-ordinateur (ex Raspberry PI) ou un mini soc (Arduino , ATmega328p) , de regarder du côté de  Haiku

Pour plus de détail, regarder la liste si dessous.

Liste des JVM libres

Nom Sytème d’exploitation Particularités
Amazon Corretto
  • Linux
  • MacOs
  • Windows
  • Docker
Implémentation Java par Amazone. Utilisé sur ses serveurs AW cloud

Licence : « Amazon Corretto peut être téléchargé et utilisé gratuitement. Il n’y a aucune restriction ou fonctionnalité payante supplémentaire. »

Web : https://aws.amazon.com/fr/corretto/

Azul Zulu
  • Linux
  • iOS
  • Windows
Libre à télécharger pour utilisation.

A priori libre pour projet OpenSource, sinon payant.

Si vous voulez la fournir  dans un « objet » c’est payant 😉

Mais c’est une des rares JVM à pouvoir faire du temps réel.

Web : https://www.azul.com/downloads/zulu/#mac

Bck2Brwsr Navigateur Internet (Moderne et IE 10+) Convertie le Byte code Java en JavaScript

Web : http://wiki.apidesign.org/wiki/Bck2Brwsr

CACAO Étude académique

Utilise GNU classpath

Licence : GPL 2

Web : http://www.cacaojvm.org/

Codename One / ParparVM
  • iOS
JVM fournit par Codename pour le portage d’application Java

https://github.com/codenameone/CodenameOne/tree/master/vm

DoppioJVM
  • Navigateur Internet
JVM (Java 8) écrite en JavaScript pour fonctionner sur les navigateurs Internet

web : https://plasma-umass.org/doppio-demo/

Eclipse OpenJ9
  • MacOS
  • Linux
  • Windows
Développé par IBM et Apache.

Licence : Apache 2

web : https://www.eclipse.org/openj9/

https://adoptopenjdk.net

GraalVM CE
  • Linux x86/x64)
  • Mac
VM polyglotte (Java, JavaScript, Scala, Kotlin, Clojure, NodeJS, Ruby, R, Python, ..) qui compile l code et donne un exécutable sous Linux ou MaOS

Web : https://www.graalvm.org/

HaikuVM
  • Arduino
  • Raspberry PI 3
  • esp8266
  • La brique Lego RCX
  • AVR (e.g. ATmega8, ATmega328p),
  • UBUNTU,
  • WINDOWS
  • ASURO robot
Rapide

Très peu gourmande en mémoire

Acsés directe à la mémoire et au x entrés/sortie (IO)

Fonction  C/C++ et bibliothèque directement appelable au travers d’annotation @NativeCFunction / @NativeCppFunction

Site : https://sourceforge.net/projects/haiku-vm/

HotSpot
  • Linux
  • MacOS
  • Windows
La version Oracle de la JVM Java.

web : http://openjdk.java.net/groups/hotspot/

Jamiga
  • AmigaOS (68k)
  • AmigaOS 4 (PPC)
  • AROS (x86)
  • MorphOS (PPC)
VM Java pour Amiga.

Licence : GPL

Web : https://github.com/jaokim/jamiga-jamvm

JamVM
  • Linux: x86, x86_64, ARM, PowerPC, PowerPC64(*), MIPS, HPPA
  • FreeBSD: x86, x86_64, ARM, PowerPC, PowerPC64(*), SPARC(*)
  • OpenBSD: x86, x86_64, ARM, PowerPC, PowerPC64(*), SPARC(*)
  • Mac OS X/Darwin: x86, x86_64, ARM, PowerPC, PowerPC64
  • Solaris/OpenSolaris: x86, x86_64
  • KFreeBSD: x86
JVM désigné pour être compacte

Dernière version date de 30 juillet 2016

supporte Java 6, 7, 8

Utilise le classpath de GNU

Licence : GPL

Web : http://jamvm.sourceforge.net/

Jelatine JVM
  • Unix
JVM de Java 2 Micro Edition

Web : https://sourceforge.net/projects/jelatine/

Jikes RVM
  • IA-32 Linux ®
  • PowerPC 64 Linux ® (big endian)
  • OS X
  • Solaris
  • PowerPC 32
JVM désigné pour l’étude  et la recherche de VM.

Licence : Eclipse Public License

JVM.go JVM Java écrit en go

Web : https://github.com/zxh0/jvm.go

leJOS
  • Lego MindsStorms
JVM Java dédié à Lego MindsStorms

Web : http://www.lejos.org/

Maxine
  • MacOs
  • x64,
  • ARM32,
  • AArch46,
  • RISC-V
  • Linux Ubuntu 16.04/18.04 sur :
    • x86,
    • Aarch64,
    • ARMv7
Licence : GPL 2

Web : https://github.com/beehive-lab/Maxine-VM

Multi-OS Engine MacOS Portez vos applications Android ou écrivez des applications Java pour Mac

Web : https://multi-os-engine.org/

RopeVM JVM de projet de recherche Chinois.

Développer par des Chinois.

Web (chinois) : https://github.com/duyanning/ropevm

 

Liens utiles (en Anglais) :

Étude sur les différences des JVM: https://en.wikipedia.org/wiki/Comparison_of_Java_virtual_machines

Liste des JVM passés et présente : https://en.wikipedia.org/wiki/List_of_Java_virtual_machines

Zulu une JVM Java Embedded pour Raspberry PI (Linux)

Sur Raspberry PI, Oracle a mis à disposition sa propre JVM Java pour ARM 32 et 64 Bits. Mais ce n’est pas la seule, il existe aussi un port open-source certifié par l’OpenJDK : « Zulu Embedded » .

Zulu Embedded, est libre, pas de licences à payer et il est également plus performant que le port de l’OpenJDK réalisé par Debian qui n’est pas optimisé  pour l’architecture ARM.

Vous pouvez demander une version de test auprès de « Zulu embedded » sur la page suivante :

http://info.azul.com/2015-WEB-DL-Zulu-Embedded-Registration-LP.html

Remplissez le formulaire et choisissez « Zulu embbeded ARM » dans la liste déroulante du bas « Product of interest ».
Une fois télécharger l’archive copier là dans votre dossier utilisateur de Raspberry PI.

  • décompresser l’archive :
    mkdir ~/zulu
    tar xvfpz zre-1.8.0_60-8.9.0.6-cp1-eval-linux_aarch32.tar.gz -C -C ~/zulu
    
  • Pour installer cette version de Java faire :
sudo update-alternatives --install /usr/bin/java java ~/zulu/ezre-1.8.0_60-8.9.0.7-cp3-eval-linux_aarch32/bin/java 100
  • pour activer « Zulu Embedded » faire:
sudo update-alternatives --config java
  • puis dans la liste des versions alternatives de Java qui est proposé,  sélectionnez la ligne correspondant à « Zulu Embedded« .
  • Pour vérifier que Java est bien installé, tapez la ligne de commande suivante :
java -version

Vous devriez voir quelque chose comme :

openjdk version "1.8.xx_xx-Zulu-Embedded"
OpenJDK Runtime Environment (build 1.8.x_xx-Zulu-Embedded-EA3, profile compact1)
OpenJDK Minimal VM (build XX.XX-xx, mixed mode, Evaluation)

 

Édito du 13 juin 2016, Gratuité et télémétrie un virus qui vous veux du bien

Cette dernière année, en particulier ses derniers mois Microsoft essaient de vous faire migrer vers Windows 10 de manière plus ou moins honnête. Et cette dernière semaine on apprend qu'il insère un module de télémétries dans votre dos, lorsque vous compilez vos programmes C++ avec leurs outils Visual Studio 15. J'en suis venu à me demander pour quelle raison ?
En gros, j'ai l'impression que Microsoft fait tout pour pouvoir récupérer nos données d'usages sur nos ordinateurs.
Dans quel but ? Pour les vendre ? ...

Lire la suite

Quelques nouvelles d’EclipseCon 2016

Voici quelques informations non exhaustive EclipseCon 2016

Annonce de « Eclipse Che » l’espace de travail universel depuis le Web :

  • SAP annonce un nouveau IDE Web « Hana » basé sur Che.
  • L’intégration de Microsoft dans l’équipe « Team Foundation »
  • itération de Red Hat avec sa solution OpenShift
  • le support d’IBM dans la collaboration avec Eclipse Orion et Eclipse Che

Microsoft rejoint la Fondation Eclipse en tant que « Solution member »

Quelques annonces sur l’IoT (Internet des objets)

  • Microsoft annonce sa contribution à Eclipse Kura.
    Kura est un framework Java basé sur OSGi pour des portails IoT.
    Il fonctionne sur Raspberry PI, BeagleBone Black en permettant l’accès au matériel sous-jacent (portes série, GPS, chien de garde, GPIO, I2C, etc.), ainsi qu’a la gestion des configurations réseau…
  • MicroEJ est le « leadership » dans le projet Eclipse Edje.
    MicroEJ c’est une solution de création d’applications embarquées intelligentes et elle permet de les déployer partout, et sur tout dispositif.
  • Annonce des gagnants du chalenge « Open IoT« .
    Vous trouverez la liste (en anglais) sur https://www.eclipse.org/org/foundation/eclipseawards/winners16.php

 

source : https://ianskerrett.wordpress.com/2016/03/11/eclipsecon-wrap-up-eclipse-che-microsoft-and-much-more/

Enfin un Raspberry PI 3 avec du Wifi

Ce Week-end a était mouvementé pour le Raspberry. Dimanche les sites sur Raspberry PI annoncés la venu prochaine d’un Raspberry PI 3 avec WiFi en se basant sur un document d’homologation US.

Finalement se matin vers 8h il est proposé à la vente chez tous les revendeurs Kubii, Mc Hobby, … au même prix que le Raspberry 2

Au programme :

  • WiFi + Bluetooth intégré
  • soc CPU BCM2837 64Bits à 1200Mhz qui remplace le soc BCM2836 32 Bits 900Mhz . soit un gain de 33%
  • 1 Go
  • micro SD
  • Ethernet 100
  • USB 2 supportant jusque 2.4 Ampères
  • un nouveau boitier, car les diodes lumineuses on changés de places (Elles sont à gauches et plus droite du connecteur de la camera).
    Ce dernier boitier ressemble à l’ancien (voir l’article : Boitiér officiel Raspberry PI)
  • une nouvelle alimentation, plus puissante pour pouvoir répondre au besoin éventuel des périphériques USB 2.4 A

Vous trouve de plus amples informations sur le site de la fondation Raspberri PI , dans la presse informatique …

J’ai particulièrement aimé l’article fait sur le blog de Franboise « Raspberry Pi 3 : Quoi de neuf, docteur ? ».

 

Boitier officiel du Raspberry PI

J’ai pensé vous faire partager mon avis sur le dernier boitier Raspberry PI.

Boitier Raspberry PI

Le boitier est pensé pour :

  • être beau, avec un mélange de blanc et de rose fuchsia
  • de bonne finition. Le plastique utilisé est très agréable au touché et est de très bonne qualité.
  • ergonomique. Il laisse la connectique du PI disponible et facile d’accès
  • pensé pour être pratique. Diverses parties peuvent se déboiter pour permettre l’accès aux connecteurs du PI.
  • l’accès à la microcarde SD est très bien pensé. Il est possible de la changer sans ouvrir le couvercle.
    Et celle-ci ne dépasse pas des bords du boitier. Ça évite d’appuyer dessus par erreur.
  • affichage des témoins lumineux : allumé, accès disque
  • dessous quatre tampons plastique mou transparent servent de pieds.

Je vous le recommande …

Voici des photos :

Un Rasberry PI Zero à 5$

Un nouveau Raspberry vient de sortie le « Raspberry PI Zero ».

Trois points forts :

  1. Il est tout petit 65mm x 30mm, soit plus petit qu’une carte de crédit !
  2. plus rapide que le Rapberry PI de 40%
  3. Et son prix est tout petit : 5$.

Il ne lui manque qu’une entré réseau, mais l’ajout d’une clé USB WiFi y remédiera surement.

Caractéristiques du Raspberry PI Zero

  • Processeur : Broadcom BCM2835
  • Fréquence processeur : 1GHz ARM11 (plus rapide que le 40% Raspberry Pi 1)
  • Mémoire RAM : 512Mo LPDDR2
  • Un  port micro-SD
  • une sortie vidéo mini-HDMI de 1080×60
  • un port micro-USB
  • un port micro-USB pour l’alimentation
  • GPIO de 40 broches identique à celui des modèles A+/B+/2B
  • une sortie vidéo composite
  • Dimension : 65mm x 30mm x 5mm
  • Prix  : 5$

Sources

une vidéo YouTube: https://www.youtube.com/watch?v=NFFQmdUc5Vg&feature=youtu.be&a