Voici la présentation d'Adrien Grassein, Technical Expert en logiciel embarqué chez Smile, lors du petit déjeuner technique [ROM Android Customs] du 29 juin 2018.
Voici la présentation d'Adrien Grassein, Technical Expert en logiciel embarqué chez Smile, lors du petit déjeuner technique [ROM Android Customs] du 29 juin 2018.
Suite au webinaire d'introduction à FireDAC avec la VCL il était logique de poursuivre avec Firemonkey.
Concernant les programmes, je vous en propose 5 cette fois-ci illustrant l'utilisation de base de FireDAC sous FireMonkey (sans trop programmer pour cette fois-ci). D'autres exemples sont disponibles avec l'installation de l'EDI et vous pouvez aussi regarder ce que j'avais mis en place sur le projet POC Notes de frais présenté lors du webinaire du 12 juillet 2018.
La rediffusion de cette présentation est disponible avec ses codes sources et des liens complémentaires sur https://serialstreameur.fr/webinaire-20181030.php
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014O10ée
Lepton est un système d’exploitation open source dont la structure apporte non seulement des bénéfices en terme de facilité de développement mais également
Après avoir conquis le marché des smartphones et tablettes, Android devient incontournable dans le domaine industriel. Son utilisation pour la conception de solutions embarquées industrielles soulève toutefois des problématiques techniques spécifiques : customisation de l'OS, développement de pilotes de périphériques, capacité à répondre à des contraintes temps réel.
S'appuyant sur son expertise des technologies Linux embarqué, Open Wide Ingénierie a accompagné avec succès la réalisation de nombreux systèmes sur mesure. Les experts du pôle Mobilité et Multimédia partage leur expérience à travers cette présentation en abordant les sujets techniques indispensables avant de migrer vers Android.
Fiche de TD 1 de préparation au Baccalauréat (littéraire et scientifique) du ...ATPENSC-Group
Fiche de Travaux Dirigés d'exercices (sur les systèmes informatiques et les réseaux informatiques) permettant une bonne préparation des apprenants au Baccalauréat (littéraire et scientifique) de l'enseignement secondaire général pour la session 2015.
NetBSD évolue constamment avec de nouvelles idées : The AnyKernel, gestionnaire de packages multiplate-formed pkgsrc, outil d'installation de paquet binaire pkgin, NetBSD Desktop project, NetBSD Logical Volume Manager (LVM) .NetBSD Veriexec subsystem, Common Address Redundancy Protocol (CARP) .
Cette conférence présentera NetBSD pour en détailler les points clés à travers sa dernière branche 6
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
4ème workshop @Oxalide, animé par Julien Follenfant, Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 24 mai 2016.
Une entrée en matière sur la technologie Docker et son écosystème à date : pourquoi un tel engouement, à quel point Docker s'inscrit parfaitement dans la démarche DevOps…
Un TP sur le montage d'un cluster ElasticSearch avec le Dockerfile.
Une démo de kubernetes.
Subject: Oxalide's workshop about an overview of Docker and its ecosystem.
Date: 24-mai-2016
Speakers: Julien Follenfant (@Oxalide), Théo Chamley (@MrTrustor, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-workshop-number-4-docker-des-tours-dans-le-petit-bassin
Lien SlideShare : http://www.slideshare.net/LudovicPiot/workshop-4-docker-des-tours-dans-le-petit-bassin
YouTube Video capture: https://youtu.be/xJuRS6QYAAk
Main topics:
* Introduction 15 min (Ludovic Piot)
** D’où vient Docker ?
** Les principales caractéristiques de Docker
*** POrtable (package)
*** DIsposable (cattle vs. pet)
*** LIve (git style)
*** SOcial (registry / Github style)
* Hands-on #1 - Mon premier container (Julien Follenfant 35 min)
** Un tour d’horizon de DockerHub
** Installation de Docker Toolbox
** Création d’un Dockerfile (outil stand-alone)
** Introspecter un container
** Configurer un container
** Monter un cluster Elasticsearch 3 nœuds
* Comment ça marche ? (Théo Chamley 20 min)
** Namespaces & cgroups
** Layered FS (les poupées russes)
** Cache Image
** Networking
** Volumes
* Nouvelles collaborations (Ludovic Piot 10 min)
** CaaS (infra + cluster de containers vs. containers + appli)
* Ecosystème 20 min
** Les produits Docker, inc. (Ludovic Piot)
** Les alternatives (CoreOS, OpenContainer Initiative, Warden/Garden) (Ludovic Piot)
** La registry (Docker Registry, Nexus) (Ludovic Piot)
** L’autodiscovery (Consul, etcd, ZooKeeper) (Ludovic Piot)
** Les composants réseaux (haproxy, traefik, zipnish) (Julien Follenfant)
** Les orchestrateurs (kubernetes (Théo Chamley), Mesos/Marathon, Swarm, Fleet) (Ludovic Piot)
** Les solutions PaaS/CaaS intégrées (OpenShift, Rancher (Théo Chamley), Deis, CloudFoundry) => screenshots (Ludovic Piot)
** Les services de cloud publics (AWS ECS et ECR, GKE) (Ludovic Piot)
* Demo - utilisation de Kubernetes 15 min (Théo Chamley)
* Questions / Réponses
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide
4ème workshop @Oxalide, animé par Julien Follenfant, Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 24 mai 2016.
Une entrée en matière sur la technologie Docker et son écosystème à date : pourquoi un tel engouement, à quel point Docker s'inscrit parfaitement dans la démarche DevOps…
Un TP sur le montage d'un cluster ElasticSearch avec le Dockerfile.
Une démo de kubernetes.
Main topics:
* Introduction 15 min (Ludovic Piot)
** D’où vient Docker ?
** Les principales caractéristiques de Docker
*** POrtable (package)
*** DIsposable (cattle vs. pet)
*** LIve (git style)
*** SOcial (registry / Github style)
* Hands-on #1 - Mon premier container (Julien Follenfant 35 min)
** Un tour d’horizon de DockerHub
** Installation de Docker Toolbox
** Création d’un Dockerfile (outil stand-alone)
** Introspecter un container
** Configurer un container
** Monter un cluster Elasticsearch 3 nœuds
* Comment ça marche ? (Théo Chamley 20 min)
** Namespaces & cgroups
** Layered FS (les poupées russes)
** Cache Image
** Networking
** Volumes
* Nouvelles collaborations (Ludovic Piot 10 min)
** CaaS (infra + cluster de containers vs. containers + appli)
* Ecosystème 20 min
** Les produits Docker, inc. (Ludovic Piot)
** Les alternatives (CoreOS, OpenContainer Initiative, Warden/Garden) (Ludovic Piot)
** La registry (Docker Registry, Nexus) (Ludovic Piot)
** L’autodiscovery (Consul, etcd, ZooKeeper) (Ludovic Piot)
** Les composants réseaux (haproxy, traefik, zipnish) (Julien Follenfant)
** Les orchestrateurs (kubernetes (Théo Chamley), Mesos/Marathon, Swarm, Fleet) (Ludovic Piot)
** Les solutions PaaS/CaaS intégrées (OpenShift, Rancher (Théo Chamley), Deis, CloudFoundry) => screenshots (Ludovic Piot)
** Les services de cloud publics (AWS ECS et ECR, GKE) (Ludovic Piot)
* Demo - utilisation de Kubernetes 15 min (Théo Chamley)
* Questions / Réponses
Gestion des dépendances dans un projet PHP - Forum PHP 2012Jean-Marc Fontaine
Que ce soit un framework, des modules ou des libraires spécialisées, la plupart des application web modernes utilisent du code tiers. Ce code a son propre cycle de développement. Il faut donc pouvoir intégrer régulièrement les nouvelles versions sans pour autant perdre la maîtrise de son propre cycle. La tâche n'est pas aisée si elle n'a pas été été prévue dès la conception de l'application. Nous verrons différentes approches pour gérer les dépendances dont les gestionnaires de paquet du système d'exploitation, les liens externes dans les dépôts de code, les fichiers PHAR, l'installateur PEAR et le tout récent Composer.
Suite au webinaire d'introduction à FireDAC avec la VCL il était logique de poursuivre avec Firemonkey.
Concernant les programmes, je vous en propose 5 cette fois-ci illustrant l'utilisation de base de FireDAC sous FireMonkey (sans trop programmer pour cette fois-ci). D'autres exemples sont disponibles avec l'installation de l'EDI et vous pouvez aussi regarder ce que j'avais mis en place sur le projet POC Notes de frais présenté lors du webinaire du 12 juillet 2018.
La rediffusion de cette présentation est disponible avec ses codes sources et des liens complémentaires sur https://serialstreameur.fr/webinaire-20181030.php
Présentation Système d’exploitation Open Source Lepton - MEITO Mai 2014O10ée
Lepton est un système d’exploitation open source dont la structure apporte non seulement des bénéfices en terme de facilité de développement mais également
Après avoir conquis le marché des smartphones et tablettes, Android devient incontournable dans le domaine industriel. Son utilisation pour la conception de solutions embarquées industrielles soulève toutefois des problématiques techniques spécifiques : customisation de l'OS, développement de pilotes de périphériques, capacité à répondre à des contraintes temps réel.
S'appuyant sur son expertise des technologies Linux embarqué, Open Wide Ingénierie a accompagné avec succès la réalisation de nombreux systèmes sur mesure. Les experts du pôle Mobilité et Multimédia partage leur expérience à travers cette présentation en abordant les sujets techniques indispensables avant de migrer vers Android.
Fiche de TD 1 de préparation au Baccalauréat (littéraire et scientifique) du ...ATPENSC-Group
Fiche de Travaux Dirigés d'exercices (sur les systèmes informatiques et les réseaux informatiques) permettant une bonne préparation des apprenants au Baccalauréat (littéraire et scientifique) de l'enseignement secondaire général pour la session 2015.
NetBSD évolue constamment avec de nouvelles idées : The AnyKernel, gestionnaire de packages multiplate-formed pkgsrc, outil d'installation de paquet binaire pkgin, NetBSD Desktop project, NetBSD Logical Volume Manager (LVM) .NetBSD Veriexec subsystem, Common Address Redundancy Protocol (CARP) .
Cette conférence présentera NetBSD pour en détailler les points clés à travers sa dernière branche 6
Oxalide Workshop #4 - Docker, des tours dans le petit bassinLudovic Piot
Oxalide Workshop #4 - Docker, des tours dans le petit bassin
4ème workshop @Oxalide, animé par Julien Follenfant, Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 24 mai 2016.
Une entrée en matière sur la technologie Docker et son écosystème à date : pourquoi un tel engouement, à quel point Docker s'inscrit parfaitement dans la démarche DevOps…
Un TP sur le montage d'un cluster ElasticSearch avec le Dockerfile.
Une démo de kubernetes.
Subject: Oxalide's workshop about an overview of Docker and its ecosystem.
Date: 24-mai-2016
Speakers: Julien Follenfant (@Oxalide), Théo Chamley (@MrTrustor, @Oxalide) and Ludovic Piot (@lpiot, @Oxalide)
Language: french
Lien SpeakerDeck : https://speakerdeck.com/lpiot/oxalide-workshop-number-4-docker-des-tours-dans-le-petit-bassin
Lien SlideShare : http://www.slideshare.net/LudovicPiot/workshop-4-docker-des-tours-dans-le-petit-bassin
YouTube Video capture: https://youtu.be/xJuRS6QYAAk
Main topics:
* Introduction 15 min (Ludovic Piot)
** D’où vient Docker ?
** Les principales caractéristiques de Docker
*** POrtable (package)
*** DIsposable (cattle vs. pet)
*** LIve (git style)
*** SOcial (registry / Github style)
* Hands-on #1 - Mon premier container (Julien Follenfant 35 min)
** Un tour d’horizon de DockerHub
** Installation de Docker Toolbox
** Création d’un Dockerfile (outil stand-alone)
** Introspecter un container
** Configurer un container
** Monter un cluster Elasticsearch 3 nœuds
* Comment ça marche ? (Théo Chamley 20 min)
** Namespaces & cgroups
** Layered FS (les poupées russes)
** Cache Image
** Networking
** Volumes
* Nouvelles collaborations (Ludovic Piot 10 min)
** CaaS (infra + cluster de containers vs. containers + appli)
* Ecosystème 20 min
** Les produits Docker, inc. (Ludovic Piot)
** Les alternatives (CoreOS, OpenContainer Initiative, Warden/Garden) (Ludovic Piot)
** La registry (Docker Registry, Nexus) (Ludovic Piot)
** L’autodiscovery (Consul, etcd, ZooKeeper) (Ludovic Piot)
** Les composants réseaux (haproxy, traefik, zipnish) (Julien Follenfant)
** Les orchestrateurs (kubernetes (Théo Chamley), Mesos/Marathon, Swarm, Fleet) (Ludovic Piot)
** Les solutions PaaS/CaaS intégrées (OpenShift, Rancher (Théo Chamley), Deis, CloudFoundry) => screenshots (Ludovic Piot)
** Les services de cloud publics (AWS ECS et ECR, GKE) (Ludovic Piot)
* Demo - utilisation de Kubernetes 15 min (Théo Chamley)
* Questions / Réponses
Oxalide Workshop #4 - Docker, des tours dans le petit bassinOxalide
4ème workshop @Oxalide, animé par Julien Follenfant, Théo Chamley (@MrTrustor) et Ludovic Piot (@lpiot), le 24 mai 2016.
Une entrée en matière sur la technologie Docker et son écosystème à date : pourquoi un tel engouement, à quel point Docker s'inscrit parfaitement dans la démarche DevOps…
Un TP sur le montage d'un cluster ElasticSearch avec le Dockerfile.
Une démo de kubernetes.
Main topics:
* Introduction 15 min (Ludovic Piot)
** D’où vient Docker ?
** Les principales caractéristiques de Docker
*** POrtable (package)
*** DIsposable (cattle vs. pet)
*** LIve (git style)
*** SOcial (registry / Github style)
* Hands-on #1 - Mon premier container (Julien Follenfant 35 min)
** Un tour d’horizon de DockerHub
** Installation de Docker Toolbox
** Création d’un Dockerfile (outil stand-alone)
** Introspecter un container
** Configurer un container
** Monter un cluster Elasticsearch 3 nœuds
* Comment ça marche ? (Théo Chamley 20 min)
** Namespaces & cgroups
** Layered FS (les poupées russes)
** Cache Image
** Networking
** Volumes
* Nouvelles collaborations (Ludovic Piot 10 min)
** CaaS (infra + cluster de containers vs. containers + appli)
* Ecosystème 20 min
** Les produits Docker, inc. (Ludovic Piot)
** Les alternatives (CoreOS, OpenContainer Initiative, Warden/Garden) (Ludovic Piot)
** La registry (Docker Registry, Nexus) (Ludovic Piot)
** L’autodiscovery (Consul, etcd, ZooKeeper) (Ludovic Piot)
** Les composants réseaux (haproxy, traefik, zipnish) (Julien Follenfant)
** Les orchestrateurs (kubernetes (Théo Chamley), Mesos/Marathon, Swarm, Fleet) (Ludovic Piot)
** Les solutions PaaS/CaaS intégrées (OpenShift, Rancher (Théo Chamley), Deis, CloudFoundry) => screenshots (Ludovic Piot)
** Les services de cloud publics (AWS ECS et ECR, GKE) (Ludovic Piot)
* Demo - utilisation de Kubernetes 15 min (Théo Chamley)
* Questions / Réponses
Gestion des dépendances dans un projet PHP - Forum PHP 2012Jean-Marc Fontaine
Que ce soit un framework, des modules ou des libraires spécialisées, la plupart des application web modernes utilisent du code tiers. Ce code a son propre cycle de développement. Il faut donc pouvoir intégrer régulièrement les nouvelles versions sans pour autant perdre la maîtrise de son propre cycle. La tâche n'est pas aisée si elle n'a pas été été prévue dès la conception de l'application. Nous verrons différentes approches pour gérer les dépendances dont les gestionnaires de paquet du système d'exploitation, les liens externes dans les dépôts de code, les fichiers PHAR, l'installateur PEAR et le tout récent Composer.
2. Plan I
1 Introduction
2 Théorie
Android
Raspberry Pi 3
3 Pourquoi ?
4 Pratique
Défis à relever
Ecriture du BSP
Flashage des images
5 Résultats
6 Pour aller plus loin
7 Questions ?
2 / 42
8. 2 - Théorie - Android
Qu’est-ce que Android ?
Un système d’exploitation (Licence Apache v2) ;
Des applications ;
Un environnement de développement complet ;
Un environnement de debug ;
Un système de build.
8 / 42
9. 2 - Théorie - Android
Plusieurs variantes :
Android ;
Android TV ;
WearOS ;
Android Auto ;
Android Things.
9 / 42
10. 2 - Théorie - Android
9 versions majeures :
Apportent leur lot de nouveautés ;
Cassent régulièrement les API internes ;
Les changements internes sont souvent mal documentés.
10 / 42
11. 2 - Théorie - Android
Qu’est-ce que Android ?
Environ 600 dépôts GIT ;
Du code source écrit en Java / C / C++ ;
Un OS lourd (nécessite un GPU et une TrustZone) ;
S’appuie sur un Kernel Linux ;
Une spécification à suivre (Sécurité / HW / ...).
11 / 42
12. 2 - Théorie - Android
Qu’est-ce qu’un BSP pour Android ?
L’ensemble des briques logicielles permettant de faire fonctionner Android ;
Un bootloader compatible Android ;
Un kernel Linux Android ;
Des HALs (Briques faisant le lien entre le FWK Android et le Kernel Linux) ;
Des Makefiles permettant de construire les images.
12 / 42
13. 2 - Théorie - Raspberry Pi 3
2 Théorie
Android
Raspberry Pi 3
13 / 42
14. 2 - Théorie - Raspberry Pi 3
Qu’est-ce que Raspberry Pi 3 ?
Une carte d’évaluation ;
Très peu chère ;
Très répandue ;
Relativement puissante (Quad ARM Cortex-A53, 1Go RAM) ;
Beaucoup de connectivité ;
Avec un support Open Source.
14 / 42
15. 2 - Théorie - Raspberry Pi 3
Qu’est-ce que Raspberry Pi 3 ?
Un bootloader open source ;
Un support du Kernel Linux ;
Un flashage d’image facile.
15 / 42
17. 3 - Pourquoi ?
Pourquoi mettre Android sur une Raspberry Pi 3
Pour s’amuser ;
Tentative pour réaliser un démonstrateur ;
Pour comprendre comment fonctionne un portage Android ;
Et pourquoi pas ?
17 / 42
18. 3 - Pourquoi ?
Quelle version d’Android ?
Android 8.1 ;
Facilité avec Treble ;
Une variante déjà portée par Android (mais sources non publiées).
18 / 42
19. 3 - Pourquoi ?
Quelle variante d’Android ?
Android (handheld) ;
La variante la plus généraliste d’Android ;
Interface la plus connue ;
Permet de valider la faisabilité des autres.
19 / 42
20. 4 - Pratique
4 Pratique
Défis à relever
Ecriture du BSP
Flashage des images
20 / 42
21. 4 - Pratique - Défis à relever
4 Pratique
Défis à relever
Ecriture du BSP
Flashage des images
21 / 42
22. 4 - Pratique - Défis à relever
Quels sont les défis à relever ?
Créer les Makefiles produit ;
Ecrire ou trouver les HALs ;
Flasher les images ;
Booter les images.
22 / 42
23. 4 - Pratique - Ecriture du BSP
4 Pratique
Défis à relever
Ecriture du BSP
Flashage des images
23 / 42
24. 4 - Pratique - Ecriture du BSP
Création du produit :
Création du répertoire "device/pifoundation/rpi3" ;
Création des Makefile AndroidProducts.mk, aosp_rpi3.mk et BoardConfig.mk ;
Création du script "vendorsetup.sh".
24 / 42
25. 4 - Pratique - Ecriture du BSP
But :
Donner au buildsystem des informations capitales : architecture processeur, taille
max des partitions, ...
Dire à Android quels packages embarquer ;
Donner un nom à son produit ;
Positionnement de la configuration Runtime.
25 / 42
26. 4 - Pratique - Ecriture du BSP
Ecriture des HALs :
Seulement les HALs vitales dans un premier temps ;
Utilisation des implémentations par défaut si possible ;
Récupération des HALs d’Android Things pour le reste (merci Treble !).
26 / 42
28. 4 - Pratique - Ecriture du BSP
Kernel :
Google a patché le kernel vanilla de la RPI ;
Google a mis à disposition les sources ;
Utilisation de celui d’Android IOT ;
N’est pas buildé par Android.
28 / 42
29. 4 - Pratique - Ecriture du BSP
Bootloader :
Google a publié des patchs dans u-boot ;
Support du système de partition A/B d’Android ;
Support des images bootables Android ;
Utilisation de cet u-boot modifié ;
N’est pas buildé par Android.
29 / 42
30. 4 - Pratique - Ecriture du BSP
Système A/B :
Permet de faire de la redondance de partitions ;
Est activé pour toute la chaine de boot ;
Le choix est fait par le bootloader ;
Google l’a intégré à u-boot ;
Android utilise la HAL bootctrl.
30 / 42
31. 4 - Pratique - Ecriture du BSP
Partition boot.img et recovery.img.
Partition bootable d’Android ;
Contient le kernel et la commandline ;
Contient un ramfs ;
recovery.img a disparu en Android 9 ;
Pas montable de manière standard.
31 / 42
33. 4 - Pratique - Flashage des images
4 Pratique
Défis à relever
Ecriture du BSP
Flashage des images
33 / 42
34. 4 - Pratique - Flashage des images
Façon traditionnelle Android : fastboot
Protocole de communication ;
Ecrit les images dans des partitions ;
Quasiment aucune vérification ;
Supporte les images sparses ;
Au dessus d’USB / tcp / udp ;
La version UDP a été portée sur u-boot pour la rpi3 par Google.
34 / 42
35. 4 - Pratique - Flashage des images
Façon traditionnelle RPI : dd sur la carte SD
Simple ;
Android ne créé pas la table de partition ;
Android créé des images sparses ;
Adaptation nécessaire pour Android.
35 / 42
36. 4 - Pratique - Flashage des images
Utilisation de dd pour simplicité :
Création des partitions grâce à gdisk (17 partitions) ;
unsparse des images grâce à "simg2img" ;
dd des fichiers avec offset.
36 / 42
38. 5 - Résultats - Flashage des images
Résultats :
Android boot ;
Non utilisable pour un démonstrateur ;
D’énormes lags dus probablement à la partie graphique.
38 / 42
39. 6 - Pour aller plus loin
6 Pour aller plus loin
39 / 42
40. 6 - Pour aller plus loin - Flashage des images
Pour aller plus loin :
Intégrer les drivers graphiques RPI ;
Mettre la sécurité en place ;
Intégrer les autres éléments HW ;
Essayer les autres variantes d’Android.
40 / 42